Skip to content
Snippets Groups Projects
Commit 4265158e authored by Alexis Poyen's avatar Alexis Poyen
Browse files

Feat : Set IsAdmin field, break on several groupe OAuth

parent 44169b41
No related branches found
No related tags found
No related merge requests found
Pipeline #5283 passed
......@@ -101,6 +101,11 @@ func (d *DataHandler) AddUser(w http.ResponseWriter, req *http.Request) {
http.Error(w, "passwords cannot be blank", 400)
return
}
if newUser.Role == "ADMIN" {
newUser.IsAdmin = true
} else {
newUser.IsAdmin = false
}
if newUser.Password != "" {
hash, err := bcrypt.GenerateFromPassword([]byte(newUser.Password), bcrypt.DefaultCost)
if err != nil {
......@@ -154,6 +159,11 @@ func (d *DataHandler) UpdateUser(w http.ResponseWriter, req *http.Request) {
user.Name = newUser.Name
user.Surname = newUser.Surname
user.Role = newUser.Role
if user.Role == "ADMIN" {
user.IsAdmin = true
} else {
user.IsAdmin = false
}
if newUser.Password != "" {
hash, err := bcrypt.GenerateFromPassword([]byte(newUser.Password), bcrypt.DefaultCost)
if err != nil {
......
......@@ -163,8 +163,12 @@ func (d *DataHandler) addUserInMemory(userOauth2 UserOAuth2) (User, error) {
for _, userRole := range userOauth2.Groups {
if userRole != "" && (userRole == os.Getenv("ADMIN_GROUP")) {
user.Role = "ADMIN"
user.IsAdmin = true
break
} else if userRole != "" && (userRole == os.Getenv("CLIENT_GROUP")) {
user.Role = "CLIENT"
user.IsAdmin = false
break
} else {
return user, errors.New("user not in an app group")
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment