Private
Public Access
1
0

local changes

This commit is contained in:
Sander Roosendaal
2020-02-03 08:56:03 +01:00
parent 31a7b9fffc
commit 2c0ae3f135
2 changed files with 30 additions and 1 deletions

View File

@@ -217,6 +217,34 @@ def is_coach_user(usercoach,userrower):
return False
# checks if rower is coach of user (or is user himself)
@rules.predicate
def is_anonymous_or_coach(usercoach,userrower):
print(usercoach,userrower)
if usercoach == userrower:
return True
if userrower.is_anonymous and userrower.is_anonymous:
return True
if not is_coach(usercoach):
return False
r = userrower.rower
coaches = []
for group in r.coachinggroups.all():
newcoaches = group.get_coaches()
for coach in newcoaches:
coaches.append(coach)
for coach in coaches:
if usercoach.rower == coach:
return True
return False
# check if rower and user are members of the same team
@rules.predicate
def is_rower_team_member(user,rower):
@@ -274,6 +302,7 @@ def can_plan_user(user,rower):
rules.add_perm('rower.add_plan',can_plan_user) # replaces checkaccessplanuser
rules.add_perm('rower.is_coach',is_coach_user) # replaces checkaccessuser
rules.add_perm('rower.is_pro',ispromember)
rules.add_perm('anonymous.is_coach',is_anonymous_or_coach)
# WORKOUT permissions