Skip to content

Commit 8220604

Browse files
committed
refactor policy
1 parent 23f41ef commit 8220604

File tree

2 files changed

+3
-7
lines changed

2 files changed

+3
-7
lines changed

server/src/auth/policies/core/members.polar

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,11 +7,11 @@ allow_field(user: User, "read", member: Member, field) if
77
field in Member.PUBLIC_FIELDS or
88
# private fields are readable only by hr or self
99
(field in Member.PRIVATE_FIELDS and
10-
(user.memberInfo.department.name = "hr" or user.memberInfo.id = member.id)
10+
(has_role(user, "hr_member", member) or has_role(user, "self", member))
1111
); # fragile to use department name
1212

1313
allow_field(user: User, "update", member: Member, field) if
1414
# public fields are updatable if hr or self
15-
(field in Member.PUBLIC_FIELDS and (user.memberInfo.department.name = "hr" or user.memberInfo.id = member.id)) or
15+
(field in Member.PUBLIC_FIELDS and (has_role(user, "hr_member", member) or has_role(user, "self", member))) or
1616
# private fields like salaries are updatable only by hr
17-
(field in Member.PRIVATE_FIELDS and user.memberInfo.department.name = "hr");
17+
(field in Member.PRIVATE_FIELDS and has_role(user, "hr_member", member));
Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,8 @@
11

22
resource UserMenuItem {
33
permissions = ["read"];
4-
relations = {member: Member};
54
}
65

7-
has_relation(member: Member, "member", user: User) if
8-
user.member = member;
9-
106
has_permission(user: User, "read", menu: UserMenuItem) if
117
menu.isAdmin = false or
128
(menu.isAdmin and user.isAdmin);

0 commit comments

Comments
 (0)