diff --git a/internal/utils/priviliges.go b/internal/utils/priviliges.go new file mode 100644 index 0000000..a817aef --- /dev/null +++ b/internal/utils/priviliges.go @@ -0,0 +1,22 @@ +package utils + +import ( + "GoMembership/internal/constants" + "GoMembership/internal/models" +) + +func HasPrivilige(user *models.User, privilige int8) bool { + switch privilige { + case constants.Priviliges.View: + return user.RoleID >= constants.Roles.Viewer + case constants.Priviliges.Update: + return user.RoleID >= constants.Roles.Editor + case constants.Priviliges.Create: + return user.RoleID >= constants.Roles.Editor + case constants.Priviliges.Delete: + return user.RoleID >= constants.Roles.Editor + default: + return false + } + +}