diff --git a/go-backend/internal/controllers/membershipController.go b/go-backend/internal/controllers/membershipController.go index 36a4f98..a4cafe6 100644 --- a/go-backend/internal/controllers/membershipController.go +++ b/go-backend/internal/controllers/membershipController.go @@ -16,10 +16,8 @@ import ( ) type MembershipController struct { - Service services.MembershipService - UserController interface { - ExtractUserFromContext(*gin.Context) (*models.User, error) - } + Service services.MembershipServiceInterface + UserService services.UserServiceInterface } type MembershipData struct { @@ -30,14 +28,14 @@ type MembershipData struct { func (mc *MembershipController) RegisterSubscription(c *gin.Context) { var regData MembershipData - requestUser, err := mc.UserController.ExtractUserFromContext(c) + requestUser, err := mc.UserService.FromContext(c) if err != nil { utils.RespondWithError(c, err, "Error extracting user from context in subscription registrationHandler", http.StatusBadRequest, errors.Responses.Fields.User, errors.Responses.Keys.NoAuthToken) return } - if !utils.HasPrivilige(requestUser, constants.Priviliges.Create) { - utils.RespondWithError(c, errors.ErrNotAuthorized, "Not allowed to register subscription", http.StatusForbidden, errors.Responses.Fields.User, errors.Responses.Keys.Unauthorized) + if !requestUser.HasPrivilege(constants.Priviliges.Create) { + utils.RespondWithError(c, errors.ErrNotAuthorized, "Not allowed to register subscription", http.StatusUnauthorized, errors.Responses.Fields.User, errors.Responses.Keys.Unauthorized) return } @@ -66,14 +64,14 @@ func (mc *MembershipController) RegisterSubscription(c *gin.Context) { func (mc *MembershipController) UpdateHandler(c *gin.Context) { var regData MembershipData - requestUser, err := mc.UserController.ExtractUserFromContext(c) + requestUser, err := mc.UserService.FromContext(c) if err != nil { utils.RespondWithError(c, err, "Error extracting user from context in subscription Updatehandler", http.StatusBadRequest, errors.Responses.Fields.User, errors.Responses.Keys.NoAuthToken) return } - if !utils.HasPrivilige(requestUser, constants.Priviliges.Update) { - utils.RespondWithError(c, errors.ErrNotAuthorized, "Not allowed to update subscription", http.StatusForbidden, errors.Responses.Fields.User, errors.Responses.Keys.Unauthorized) + if !requestUser.HasPrivilege(constants.Priviliges.Update) { + utils.RespondWithError(c, errors.ErrNotAuthorized, "Not allowed to update subscription", http.StatusUnauthorized, errors.Responses.Fields.User, errors.Responses.Keys.Unauthorized) return } @@ -105,14 +103,14 @@ func (mc *MembershipController) DeleteSubscription(c *gin.Context) { } var data deleteData - requestUser, err := mc.UserController.ExtractUserFromContext(c) + requestUser, err := mc.UserService.FromContext(c) if err != nil { utils.RespondWithError(c, err, "Error extracting user from context in subscription deleteSubscription", http.StatusBadRequest, errors.Responses.Fields.User, errors.Responses.Keys.NoAuthToken) return } - if !utils.HasPrivilige(requestUser, constants.Priviliges.Delete) { - utils.RespondWithError(c, errors.ErrNotAuthorized, "Not allowed to update subscription", http.StatusForbidden, errors.Responses.Fields.User, errors.Responses.Keys.Unauthorized) + if !requestUser.HasPrivilege(constants.Priviliges.Delete) { + utils.RespondWithError(c, errors.ErrNotAuthorized, "Not allowed to update subscription", http.StatusUnauthorized, errors.Responses.Fields.User, errors.Responses.Keys.Unauthorized) return } diff --git a/go-backend/internal/controllers/user_Password.go b/go-backend/internal/controllers/user_Password.go index ddb9825..016471d 100644 --- a/go-backend/internal/controllers/user_Password.go +++ b/go-backend/internal/controllers/user_Password.go @@ -4,7 +4,6 @@ import ( "GoMembership/internal/constants" "GoMembership/internal/utils" "GoMembership/pkg/errors" - "fmt" "net/http" "strconv" @@ -15,16 +14,15 @@ import ( func (uc *UserController) CreatePasswordHandler(c *gin.Context) { - requestUser, err := uc.ExtractUserFromContext(c) + requestUser, err := uc.Service.FromContext(c) if err != nil { - utils.RespondWithError(c, err, "Error extracting user from context in UpdateHandler", http.StatusBadRequest, errors.Responses.Fields.User, errors.Responses.Keys.NoAuthToken) + utils.RespondWithError(c, err, "Couldn't get User from Request Context", http.StatusBadRequest, errors.Responses.Fields.General, errors.Responses.Keys.NoAuthToken) return } - if !utils.HasPrivilige(requestUser, constants.Priviliges.AccessControl) { - utils.RespondWithError(c, errors.ErrNotAuthorized, fmt.Sprintf("Not allowed to handle other users. RoleID(%v)