Esempio n. 1
0
 def wrapper(self, context,
             request: 'TracimRequest') -> typing.Callable:
     user = request.current_user
     workspace = request.current_workspace
     if workspace.get_user_role(user) >= minimal_required_role:
         return func(self, context, request)
     raise InsufficientUserRoleInWorkspace()
Esempio n. 2
0
 def check(self, tracim_context: TracimContext) -> bool:
     user_role = tracim_context.current_workspace.get_user_role(
         tracim_context.current_user)
     if self.content_type_slug:
         content_type = self.content_type_list.get_one_by_slug(
             self.content_type_slug)
     else:
         content_type = tracim_context.candidate_content_type
     if user_role >= content_type.minimal_role_content_creation.level:
         return True
     raise InsufficientUserRoleInWorkspace()
Esempio n. 3
0
 def wrapper(self, context,
             request: 'TracimRequest') -> typing.Callable:
     user = request.current_user
     workspace = request.current_workspace
     if allow_superadmin and user.profile.id == Group.TIM_ADMIN:
         return func(self, context, request)
     if user.profile.id >= minimal_profile:
         if workspace.get_user_role(user) >= minimal_required_role:
             return func(self, context, request)
         raise InsufficientUserRoleInWorkspace()
     else:
         raise InsufficientUserProfile()
Esempio n. 4
0
 def wrapper(self, context,
             request: 'TracimRequest') -> typing.Callable:
     user = request.current_user
     workspace = request.current_workspace
     comment = request.current_comment
     # INFO - G.M - 2018-06-178 - find minimal role required
     if comment.owner.user_id == user.user_id:
         minimal_required_role = minimal_required_role_for_owner
     else:
         minimal_required_role = minimal_required_role_for_anyone
     # INFO - G.M - 2018-06-178 - normal role test
     if workspace.get_user_role(user) >= minimal_required_role:
         return func(self, context, request)
     raise InsufficientUserRoleInWorkspace()
Esempio n. 5
0
 def check(self, tracim_context: TracimContext) -> bool:
     if tracim_context.candidate_workspace\
             .get_user_role(tracim_context.current_user) >= self.role_level:
         return True
     raise InsufficientUserRoleInWorkspace()