from rest_framework.permissions import BasePermission


class UserPermission(BasePermission):
    def has_permission(self, request, view):
        if view.action in [
            'update_fact', 'update_postamat_id', 'update_status', 'retrieve',
            'update', 'partial_update', 'destroy', 'create',
        ]:
            return request.user.groups.filter(name='Редактор').exists()
        else:
            return request.user.groups.filter(
                name__in=('Зритель', 'Редактор'),
            ).exists()
