Private
Public Access
1
0

small changes

This commit is contained in:
Sander Roosendaal
2020-01-11 17:56:38 +01:00
parent 48a361a43e
commit 892b6c0e60
3 changed files with 27 additions and 28 deletions

View File

@@ -1,7 +1,26 @@
import rules
import datetime
# PERMISSIONS
# USER permissions
@rules.predicate
def user_is_not_basic(user):
if user.rower.rowerplan != 'basic':
return True
if user.rower.protrialexpires >= datetime.date.today() and user.rower.plantrialexpires >= datetime.date.today():
return True
return False
@rules.predicate
def is_coach(user):
return user.rower.rowerplan in ['coach','freecoach']
# TEAM permissions
@rules.predicate
def is_team_manager(user,team):
return team.manager == user
@@ -11,10 +30,6 @@ def is_team_member(user,team):
members = team.rower.all()
return user in [member.user for member in members]
@rules.predicate
def is_coach(user):
return user.rower.rowerplan in ['coach','freecoach']
@rules.predicate
def can_view_team(user,team):
# user based
@@ -26,8 +41,9 @@ def can_view_team(user,team):
# team is private
return is_team_member(user,team) | is_team_manager(user,team)
# For Team functionality
rules.add_perm('teams.view_team',can_view_team)
rules.add_perm('teams.add_team',is_coach)
rules.add_perm('teams.add_team',user_is_not_basic)
rules.add_perm('teams.change_team',is_team_manager)
rules.add_perm('teams.delete_team',is_team_manager)