Merge branch 'feature/lts' into merge_test

Conflicts:
	mayan/apps/documents/api_views.py
	mayan/apps/documents/models.py
	mayan/apps/folders/__init__.py
	mayan/apps/folders/urls.py
	mayan/apps/folders/views.py
	mayan/apps/tags/urls.py
	mayan/apps/tags/views.py
	mayan/settings/base.py
This commit is contained in:
Roberto Rosario
2014-10-03 11:41:41 -04:00
21 changed files with 288 additions and 12 deletions

View File

@@ -14,14 +14,19 @@ from permissions.models import Permission
from rest_api.filters import MayanObjectPermissionsFilter
from rest_api.permissions import MayanPermission
from .models import Document, DocumentPage, DocumentVersion
from .models import Document, DocumentPage, DocumentType, DocumentVersion
from .permissions import (PERMISSION_DOCUMENT_CREATE,
PERMISSION_DOCUMENT_DELETE, PERMISSION_DOCUMENT_EDIT,
PERMISSION_DOCUMENT_NEW_VERSION,
PERMISSION_DOCUMENT_PROPERTIES_EDIT,
PERMISSION_DOCUMENT_VIEW)
PERMISSION_DOCUMENT_VIEW,
PERMISSION_DOCUMENT_TYPE_CREATE,
PERMISSION_DOCUMENT_TYPE_DELETE,
PERMISSION_DOCUMENT_TYPE_EDIT,
PERMISSION_DOCUMENT_TYPE_VIEW)
from .serializers import (DocumentImageSerializer, DocumentPageSerializer,
DocumentSerializer, DocumentVersionSerializer)
DocumentSerializer, DocumentTypeSerializer,
DocumentVersionSerializer)
from .settings import DISPLAY_SIZE, ZOOM_MAX_LEVEL, ZOOM_MIN_LEVEL
@@ -181,3 +186,34 @@ class APIDocumentPageView(generics.RetrieveUpdateAPIView):
'PATCH': [PERMISSION_DOCUMENT_EDIT]
}
mayan_permission_attribute_check = 'document'
class APIDocumentTypeListView(generics.ListCreateAPIView):
"""
Returns a list of all the document types.
"""
serializer_class = DocumentTypeSerializer
queryset = DocumentType.objects.all()
permission_classes = (MayanPermission,)
filter_backends = (MayanObjectPermissionsFilter,)
mayan_object_permissions = {'GET': [PERMISSION_DOCUMENT_TYPE_VIEW]}
mayan_view_permissions = {'POST': [PERMISSION_DOCUMENT_TYPE_CREATE]}
class APIDocumentTypeView(generics.RetrieveUpdateDestroyAPIView):
"""
Returns the selected document type details.
"""
serializer_class = DocumentTypeSerializer
queryset = DocumentType.objects.all()
permission_classes = (MayanPermission,)
mayan_object_permissions = {
'GET': [PERMISSION_DOCUMENT_TYPE_VIEW],
'PUT': [PERMISSION_DOCUMENT_TYPE_EDIT],
'PATCH': [PERMISSION_DOCUMENT_TYPE_EDIT],
'DELETE': [PERMISSION_DOCUMENT_TYPE_DELETE]
}