Exemplo n.º 1
0
 def check_permissions(self, cleaned_data):
     """Raise an exception if user can't perform a status change."""
     user = self.request.user
     status = int(self.request.POST.get('status'))
     group = user.get_group()
     if (group == co.CUSTOMER_GROUP and
             not co.CheckPermissions(user, self.instance, co.CAN_SUBMIT)):
         raise ValidationError('Operation can not be performed.')
     elif group == co.ADMIN_GROUP:
         if status == co.PROCESSING and not co.CheckPermissions(
                 user, self.instance, co.CAN_APPROVE):
             raise ValidationError('Operation can not be performed.')
         elif status == co.REJECTED and not co.CheckPermissions(
                 user, self.instance, co.CAN_REJECT):
             raise ValidationError('Operation can not be performed.')
         elif status == co.SUSPICIOUS and not co.CheckPermissions(
                 user, self.instance, co.CAN_SUSPECT):
             raise ValidationError('Operation can not be performed.')
     elif group == co.WRITER_GROUP:
         if status == co.SENT and not co.CheckPermissions(
                 user, self.instance, co.CAN_SEND):
             raise ValidationError('Operation can not be performed.')
         if status == co.SENT and not self.instance.is_locked(user,
                                                              by_user=True):
             raise ValidationError(
                 'Please lock a task before make it SENT.')
Exemplo n.º 2
0
 def _check_permissions(self):
     user = self.request.user
     try:
         obj = self.get_object()
     except:
         obj = None
     if not co.CheckPermissions(user, obj, co.CAN_EDIT):
         raise PermissionDenied
Exemplo n.º 3
0
 def _check_permissions(self):
     user = self.request.user
     try:
         obj = self.get_object()
     except:
         obj = None
     # We can remove task only in draft version.
     if not co.CheckPermissions(user, obj, co.CAN_DELETE):
         raise PermissionDenied
Exemplo n.º 4
0
 def _check_permissions(self):
     user = self.request.user
     group = user.get_group()
     try:
         obj = self.get_object()
     except:
         obj = None
     if not co.CheckPermissions(user, obj, co.CAN_DELETE, 'upload'):
         raise PermissionDenied
Exemplo n.º 5
0
 def check_permissions(self, cleaned_data):
     """Raise an exception if user can't perform a status change."""
     user = self.request.user
     can_lock = co.CheckPermissions(user, self.instance, co.CAN_LOCK)
     is_locked = self.instance.is_locked(user)
     if not can_lock:
         raise ValidationError('Operation can not be performed.')
     if is_locked:
         raise ValidationError('Task is already locked.')
     self.instance.lock(self.request.user)
Exemplo n.º 6
0
 def check_permissions(self, cleaned_data):
     """Raise an exception if user can't perform a status change."""
     user = self.request.user
     can_unlock = co.CheckPermissions(user, self.instance, co.CAN_UNLOCK)
     is_locked = self.instance.is_locked(user, by_user=True)
     if not can_unlock:
         raise ValidationError('Operation can not be performed.')
     if is_locked:
         self.instance.unlock(self.request.user)
     else:
         raise ValidationError('User can\'t unclock a task.')
Exemplo n.º 7
0
 def _check_permissions(self):
     user = self.request.user
     group = user.get_group()
     try:
         obj = self.get_object()
     except:
         obj = None
     if group in co.CUSTOMER_GROUP:
         # We can remove task only in draft version.
         if not co.CheckPermissions(user, obj, co.CAN_DELETE):
             raise PermissionDenied
Exemplo n.º 8
0
 def check_permissions(self, cleaned_data):
     """Raises an exception if there are no permissions to save a form."""
     if not co.CheckPermissions(self.request.user,
                                self.cleaned_data['ftask'], co.CAN_UPLOAD,
                                'upload'):
         raise ValidationError('You can not upload file.')
Exemplo n.º 9
0
 def render_to_response(self, context, **response_kwargs):
     context.update(self.settings)
     user = self.request.user
     # Pass constants to templates.
     context['co'] = co
     try:
         obj = context.get('object') or self.get_object()
     except:
         obj = None
     context['perm'] = {
         'can_edit':
         co.CheckPermissions(user, obj, co.CAN_EDIT),
         'can_submit':
         co.CheckPermissions(user, obj, co.CAN_SUBMIT),
         # approve, suspect, reject
         'can_approve':
         co.CheckPermissions(user, obj, co.CAN_APPROVE),
         'can_reject':
         co.CheckPermissions(user, obj, co.CAN_REJECT),
         'can_suspect':
         co.CheckPermissions(user, obj, co.CAN_SUSPECT),
         # can writers mark task as sent.
         'can_send':
         co.CheckPermissions(user, obj, co.CAN_SEND),
         # Can admins put reports on task.
         'can_report':
         co.CheckPermissions(user, obj, co.CAN_REPORT),
         'can_rm_upload':
         co.CheckPermissions(user, obj, co.CAN_DELETE, 'upload'),
         'can_ch_visibility':
         co.CheckPermissions(user, obj, co.CAN_CH_VISIBILITY, 'upload'),
         'can_rm_msg':
         co.CheckPermissions(user, obj, co.CAN_DELETE, 'message'),
         'can_edit_msg':
         co.CheckPermissions(user, obj, co.CAN_EDIT, 'message'),
         'can_lock':
         co.CheckPermissions(user, obj, co.CAN_LOCK)
         and not obj.is_locked(user),
         'can_unlock':
         co.CheckPermissions(user, obj, co.CAN_UNLOCK)
         and obj.is_locked(user, by_user=True),
         'can_delete':
         co.CheckPermissions(user, obj, co.CAN_DELETE),
         'can_complete':
         co.CheckPermissions(user, obj, co.CAN_COMPLETE),
         'can_upload':
         co.CheckPermissions(user, obj, co.CAN_UPLOAD, 'upload'),
         'can_message':
         co.CheckPermissions(user, obj, co.CAN_MESSAGE, 'message')
     }
     context['stats'] = get_stats(self.request)
     context['action_label'] = self.action_label
     return super(BaseView,
                  self).render_to_response(context, **response_kwargs)
Exemplo n.º 10
0
 def check_permissions(self, cleaned_data):
     """Raise an exception if user can't perform a status change."""
     user = self.request.user
     if not co.CheckPermissions(user, self.instance, co.CAN_EDIT):
         raise ValidationError('Operation can not be performed.')
Exemplo n.º 11
0
 def check_permissions(self, cleaned_data):
     """Raises an exception if there are no permissions to save a form."""
     if not co.CheckPermissions(self.request.user, self.instance,
                                co.CAN_EDIT, 'message'):
         raise ValidationError('You can not update a message.')
Exemplo n.º 12
0
 def check_permissions(self, cleaned_data):
     """Raises an exception if there are no permissions to save a form."""
     if not co.CheckPermissions(self.request.user,
                                self.cleaned_data['mtask'], co.CAN_MESSAGE,
                                'message'):
         raise ValidationError('You can not send a message.')
Exemplo n.º 13
0
 def check_permissions(self, cleaned_data):
   """Raises an exception if there are no permissions to save a form."""
   if not co.CheckPermissions(self.request.user, self.instance,
                              co.CAN_CH_VISIBILITY, 'upload'):
     raise PermissionDenied
Exemplo n.º 14
0
 def check_permissions(self, cleaned_data):
     """Raises an exception if there are no permissions to save a form."""
     if not co.CheckPermissions(self.request.user,
                                self.cleaned_data['rtask'], co.CAN_REPORT):
         raise ValidationError(
             'It is not allowed to put reports on a task.')