feat(controller): admin user for enterprise support

This commit is contained in:
leandrofars 2024-07-02 18:49:15 -03:00
parent feb39953ed
commit f8cb6e600f
3 changed files with 8 additions and 4 deletions

View File

@ -135,17 +135,21 @@ func registerEnterpriseSupport(email, password string, d db.Database) {
} }
for { for {
if err := user.HashPassword(password); err != nil {
return
}
err := d.RegisterUser(user) err := d.RegisterUser(user)
if err != nil { if err != nil {
if err == db.ErrorUserExists { if err == db.ErrorUserExists {
log.Println("Enterprise support user already registered.") log.Println("Enterprise support user already registered.")
break return
} }
log.Println("Error to register enterprise support user:", err) log.Println("Error to register enterprise support user:", err)
time.Sleep(time.Second * 5) time.Sleep(time.Second * 5)
continue continue
} }
log.Println("Enterprise support user registered successfully.") log.Println("Enterprise support user registered successfully.")
break return
} }
} }

View File

@ -135,7 +135,7 @@ func (a *Api) deviceAuth(w http.ResponseWriter, r *http.Request) {
utils.MarshallEncoder(err, w) utils.MarshallEncoder(err, w)
return return
} }
if user.Level != db.AdminUser && user.Level != db.OktopusUser { if user.Level != db.AdminUser {
w.WriteHeader(http.StatusForbidden) w.WriteHeader(http.StatusForbidden)
return return
} }

View File

@ -242,7 +242,7 @@ func adminUserExists(users []map[string]interface{}, supportEmail string) bool {
} }
for _, x := range users { for _, x := range users {
if x["level"].(db.UserLevels) == db.AdminUser && x["email"].(string) != supportEmail { if db.UserLevels(x["level"].(int32)) == db.AdminUser && x["email"].(string) != supportEmail {
log.Println("Admin exists") log.Println("Admin exists")
return true return true
} }