From 658cc9aecd295c4fd52d606a2a96bcc5084bf54e Mon Sep 17 00:00:00 2001 From: Alex <$(pass /github/email)> Date: Fri, 28 Feb 2025 11:56:26 +0100 Subject: [PATCH] changed privilige handling --- go-backend/internal/constants/constants.go | 32 +++++++++++----------- go-backend/internal/utils/priviliges.go | 14 +--------- 2 files changed, 17 insertions(+), 29 deletions(-) diff --git a/go-backend/internal/constants/constants.go b/go-backend/internal/constants/constants.go index 3d52fa6..6a707a0 100644 --- a/go-backend/internal/constants/constants.go +++ b/go-backend/internal/constants/constants.go @@ -16,18 +16,6 @@ const ( MailContactSubject = "Jemand hat das Kontaktformular gefunden" ) -var Roles = struct { - Member int8 - Viewer int8 - Editor int8 - Admin int8 -}{ - Member: 0, - Viewer: 1, - Editor: 4, - Admin: 8, -} - var Licences = struct { AM string A1 string @@ -78,10 +66,22 @@ var Priviliges = struct { Update int8 Delete int8 }{ - View: 0, - Update: 10, - Create: 20, - Delete: 30, + View: 1, + Update: 4, + Create: 4, + Delete: 4, +} + +var Roles = struct { + Member int8 + Viewer int8 + Editor int8 + Admin int8 +}{ + Member: 0, + Viewer: 1, + Editor: 4, + Admin: 8, } var MemberUpdateFields = map[string]bool{ diff --git a/go-backend/internal/utils/priviliges.go b/go-backend/internal/utils/priviliges.go index 0bf7d1c..96cb260 100644 --- a/go-backend/internal/utils/priviliges.go +++ b/go-backend/internal/utils/priviliges.go @@ -1,25 +1,13 @@ package utils import ( - "GoMembership/internal/constants" "GoMembership/internal/models" "errors" "reflect" ) 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 - } + return user.RoleID >= privilige } // FilterAllowedStructFields filters allowed fields recursively in a struct and modifies structToModify in place.