Exemple #1
0
 def get_queryset(self, queryset=None):
     if is_admin(self.request):
         return self.model._default_manager.all()._clone()
     else:
         return (
             self.model._default_manager
             .filter(study__user_id=self.request.user_id)
             ._clone()
         )
Exemple #2
0
def can_edit_study(context, study):
    request = context['request']
    if is_admin(request):
        return True
    if _has_perm(request.user_roles,
                 request.user_groups,
                 roles=EDIT_ROLES,
                 groups=EDIT_GROUPS) and request.user_id == study.user_id:
        return True
    return False
Exemple #3
0
    def get_object(self):
        if getattr(self, 'study', None):
            return self.study
        if is_admin(self.request):
            study = get_object_or_404(models.Study, pk=self.kwargs['pk'])
        else:
            study = get_object_or_404(models.Study, pk=self.kwargs['pk'],
                                      user_id=self.request.user_id)

        study = get_object_or_404(models.Study, pk=self.kwargs['pk'])
        self.study = study
        return study
Exemple #4
0
def do_is_admin(context):
    return True if is_admin(context['request']) else False