register_permissions('documents', [ { 'name': PERMISSION_DOCUMENT_CREATE, 'label': _(u'Create document') }, { 'name': PERMISSION_DOCUMENT_PROPERTIES_EDIT, 'label': _(u'Edit document properties') }, { 'name': PERMISSION_DOCUMENT_METADATA_EDIT, 'label': _(u'Edit document metadata') }, { 'name': PERMISSION_DOCUMENT_VIEW, 'label': _(u'View document') }, { 'name': PERMISSION_DOCUMENT_DELETE, 'label': _(u'Delete document') }, { 'name': PERMISSION_DOCUMENT_DOWNLOAD, 'label': _(u'Download document') }, { 'name': PERMISSION_DOCUMENT_TRANSFORM, 'label': _(u'Transform document') }, { 'name': PERMISSION_DOCUMENT_TOOLS, 'label': _(u'Execute document modifying tools') }, ])
from conf.settings import ENABLE_SINGLE_DOCUMENT_UPLOAD PERMISSION_DOCUMENT_CREATE = 'document_create' PERMISSION_DOCUMENT_PROPERTIES_EDIT = 'document_properties_edit' PERMISSION_DOCUMENT_METADATA_EDIT = 'document_metadata_edit' PERMISSION_DOCUMENT_VIEW = 'document_view' PERMISSION_DOCUMENT_DELETE = 'document_delete' PERMISSION_DOCUMENT_DOWNLOAD = 'document_download' PERMISSION_DOCUMENT_TRANSFORM = 'document_transform' PERMISSION_DOCUMENT_TOOLS = 'document_tools' register_permissions('documents', [ {'name':PERMISSION_DOCUMENT_CREATE, 'label':_(u'Create document')}, {'name':PERMISSION_DOCUMENT_PROPERTIES_EDIT, 'label':_(u'Edit document properties')}, {'name':PERMISSION_DOCUMENT_METADATA_EDIT, 'label':_(u'Edit document metadata')}, {'name':PERMISSION_DOCUMENT_VIEW, 'label':_(u'View document')}, {'name':PERMISSION_DOCUMENT_DELETE, 'label':_(u'Delete document')}, {'name':PERMISSION_DOCUMENT_DOWNLOAD, 'label':_(u'Download document')}, {'name':PERMISSION_DOCUMENT_TRANSFORM, 'label':_(u'Transform document')}, {'name':PERMISSION_DOCUMENT_TOOLS, 'label':_(u'Execute document modifying tools')}, ]) document_list = {'text':_(u'documents list'), 'view':'document_list', 'famfam':'page', 'permissions':{'namespace':'documents', 'permissions':[PERMISSION_DOCUMENT_VIEW]}} document_create = {'text':_('upload a new document'), 'view':'document_create', 'famfam':'page_add', 'permissions':{'namespace':'documents', 'permissions':[PERMISSION_DOCUMENT_CREATE]}} document_create_multiple = {'text':_('upload multiple new documents'), 'view':'document_create_multiple', 'famfam':'page_add', 'permissions':{'namespace':'documents', 'permissions':[PERMISSION_DOCUMENT_CREATE]}} document_create_sibling = {'text':_('upload new document using same metadata'), 'view':'document_create_sibling', 'args':'object.id', 'famfam':'page_copy', 'permissions':{'namespace':'documents', 'permissions':[PERMISSION_DOCUMENT_CREATE]}} document_view = {'text':_('details (advanced)'), 'view':'document_view', 'args':'object.id', 'famfam':'page', 'permissions':{'namespace':'documents', 'permissions':[PERMISSION_DOCUMENT_VIEW]}} document_view_simple = {'text':_('details (simple)'), 'view':'document_view_simple', 'args':'object.id', 'famfam':'page', 'permissions':{'namespace':'documents', 'permissions':[PERMISSION_DOCUMENT_VIEW]}} document_delete = {'text':_('delete'), 'view':'document_delete', 'args':'object.id', 'famfam':'page_delete', 'permissions':{'namespace':'documents', 'permissions':[PERMISSION_DOCUMENT_DELETE]}} document_edit = {'text':_('edit'), 'view':'document_edit', 'args':'object.id', 'famfam':'page_edit', 'permissions':{'namespace':'documents', 'permissions':[PERMISSION_DOCUMENT_PROPERTIES_EDIT]}} document_edit_metadata = {'text':_('edit metadata'), 'view':'document_edit_metadata', 'args':'object.id', 'famfam':'page_edit', 'permissions':{'namespace':'documents', 'permissions':[PERMISSION_DOCUMENT_METADATA_EDIT]}} document_preview = {'text':_('preview'), 'class':'fancybox', 'view':'document_preview', 'args':'object.id', 'famfam':'magnifier', 'permissions':{'namespace':'documents', 'permissions':[PERMISSION_DOCUMENT_VIEW]}}
from documents.models import Document from models import DocumentQueue, QueueDocument from literals import QUEUEDOCUMENT_STATE_PROCESSING, \ QUEUEDOCUMENT_STATE_PENDING, DOCUMENTQUEUE_STATE_STOPPED, \ DOCUMENTQUEUE_STATE_ACTIVE #Permissions PERMISSION_OCR_DOCUMENT = 'ocr_document' PERMISSION_OCR_DOCUMENT_DELETE = 'ocr_document_delete' PERMISSION_OCR_QUEUE_ENABLE_DISABLE = 'ocr_queue_enable_disable' register_permissions('ocr', [ {'name':PERMISSION_OCR_DOCUMENT, 'label':_(u'Submit document for OCR')}, {'name':PERMISSION_OCR_DOCUMENT_DELETE, 'label':_(u'Delete document for OCR queue')}, {'name':PERMISSION_OCR_QUEUE_ENABLE_DISABLE, 'label':_(u'Can enable/disable an OCR queue')}, ]) #Links submit_document = {'text':_('submit to OCR queue'), 'view':'submit_document', 'args':'object.id', 'famfam':'hourglass_add', 'permissions':{'namespace':'ocr', 'permissions':[PERMISSION_OCR_DOCUMENT]}} re_queue_document = {'text':_('re-queue'), 'view':'re_queue_document', 'args':'object.id', 'famfam':'hourglass_add', 'permissions':{'namespace':'ocr', 'permissions':[PERMISSION_OCR_DOCUMENT]}} queue_document_delete = {'text':_(u'delete'), 'view':'queue_document_delete', 'args':'object.id', 'famfam':'hourglass_delete', 'permissions':{'namespace':'ocr', 'permissions':[PERMISSION_OCR_DOCUMENT_DELETE]}} document_queue_disable = {'text':_(u'stop queue'), 'view':'document_queue_disable', 'args':'object.id', 'famfam':'control_pause_blue', 'permissions':{'namespace':'ocr', 'permissions':[PERMISSION_OCR_QUEUE_ENABLE_DISABLE]}} document_queue_enable = {'text':_(u'active queue'), 'view':'document_queue_enable', 'args':'object.id', 'famfam':'control_play_blue', 'permissions':{'namespace':'ocr', 'permissions':[PERMISSION_OCR_QUEUE_ENABLE_DISABLE]}} register_links(Document, [submit_document], menu_name='sidebar') register_links(DocumentQueue, [document_queue_disable, document_queue_enable]) register_links(QueueDocument, [re_queue_document, queue_document_delete])
from django.utils.translation import ugettext_lazy as _ from permissions.api import register_permissions FILESYSTEM_SERVING_RECREATE_LINKS = 'recreate_links' register_permissions('filesystem_serving', [ {'name':FILESYSTEM_SERVING_RECREATE_LINKS, 'label':_(u'Recreate filesystem links.')}, ]) filesystem_serving_recreate_all_links = {'text':_('recreate index links'), 'view':'recreate_all_links', 'famfam':'page_link', 'permissions':{'namespace':'filesystem_serving', 'permissions':[FILESYSTEM_SERVING_RECREATE_LINKS]}}
from documents.models import Document from models import DocumentQueue, QueueDocument from literals import QUEUEDOCUMENT_STATE_PROCESSING, \ QUEUEDOCUMENT_STATE_PENDING, DOCUMENTQUEUE_STATE_STOPPED, \ DOCUMENTQUEUE_STATE_ACTIVE #Permissions PERMISSION_OCR_DOCUMENT = 'ocr_document' PERMISSION_OCR_DOCUMENT_DELETE = 'ocr_document_delete' PERMISSION_OCR_QUEUE_ENABLE_DISABLE = 'ocr_queue_enable_disable' register_permissions('ocr', [ {'name':PERMISSION_OCR_DOCUMENT, 'label':_(u'Submit document for OCR')}, {'name':PERMISSION_OCR_DOCUMENT_DELETE, 'label':_(u'Delete document for OCR queue')}, {'name':PERMISSION_OCR_QUEUE_ENABLE_DISABLE, 'label':_(u'Can enable/disable an OCR queue')}, ]) #Links submit_document = {'text':_('submit to OCR queue'), 'view':'submit_document', 'args':'object.id', 'famfam':'hourglass_add', 'permissions':{'namespace':'ocr', 'permissions':[PERMISSION_OCR_DOCUMENT]}} re_queue_document = {'text':_('re-queue'), 'view':'re_queue_document', 'args':'object.id', 'famfam':'hourglass_add', 'permissions':{'namespace':'ocr', 'permissions':[PERMISSION_OCR_DOCUMENT]}} queue_document_delete = {'text':_(u'delete'), 'view':'queue_document_delete', 'args':'object.id', 'famfam':'hourglass_delete', 'permissions':{'namespace':'ocr', 'permissions':[PERMISSION_OCR_DOCUMENT_DELETE]}} document_queue_disable = {'text':_(u'stop queue'), 'view':'document_queue_disable', 'args':'object.id', 'famfam':'control_stop_blue', 'permissions':{'namespace':'ocr', 'permissions':[PERMISSION_OCR_QUEUE_ENABLE_DISABLE]}} document_queue_enable = {'text':_(u'activate queue'), 'view':'document_queue_enable', 'args':'object.id', 'famfam':'control_play_blue', 'permissions':{'namespace':'ocr', 'permissions':[PERMISSION_OCR_QUEUE_ENABLE_DISABLE]}} register_links(Document, [submit_document], menu_name='sidebar') register_links(DocumentQueue, [document_queue_disable, document_queue_enable]) register_links(QueueDocument, [re_queue_document, queue_document_delete])