update extractToken to read user_division_positions claim/jwt
This commit is contained in:
@@ -188,15 +188,25 @@ func ExtractToken(r *http.Request, tokenType TokenType) (data *pa.AuthInfo, err
|
|||||||
user_name := fmt.Sprintf("%v", claims["user_name"])
|
user_name := fmt.Sprintf("%v", claims["user_name"])
|
||||||
|
|
||||||
var userDivisionPositions []pa.DivisionPosition
|
var userDivisionPositions []pa.DivisionPosition
|
||||||
if raw, ok := claims["user_division_position"]; ok && raw != nil {
|
raw := claims["user_division_positions"]
|
||||||
if list, ok := raw.([]interface{}); ok {
|
if raw == nil {
|
||||||
for _, item := range list {
|
fmt.Println("No user_division_positions found in claims")
|
||||||
|
} else {
|
||||||
|
list, ok := raw.([]interface{})
|
||||||
|
if !ok {
|
||||||
|
fmt.Printf("user_division_positions is not []interface{}, but %T\n", raw)
|
||||||
|
} else {
|
||||||
|
fmt.Printf("Found %d division positions\n", len(list))
|
||||||
|
for i, item := range list {
|
||||||
if m, ok := item.(map[string]interface{}); ok {
|
if m, ok := item.(map[string]interface{}); ok {
|
||||||
|
fmt.Printf("Item %d: %v\n", i, m)
|
||||||
dp := pa.DivisionPosition{
|
dp := pa.DivisionPosition{
|
||||||
Division_Code: fmt.Sprintf("%v", m["Division_Code"]),
|
Division_Code: fmt.Sprintf("%v", m["division_code"]),
|
||||||
DivisionPosition_Code: fmt.Sprintf("%v", m["DivisionPosition_Code"]),
|
DivisionPosition_Code: fmt.Sprintf("%v", m["divisionPosition_code"]),
|
||||||
}
|
}
|
||||||
userDivisionPositions = append(userDivisionPositions, dp)
|
userDivisionPositions = append(userDivisionPositions, dp)
|
||||||
|
} else {
|
||||||
|
fmt.Printf("Item %d not map[string]interface{} but %T\n", i, item)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user