LIL-387. Assign perms to SchoolScheduleViewSet for teacher

remotes/origin/hasaccess
Ivlev Denis 8 years ago
parent 3bdbb0889d
commit 3fca54497f
  1. 9
      api/v1/permissions.py
  2. 1
      api/v1/serializers/school.py
  3. 8
      api/v1/views.py

@ -12,6 +12,15 @@ class IsAdmin(BasePermission):
)
class IsTeacherOrAdmin(BasePermission):
def has_permission(self, request, view):
return request.user.is_authenticated and (
request.user.role in [
User.TEACHER_ROLE, User.ADMIN_ROLE
] or request.user.is_staff or request.user.is_superuser
)
class IsAdminOrIsSelf(BasePermission):
def has_object_permission(self, request, view, user):
return request.user.is_authenticated and (

@ -10,6 +10,7 @@ from .content import (
)
from .mixins import DispatchContentMixin
class GalleryImageCreateSerializer(serializers.ModelSerializer):
class Meta:

@ -35,7 +35,11 @@ from .serializers.user import (
UserSerializer, UserPhotoSerializer,
)
from .permissions import IsAdmin, IsAdminOrIsSelf, IsAuthorOrAdmin, IsAuthorObjectOrAdmin
from .permissions import (
IsAdmin, IsAdminOrIsSelf,
IsAuthorOrAdmin, IsAuthorObjectOrAdmin,
IsTeacherOrAdmin,
)
from apps.course.models import (
Category, Course,
@ -340,7 +344,7 @@ class UserViewSet(ExtendedModelViewSet):
class SchoolScheduleViewSet(ExtendedModelViewSet):
queryset = SchoolSchedule.objects.all()
serializer_class = SchoolScheduleSerializer
permission_classes = (IsAdmin,)
permission_classes = (IsTeacherOrAdmin,)
class ConfigViewSet(generics.RetrieveUpdateAPIView):

Loading…
Cancel
Save