from django.utils.translation import ugettext_lazy as _ from django.core.exceptions import ImproperlyConfigured from navigation.api import register_sidebar_template from project_tools.api import register_tool from permissions.api import register_permission, set_namespace_title from converter.utils import load_backend from converter.conf.settings import GRAPHICS_BACKEND CONVERTER_FORMAT_LIST_VIEW = {'namespace': 'converter', 'name': 'format_list_view', 'label': _(u'View the list of supported file formats.')} set_namespace_title('converter', _(u'Converter')) register_permission(CONVERTER_FORMAT_LIST_VIEW) formats_list = {'text': _('file formats'), 'view': 'formats_list', 'famfam': 'pictures', 'icon': 'pictures.png', 'permissions': [CONVERTER_FORMAT_LIST_VIEW]} register_sidebar_template(['formats_list'], 'converter_file_formats_help.html') backend = load_backend().ConverterClass() register_tool(formats_list)
'namespace': 'reminders', 'name': 'reminder_edit_all', 'label': _(u'Edit all reminders') } PERMISSION_REMINDER_DELETE = { 'namespace': 'reminders', 'name': 'reminder_delete', 'label': _(u'Delete reminder') } PERMISSION_REMINDER_DELETE_ALL = { 'namespace': 'reminders', 'name': 'reminder_delete_all', 'label': _(u'Delete all reminders') } set_namespace_title('reminders', _(u'Reminders')) register_permission(PERMISSION_REMINDER_VIEW) register_permission(PERMISSION_REMINDER_VIEW_ALL) register_permission(PERMISSION_REMINDER_CREATE) register_permission(PERMISSION_REMINDER_EDIT) register_permission(PERMISSION_REMINDER_EDIT_ALL) register_permission(PERMISSION_REMINDER_DELETE) register_permission(PERMISSION_REMINDER_DELETE_ALL) reminder_list = { 'text': _(u'reminder list'), 'view': 'reminder_list', 'famfam': 'hourglass', 'permissions': [PERMISSION_REMINDER_VIEW] } reminder_list_all = {
PERMISSION_METADATA_DOCUMENT_EDIT = {'namespace': 'metadata', 'name': u'metadata_document_edit', 'label': _(u'Edit a document\'s metadata')} PERMISSION_METADATA_DOCUMENT_ADD = {'namespace': 'metadata', 'name': u'metadata_document_add', 'label': _(u'Add metadata to a document')} PERMISSION_METADATA_DOCUMENT_REMOVE = {'namespace': 'metadata', 'name': u'metadata_document_remove', 'label': _(u'Remove metadata from a document')} PERMISSION_METADATA_DOCUMENT_VIEW = {'namespace': 'metadata', 'name': u'metadata_document_view', 'label': _(u'View metadata from a document')} PERMISSION_METADATA_TYPE_EDIT = {'namespace': 'metadata_setup', 'name': u'metadata_type_edit', 'label': _(u'Edit metadata types')} PERMISSION_METADATA_TYPE_CREATE = {'namespace': 'metadata_setup', 'name': u'metadata_type_create', 'label': _(u'Create new metadata types')} PERMISSION_METADATA_TYPE_DELETE = {'namespace': 'metadata_setup', 'name': u'metadata_type_delete', 'label': _(u'Delete metadata types')} PERMISSION_METADATA_TYPE_VIEW = {'namespace': 'metadata_setup', 'name': u'metadata_type_view', 'label': _(u'View metadata types')} PERMISSION_METADATA_SET_EDIT = {'namespace': 'metadata_setup', 'name': u'metadata_set_edit', 'label': _(u'Edit metadata sets')} PERMISSION_METADATA_SET_CREATE = {'namespace': 'metadata_setup', 'name': u'metadata_set_create', 'label': _(u'Create new metadata sets')} PERMISSION_METADATA_SET_DELETE = {'namespace': 'metadata_setup', 'name': u'metadata_set_delete', 'label': _(u'Delete metadata sets')} PERMISSION_METADATA_SET_VIEW = {'namespace': 'metadata_setup', 'name': u'metadata_set_view', 'label': _(u'View metadata sets')} set_namespace_title('metadata', _(u'Metadata')) register_permission(PERMISSION_METADATA_DOCUMENT_EDIT) register_permission(PERMISSION_METADATA_DOCUMENT_ADD) register_permission(PERMISSION_METADATA_DOCUMENT_REMOVE) register_permission(PERMISSION_METADATA_DOCUMENT_VIEW) set_namespace_title('metadata_setup', _(u'Metadata setup')) register_permission(PERMISSION_METADATA_TYPE_EDIT) register_permission(PERMISSION_METADATA_TYPE_CREATE) register_permission(PERMISSION_METADATA_TYPE_DELETE) register_permission(PERMISSION_METADATA_TYPE_VIEW) register_permission(PERMISSION_METADATA_SET_EDIT) register_permission(PERMISSION_METADATA_SET_CREATE) register_permission(PERMISSION_METADATA_SET_DELETE) register_permission(PERMISSION_METADATA_SET_VIEW)
from django.contrib.auth.models import User, Group from navigation.api import register_links, register_multi_item_links from permissions.api import register_permission, set_namespace_title PERMISSION_USER_CREATE = {'namespace': 'user_management', 'name': 'user_create', 'label': _(u'Create new users')} PERMISSION_USER_EDIT = {'namespace': 'user_management', 'name': 'user_edit', 'label': _(u'Edit existing users')} PERMISSION_USER_VIEW = {'namespace': 'user_management', 'name': 'user_view', 'label': _(u'View existing users')} PERMISSION_USER_DELETE = {'namespace': 'user_management', 'name': 'user_delete', 'label': _(u'Delete existing users')} PERMISSION_GROUP_CREATE = {'namespace': 'user_management', 'name': 'group_create', 'label': _(u'Create new groups')} PERMISSION_GROUP_EDIT = {'namespace': 'user_management', 'name': 'group_edit', 'label': _(u'Edit existing groups')} PERMISSION_GROUP_VIEW = {'namespace': 'user_management', 'name': 'group_view', 'label': _(u'View existing groups')} PERMISSION_GROUP_DELETE = {'namespace': 'user_management', 'name': 'group_delete', 'label': _(u'Delete existing groups')} set_namespace_title('user_management', _(u'User management')) register_permission(PERMISSION_USER_CREATE) register_permission(PERMISSION_USER_EDIT) register_permission(PERMISSION_USER_VIEW) register_permission(PERMISSION_USER_DELETE) register_permission(PERMISSION_GROUP_CREATE) register_permission(PERMISSION_GROUP_EDIT) register_permission(PERMISSION_GROUP_VIEW) register_permission(PERMISSION_GROUP_DELETE) user_list = {'text': _(u'user list'), 'view': 'user_list', 'famfam': 'user', 'permissions': [PERMISSION_USER_VIEW]} user_edit = {'text': _(u'edit'), 'view': 'user_edit', 'args': 'object.id', 'famfam': 'user_edit', 'permissions': [PERMISSION_USER_EDIT]} user_add = {'text': _(u'create new user'), 'view': 'user_add', 'famfam': 'user_add', 'permissions': [PERMISSION_USER_CREATE]} user_delete = {u'text': _('delete'), 'view': 'user_delete', 'args': 'object.id', 'famfam': 'user_delete', 'permissions': [PERMISSION_USER_DELETE]} user_multiple_delete = {u'text': _('delete'), 'view': 'user_multiple_delete', 'famfam': 'user_delete', 'permissions': [PERMISSION_USER_DELETE]} user_set_password = {u'text': _('reset password'), 'view': 'user_set_password', 'args': 'object.id', 'famfam': 'lock_edit', 'permissions': [PERMISSION_USER_EDIT]}
from scheduler.api import register_interval_job from ocr.conf.settings import AUTOMATIC_OCR from ocr.conf.settings import QUEUE_PROCESSING_INTERVAL from ocr.models import DocumentQueue, QueueTransformation from ocr.tasks import task_process_document_queues #Permissions PERMISSION_OCR_DOCUMENT = {'namespace': 'ocr', 'name': 'ocr_document', 'label': _(u'Submit document for OCR')} PERMISSION_OCR_DOCUMENT_DELETE = {'namespace': 'ocr', 'name': 'ocr_document_delete', 'label': _(u'Delete document for OCR queue')} PERMISSION_OCR_QUEUE_ENABLE_DISABLE = {'namespace': 'ocr', 'name': 'ocr_queue_enable_disable', 'label': _(u'Can enable/disable an OCR queue')} PERMISSION_OCR_CLEAN_ALL_PAGES = {'namespace': 'ocr', 'name': 'ocr_clean_all_pages', 'label': _(u'Can execute an OCR clean up on all document pages')} PERMISSION_OCR_QUEUE_EDIT = {'namespace': 'ocr_setup', 'name': 'ocr_queue_edit', 'label': _(u'Can edit an OCR queue properties')} set_namespace_title('ocr', _(u'OCR')) register_permission(PERMISSION_OCR_DOCUMENT) register_permission(PERMISSION_OCR_DOCUMENT_DELETE) register_permission(PERMISSION_OCR_QUEUE_ENABLE_DISABLE) register_permission(PERMISSION_OCR_CLEAN_ALL_PAGES) set_namespace_title('ocr_setup', _(u'OCR Setup')) register_permission(PERMISSION_OCR_QUEUE_EDIT) #Links submit_document = {'text': _('submit to OCR queue'), 'view': 'submit_document', 'args': 'object.id', 'famfam': 'hourglass_add', 'permissions': [PERMISSION_OCR_DOCUMENT]} re_queue_document = {'text': _('re-queue'), 'view': 're_queue_document', 'args': 'object.id', 'famfam': 'hourglass_add', 'permissions': [PERMISSION_OCR_DOCUMENT]} re_queue_multiple_document = {'text': _('re-queue'), 'view': 're_queue_multiple_document', 'famfam': 'hourglass_add', 'permissions': [PERMISSION_OCR_DOCUMENT]} queue_document_delete = {'text': _(u'delete'), 'view': 'queue_document_delete', 'args': 'object.id', 'famfam': 'hourglass_delete', 'permissions': [PERMISSION_OCR_DOCUMENT_DELETE]} queue_document_multiple_delete = {'text': _(u'delete'), 'view': 'queue_document_multiple_delete', 'famfam': 'hourglass_delete', 'permissions': [PERMISSION_OCR_DOCUMENT_DELETE]}
from documents.models import Document from document_indexing.models import IndexInstance PERMISSION_DOCUMENT_INDEXING_VIEW = { 'namespace': 'document_indexing', 'name': 'document_index_view', 'label': _(u'View document indexes') } PERMISSION_DOCUMENT_INDEXING_REBUILD_INDEXES = { 'namespace': 'document_indexing', 'name': 'document_rebuild_indexes', 'label': _(u'Rebuild document indexes') } set_namespace_title('document_indexing', _(u'Indexing')) register_permission(PERMISSION_DOCUMENT_INDEXING_VIEW) register_permission(PERMISSION_DOCUMENT_INDEXING_REBUILD_INDEXES) index_list = { 'text': _(u'index list'), 'view': 'index_instance_list', 'famfam': 'folder_page', 'permissions': [PERMISSION_DOCUMENT_INDEXING_VIEW] } index_parent = { 'text': _(u'go up one level'), 'view': 'index_instance_list', 'args': 'object.parent.pk', 'famfam': 'arrow_up', 'permissions': [PERMISSION_DOCUMENT_INDEXING_VIEW],
def is_min_zoom(context): return context["zoom"] <= ZOOM_MIN_LEVEL def is_max_zoom(context): return context["zoom"] >= ZOOM_MAX_LEVEL def is_current_version(context): return context["object"].document.latest_version.timestamp == context["object"].timestamp # Permission setup set_namespace_title("documents", _(u"Documents")) register_permission(PERMISSION_DOCUMENT_CREATE) register_permission(PERMISSION_DOCUMENT_PROPERTIES_EDIT) register_permission(PERMISSION_DOCUMENT_EDIT) register_permission(PERMISSION_DOCUMENT_VIEW) register_permission(PERMISSION_DOCUMENT_DELETE) register_permission(PERMISSION_DOCUMENT_DOWNLOAD) register_permission(PERMISSION_DOCUMENT_TRANSFORM) register_permission(PERMISSION_DOCUMENT_TOOLS) register_permission(PERMISSION_DOCUMENT_VERSION_REVERT) # Document type permissions set_namespace_title("documents_setup", _(u"Documents setup")) register_permission(PERMISSION_DOCUMENT_TYPE_EDIT) register_permission(PERMISSION_DOCUMENT_TYPE_DELETE) register_permission(PERMISSION_DOCUMENT_TYPE_CREATE)
from navigation.api import register_sidebar_template from documents.models import Document from taggit.models import Tag from tags.widgets import tag_color_block PERMISSION_TAG_CREATE = {'namespace': 'tags', 'name': 'tag_create', 'label': _(u'Create new tags')} PERMISSION_TAG_ATTACH = {'namespace': 'tags', 'name': 'tag_attach', 'label': _(u'Attach exising tags')} PERMISSION_TAG_REMOVE = {'namespace': 'tags', 'name': 'tag_remove', 'label': _(u'Remove tags from documents')} PERMISSION_TAG_DELETE = {'namespace': 'tags', 'name': 'tag_delete', 'label': _(u'Delete global tags')} PERMISSION_TAG_EDIT = {'namespace': 'tags', 'name': 'tag_edit', 'label': _(u'Edit global tags')} PERMISSION_TAG_VIEW = {'namespace': 'tags', 'name': 'tag_view', 'label': _(u'View a document\'s tags')} set_namespace_title('tags', _(u'Tags')) register_permission(PERMISSION_TAG_CREATE) register_permission(PERMISSION_TAG_ATTACH) register_permission(PERMISSION_TAG_REMOVE) register_permission(PERMISSION_TAG_DELETE) register_permission(PERMISSION_TAG_EDIT) register_permission(PERMISSION_TAG_VIEW) tag_list = {'text': _(u'tag list'), 'view': 'tag_list', 'famfam': 'tag_blue'} tag_add_attach = {'text': _(u'attach tag'), 'view': 'tag_add_attach', 'args': 'object.pk', 'famfam': 'tag_blue_add', 'permission': [PERMISSION_TAG_CREATE, PERMISSION_TAG_ATTACH]} tag_document_remove = {'text': _(u'remove'), 'view': 'tag_remove', 'args': ['object.id', 'document.id'], 'famfam': 'tag_blue_delete', 'permissions': [PERMISSION_TAG_REMOVE]} tag_document_remove_multiple = {'text': _(u'remove'), 'view': 'tag_multiple_remove', 'args': 'document.id', 'famfam': 'tag_blue_delete', 'permissions': [PERMISSION_TAG_REMOVE]} tag_document_list = {'text': _(u'tags'), 'view': 'document_tags', 'args': 'object.pk', 'famfam': 'tag_blue', 'permissions': [PERMISSION_TAG_REMOVE]} tag_delete = {'text': _(u'delete'), 'view': 'tag_delete', 'args': 'object.id', 'famfam': 'tag_blue_delete', 'permissions': [PERMISSION_TAG_DELETE]} tag_edit = {'text': _(u'edit'), 'view': 'tag_edit', 'args': 'object.id', 'famfam': 'tag_blue_edit', 'permissions': [PERMISSION_TAG_EDIT]} tag_tagged_item_list = {'text': _(u'tagged documents'), 'view': 'tag_tagged_item_list', 'args': 'object.id', 'famfam': 'page'}
from navigation.api import register_links, \ register_model_list_columns from permissions.api import register_permission, set_namespace_title from django.contrib.comments.models import Comment from django.conf import settings if 'django.contrib.comments' not in settings.INSTALLED_APPS: raise Exception('This app depends on the django.contrib.comments app.') PERMISSION_COMMENT_CREATE = {'namespace': 'comments', 'name': 'comment_create', 'label': _(u'Create new comments')} PERMISSION_COMMENT_DELETE = {'namespace': 'comments', 'name': 'comment_delete', 'label': _(u'Delete comments')} PERMISSION_COMMENT_EDIT = {'namespace': 'comments', 'name': 'comment_edit', 'label': _(u'Edit comments')} PERMISSION_COMMENT_VIEW = {'namespace': 'comments', 'name': 'comment_view', 'label': _(u'View comments')} set_namespace_title('comments', _(u'Comments')) register_permission(PERMISSION_COMMENT_CREATE) register_permission(PERMISSION_COMMENT_DELETE) register_permission(PERMISSION_COMMENT_EDIT) register_permission(PERMISSION_COMMENT_VIEW) comment_delete = {'text': _('delete'), 'view': 'comment_delete', 'args': 'object.id', 'famfam': 'comment_delete', 'permissions': [PERMISSION_COMMENT_DELETE]} comment_multiple_delete = {'text': _('delete'), 'view': 'comment_multiple_delete', 'args': 'object.id', 'famfam': 'comments_delete', 'permissions': [PERMISSION_COMMENT_DELETE]} comment_add = {'text': _('add comment'), 'view': 'comment_add', 'args': 'object.id', 'famfam': 'comment_add', 'permissions': [PERMISSION_COMMENT_CREATE]} comments_for_object = {'text': _('comments'), 'view': 'comments_for_object', 'args': 'object.id', 'famfam': 'comments', 'permissions': [PERMISSION_COMMENT_VIEW]} register_model_list_columns(Comment, [ { 'name': _(u'date'), 'attribute': 'submit_date' },
from django.utils.translation import ugettext_lazy as _ from navigation.api import register_top_menu, register_links from permissions import role_list, permission_views from user_management import user_list, group_list, user_management_views from permissions.api import register_permission, set_namespace_title from main.conf.settings import SIDE_BAR_SEARCH PERMISSION_MAIN_TOOLS = {'namespace': 'main', 'name': 'main_tools', 'label': _(u'Can access tools menu')} PERMISSION_MAIN_SETUP = {'namespace': 'main', 'name': 'main_setup', 'label': _(u'Can access setup menu')} set_namespace_title('main', _(u'Main')) register_permission(PERMISSION_MAIN_TOOLS) register_permission(PERMISSION_MAIN_SETUP) def is_superuser(context): return context['request'].user.is_staff or context['request'].user.is_superuser check_settings = {'text': _(u'settings'), 'view': 'setting_list', 'famfam': 'cog'} statistics = {'text': _(u'statistics'), 'view': 'statistics', 'famfam': 'table'} diagnostics = {'text': _(u'diagnostics'), 'view': 'diagnostics', 'famfam': 'pill'} tools_menu = {'text': _(u'tools'), 'view': 'tools_menu', 'famfam': 'wrench'} admin_site = {'text': _(u'admin site'), 'url': '/admin', 'famfam': 'keyboard', 'condition': is_superuser} sentry = {'text': _(u'sentry'), 'url': '/sentry', 'famfam': 'bug', 'condition': is_superuser} register_top_menu('home', link={'text': _(u'home'), 'view': 'home', 'famfam': 'house'}, position=0) if not SIDE_BAR_SEARCH: register_top_menu('search', link={'text': _(u'search'), 'view': 'search', 'famfam': 'zoom'}, children_path_regex=[r'^search/'])
'namespace': 'linking', 'name': 'smart_link_create', 'label': _(u'Create new smart links') } PERMISSION_SMART_LINK_DELETE = { 'namespace': 'linking', 'name': 'smart_link_delete', 'label': _(u'Delete smart links') } PERMISSION_SMART_LINK_EDIT = { 'namespace': 'linking', 'name': 'smart_link_edit', 'label': _(u'Edit smart links') } set_namespace_title('linking', _(u'Smart links')) register_permission(PERMISSION_SMART_LINK_VIEW) register_permission(PERMISSION_SMART_LINK_CREATE) register_permission(PERMISSION_SMART_LINK_DELETE) register_permission(PERMISSION_SMART_LINK_EDIT) smart_link_instance_view_link = { 'text': _(u'smart links actions'), 'view': 'smart_link_instance_view', 'famfam': 'page_link', 'permissions': [PERMISSION_DOCUMENT_VIEW] } smart_link_instances_for_document = { 'text': _(u'smart links'), 'view': 'smart_link_instances_for_document', 'args': 'object.pk',
'namespace': 'sources_setup', 'name': 'sources_setup_edit', 'label': _(u'Edit document sources') } PERMISSION_SOURCES_SETUP_DELETE = { 'namespace': 'sources_setup', 'name': 'sources_setup_delete', 'label': _(u'Delete document sources') } PERMISSION_SOURCES_SETUP_CREATE = { 'namespace': 'sources_setup', 'name': 'sources_setup_create', 'label': _(u'Create new document sources') } set_namespace_title('sources_setup', _(u'Sources setup')) register_permission(PERMISSION_SOURCES_SETUP_VIEW) register_permission(PERMISSION_SOURCES_SETUP_EDIT) register_permission(PERMISSION_SOURCES_SETUP_DELETE) register_permission(PERMISSION_SOURCES_SETUP_CREATE) staging_file_preview = { 'text': _(u'preview'), 'class': 'fancybox-noscaling', 'view': 'staging_file_preview', 'args': ['source.source_type', 'source.pk', 'object.id'], 'famfam': 'zoom' } staging_file_delete = { 'text': _(u'delete'), 'view': 'staging_file_delete',
from django.utils.translation import ugettext_lazy as _ from navigation.api import register_top_menu, register_sidebar_template, \ register_links from permissions.api import register_permission, set_namespace_title from main.api import register_maintenance from documents.literals import PERMISSION_DOCUMENT_VIEW from documents.models import Document from document_indexing.models import IndexInstance PERMISSION_DOCUMENT_INDEXING_VIEW = {'namespace': 'document_indexing', 'name': 'document_index_view', 'label': _(u'View document indexes')} PERMISSION_DOCUMENT_INDEXING_REBUILD_INDEXES = {'namespace': 'document_indexing', 'name': 'document_rebuild_indexes', 'label': _(u'Rebuild document indexes')} set_namespace_title('document_indexing', _(u'Indexing')) register_permission(PERMISSION_DOCUMENT_INDEXING_VIEW) register_permission(PERMISSION_DOCUMENT_INDEXING_REBUILD_INDEXES) index_list = {'text': _(u'index list'), 'view': 'index_instance_list', 'famfam': 'folder_page', 'permissions': [PERMISSION_DOCUMENT_INDEXING_VIEW]} index_parent = {'text': _(u'go up one level'), 'view': 'index_instance_list', 'args': 'object.parent.pk', 'famfam': 'arrow_up', 'permissions': [PERMISSION_DOCUMENT_INDEXING_VIEW], 'dont_mark_active': True} document_index_list = {'text': _(u'indexes'), 'view': 'document_index_list', 'args': 'object.pk', 'famfam': 'folder_page', 'permissions': [PERMISSION_DOCUMENT_INDEXING_VIEW, PERMISSION_DOCUMENT_VIEW]} register_top_menu('indexes', link={'text': _('indexes'), 'famfam': 'folder_page', 'view': 'index_instance_list'}) rebuild_index_instances = {'text': _('rebuild indexes'), 'view': 'rebuild_index_instances', 'famfam': 'folder_page', 'permissions': [PERMISSION_DOCUMENT_INDEXING_REBUILD_INDEXES], 'description': _(u'Deletes and creates from scratch all the document indexes.')} register_maintenance(rebuild_index_instances, namespace='document_indexing', title=_(u'Indexes')) register_sidebar_template(['index_instance_list'], 'indexing_help.html') register_links(IndexInstance, [index_parent])
from common.utils import encapsulate from project_setup.api import register_setup from documents.models import Document from documents.literals import PERMISSION_DOCUMENT_CREATE from sources.staging import StagingFile from sources.models import WebForm, StagingFolder, SourceTransformation, \ WatchFolder from sources.widgets import staging_file_thumbnail PERMISSION_SOURCES_SETUP_VIEW = {'namespace': 'sources_setup', 'name': 'sources_setup_view', 'label': _(u'View existing document sources')} PERMISSION_SOURCES_SETUP_EDIT = {'namespace': 'sources_setup', 'name': 'sources_setup_edit', 'label': _(u'Edit document sources')} PERMISSION_SOURCES_SETUP_DELETE = {'namespace': 'sources_setup', 'name': 'sources_setup_delete', 'label': _(u'Delete document sources')} PERMISSION_SOURCES_SETUP_CREATE = {'namespace': 'sources_setup', 'name': 'sources_setup_create', 'label': _(u'Create new document sources')} set_namespace_title('sources_setup', _(u'Sources setup')) register_permission(PERMISSION_SOURCES_SETUP_VIEW) register_permission(PERMISSION_SOURCES_SETUP_EDIT) register_permission(PERMISSION_SOURCES_SETUP_DELETE) register_permission(PERMISSION_SOURCES_SETUP_CREATE) staging_file_preview = {'text': _(u'preview'), 'class': 'fancybox-noscaling', 'view': 'staging_file_preview', 'args': ['source.source_type', 'source.pk', 'object.id'], 'famfam': 'zoom'} staging_file_delete = {'text': _(u'delete'), 'view': 'staging_file_delete', 'args': ['source.source_type', 'source.pk', 'object.id'], 'famfam': 'delete', 'keep_query': True} setup_sources = {'text': _(u'sources'), 'view': 'setup_web_form_list', 'famfam': 'application_form', 'icon': 'application_form.png', 'children_classes': [WebForm]} setup_web_form_list = {'text': _(u'web forms'), 'view': 'setup_web_form_list', 'famfam': 'application_form', 'icon': 'application_form.png', 'children_classes': [WebForm]} setup_staging_folder_list = {'text': _(u'staging folders'), 'view': 'setup_staging_folder_list', 'famfam': 'folder_camera', 'children_classes': [StagingFolder]} setup_watch_folder_list = {'text': _(u'watch folders'), 'view': 'setup_watch_folder_list', 'famfam': 'folder_magnify', 'children_classes': [WatchFolder]} setup_source_edit = {'text': _(u'edit'), 'view': 'setup_source_edit', 'args': ['source.source_type', 'source.pk'], 'famfam': 'application_form_edit'} setup_source_delete = {'text': _(u'delete'), 'view': 'setup_source_delete', 'args': ['source.source_type', 'source.pk'], 'famfam': 'application_form_delete'}
'namespace': 'metadata_setup', 'name': u'metadata_set_create', 'label': _(u'Create new metadata sets') } PERMISSION_METADATA_SET_DELETE = { 'namespace': 'metadata_setup', 'name': u'metadata_set_delete', 'label': _(u'Delete metadata sets') } PERMISSION_METADATA_SET_VIEW = { 'namespace': 'metadata_setup', 'name': u'metadata_set_view', 'label': _(u'View metadata sets') } set_namespace_title('metadata', _(u'Metadata')) register_permission(PERMISSION_METADATA_DOCUMENT_EDIT) register_permission(PERMISSION_METADATA_DOCUMENT_ADD) register_permission(PERMISSION_METADATA_DOCUMENT_REMOVE) register_permission(PERMISSION_METADATA_DOCUMENT_VIEW) set_namespace_title('metadata_setup', _(u'Metadata setup')) register_permission(PERMISSION_METADATA_TYPE_EDIT) register_permission(PERMISSION_METADATA_TYPE_CREATE) register_permission(PERMISSION_METADATA_TYPE_DELETE) register_permission(PERMISSION_METADATA_TYPE_VIEW) register_permission(PERMISSION_METADATA_SET_EDIT) register_permission(PERMISSION_METADATA_SET_CREATE) register_permission(PERMISSION_METADATA_SET_DELETE) register_permission(PERMISSION_METADATA_SET_VIEW)
def is_min_zoom(context): return context['zoom'] <= ZOOM_MIN_LEVEL def is_max_zoom(context): return context['zoom'] >= ZOOM_MAX_LEVEL def is_current_version(context): return context['object'].document.latest_version.timestamp == context[ 'object'].timestamp # Permission setup set_namespace_title('documents', _(u'Documents')) register_permission(PERMISSION_DOCUMENT_CREATE) register_permission(PERMISSION_DOCUMENT_PROPERTIES_EDIT) register_permission(PERMISSION_DOCUMENT_EDIT) register_permission(PERMISSION_DOCUMENT_VIEW) register_permission(PERMISSION_DOCUMENT_DELETE) register_permission(PERMISSION_DOCUMENT_DOWNLOAD) register_permission(PERMISSION_DOCUMENT_TRANSFORM) register_permission(PERMISSION_DOCUMENT_TOOLS) register_permission(PERMISSION_DOCUMENT_VERSION_REVERT) # Document type permissions set_namespace_title('documents_setup', _(u'Documents setup')) register_permission(PERMISSION_DOCUMENT_TYPE_EDIT) register_permission(PERMISSION_DOCUMENT_TYPE_DELETE) register_permission(PERMISSION_DOCUMENT_TYPE_CREATE)
from documents.models import Document from document_indexing.models import IndexInstance PERMISSION_DOCUMENT_INDEXING_VIEW = { "namespace": "document_indexing", "name": "document_index_view", "label": _(u"View document indexes"), } PERMISSION_DOCUMENT_INDEXING_REBUILD_INDEXES = { "namespace": "document_indexing", "name": "document_rebuild_indexes", "label": _(u"Rebuild document indexes"), } set_namespace_title("document_indexing", _(u"Indexing")) register_permission(PERMISSION_DOCUMENT_INDEXING_VIEW) register_permission(PERMISSION_DOCUMENT_INDEXING_REBUILD_INDEXES) index_list = { "text": _(u"index list"), "view": "index_instance_list", "famfam": "folder_page", "permissions": [PERMISSION_DOCUMENT_INDEXING_VIEW], } index_parent = { "text": _(u"go up one level"), "view": "index_instance_list", "args": "object.parent.pk", "famfam": "arrow_up", "permissions": [PERMISSION_DOCUMENT_INDEXING_VIEW],
from linking.models import SmartLink, SmartLinkCondition PERMISSION_SMART_LINK_VIEW = { "namespace": "linking", "name": "smart_link_view", "label": _(u"View existing smart links"), } PERMISSION_SMART_LINK_CREATE = { "namespace": "linking", "name": "smart_link_create", "label": _(u"Create new smart links"), } PERMISSION_SMART_LINK_DELETE = {"namespace": "linking", "name": "smart_link_delete", "label": _(u"Delete smart links")} PERMISSION_SMART_LINK_EDIT = {"namespace": "linking", "name": "smart_link_edit", "label": _(u"Edit smart links")} set_namespace_title("linking", _(u"Smart links")) register_permission(PERMISSION_SMART_LINK_VIEW) register_permission(PERMISSION_SMART_LINK_CREATE) register_permission(PERMISSION_SMART_LINK_DELETE) register_permission(PERMISSION_SMART_LINK_EDIT) smart_link_instance_view_link = { "text": _(u"smart links actions"), "view": "smart_link_instance_view", "famfam": "page_link", "permissions": [PERMISSION_DOCUMENT_VIEW], } smart_link_instances_for_document = { "text": _(u"smart links"), "view": "smart_link_instances_for_document", "args": "object.pk",
'namespace': 'tags', 'name': 'tag_delete', 'label': _(u'Delete global tags') } PERMISSION_TAG_EDIT = { 'namespace': 'tags', 'name': 'tag_edit', 'label': _(u'Edit global tags') } PERMISSION_TAG_VIEW = { 'namespace': 'tags', 'name': 'tag_view', 'label': _(u'View a document\'s tags') } set_namespace_title('tags', _(u'Tags')) register_permission(PERMISSION_TAG_CREATE) register_permission(PERMISSION_TAG_ATTACH) register_permission(PERMISSION_TAG_REMOVE) register_permission(PERMISSION_TAG_DELETE) register_permission(PERMISSION_TAG_EDIT) register_permission(PERMISSION_TAG_VIEW) tag_list = {'text': _(u'tag list'), 'view': 'tag_list', 'famfam': 'tag_blue'} tag_create = { 'text': _(u'create new tag'), 'view': 'tag_create', 'famfam': 'tag_blue_add' } tag_add_attach = { 'text': _(u'attach tag'),
from permissions.api import register_permission, set_namespace_title from common.utils import two_state_template from reminder_comments import comments_for_object from reminders.models import Reminder, Participant PERMISSION_REMINDER_VIEW = {'namespace': 'reminders', 'name': 'reminder_view', 'label': _(u'View reminder')} PERMISSION_REMINDER_VIEW_ALL = {'namespace': 'reminders', 'name': 'reminder_view_all', 'label': _(u'View all reminders')} PERMISSION_REMINDER_CREATE = {'namespace': 'reminders', 'name': 'reminder_create', 'label': _(u'Create reminder')} PERMISSION_REMINDER_EDIT = {'namespace': 'reminders', 'name': 'reminder_edit', 'label': _(u'Edit reminder')} PERMISSION_REMINDER_EDIT_ALL = {'namespace': 'reminders', 'name': 'reminder_edit_all', 'label': _(u'Edit all reminders')} PERMISSION_REMINDER_DELETE = {'namespace': 'reminders', 'name': 'reminder_delete', 'label': _(u'Delete reminder')} PERMISSION_REMINDER_DELETE_ALL = {'namespace': 'reminders', 'name': 'reminder_delete_all', 'label': _(u'Delete all reminders')} set_namespace_title('reminders', _(u'Reminders')) register_permission(PERMISSION_REMINDER_VIEW) register_permission(PERMISSION_REMINDER_VIEW_ALL) register_permission(PERMISSION_REMINDER_CREATE) register_permission(PERMISSION_REMINDER_EDIT) register_permission(PERMISSION_REMINDER_EDIT_ALL) register_permission(PERMISSION_REMINDER_DELETE) register_permission(PERMISSION_REMINDER_DELETE_ALL) reminder_list = {'text': _(u'reminder list'), 'view': 'reminder_list', 'famfam': 'hourglass', 'permissions': [PERMISSION_REMINDER_VIEW]} reminder_list_all = {'text': _(u'reminder list (all)'), 'view': 'reminder_list_all', 'famfam': 'hourglass', 'permissions': [PERMISSION_REMINDER_VIEW_ALL]} expired_remider_list = {'text': _(u'expired reminder list'), 'view': 'expired_remider_list', 'famfam': 'tick', 'permissions': [PERMISSION_REMINDER_VIEW]} expired_remider_list_all = {'text': _(u'expired reminder list (all)'), 'view': 'expired_remider_list_all', 'famfam': 'tick', 'permissions': [PERMISSION_REMINDER_VIEW_ALL]} reminder_add = {'text': _(u'create reminder (calendar)'), 'view': 'reminder_add', 'famfam': 'hourglass_add', 'permissions': [PERMISSION_REMINDER_CREATE]} reminder_add_days = {'text': _(u'create reminder (days)'), 'view': 'reminder_add_days', 'famfam': 'hourglass_add', 'permissions': [PERMISSION_REMINDER_CREATE]} reminder_edit = {'text': _(u'edit (calendar)'), 'view': 'reminder_edit', 'args': 'object.pk', 'famfam': 'hourglass_go', 'permissions': [PERMISSION_REMINDER_EDIT]}
from navigation.api import register_links, register_top_menu, register_multi_item_links from permissions.api import register_permission, set_namespace_title from documents.models import Document from main.api import register_tool from ocr.conf.settings import AUTOMATIC_OCR from ocr.models import DocumentQueue #Permissions PERMISSION_OCR_DOCUMENT = {'namespace': 'ocr', 'name': 'ocr_document', 'label': _(u'Submit document for OCR')} PERMISSION_OCR_DOCUMENT_DELETE = {'namespace': 'ocr', 'name': 'ocr_document_delete', 'label': _(u'Delete document for OCR queue')} PERMISSION_OCR_QUEUE_ENABLE_DISABLE = {'namespace': 'ocr', 'name': 'ocr_queue_enable_disable', 'label': _(u'Can enable/disable an OCR queue')} PERMISSION_OCR_CLEAN_ALL_PAGES = {'namespace': 'ocr', 'name': 'ocr_clean_all_pages', 'label': _(u'Can execute an OCR clean up on all document pages')} set_namespace_title('ocr', _(u'OCR')) register_permission(PERMISSION_OCR_DOCUMENT) register_permission(PERMISSION_OCR_DOCUMENT_DELETE) register_permission(PERMISSION_OCR_QUEUE_ENABLE_DISABLE) register_permission(PERMISSION_OCR_CLEAN_ALL_PAGES) #Links submit_document = {'text': _('submit to OCR queue'), 'view': 'submit_document', 'args': 'object.id', 'famfam': 'hourglass_add', 'permissions': [PERMISSION_OCR_DOCUMENT]} re_queue_document = {'text': _('re-queue'), 'view': 're_queue_document', 'args': 'object.id', 'famfam': 'hourglass_add', 'permissions': [PERMISSION_OCR_DOCUMENT]} re_queue_multiple_document = {'text': _('re-queue'), 'view': 're_queue_multiple_document', 'famfam': 'hourglass_add', 'permissions': [PERMISSION_OCR_DOCUMENT]} queue_document_delete = {'text': _(u'delete'), 'view': 'queue_document_delete', 'args': 'object.id', 'famfam': 'hourglass_delete', 'permissions': [PERMISSION_OCR_DOCUMENT_DELETE]} queue_document_multiple_delete = {'text': _(u'delete'), 'view': 'queue_document_multiple_delete', 'famfam': 'hourglass_delete', 'permissions': [PERMISSION_OCR_DOCUMENT_DELETE]} document_queue_disable = {'text': _(u'stop queue'), 'view': 'document_queue_disable', 'args': 'object.id', 'famfam': 'control_stop_blue', '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': [PERMISSION_OCR_QUEUE_ENABLE_DISABLE]}
from documents.conf.settings import PER_USER_STAGING_DIRECTORY from documents.literals import PERMISSION_DOCUMENT_CREATE, \ PERMISSION_DOCUMENT_PROPERTIES_EDIT, PERMISSION_DOCUMENT_VIEW, \ PERMISSION_DOCUMENT_DELETE, PERMISSION_DOCUMENT_DOWNLOAD, \ PERMISSION_DOCUMENT_TRANSFORM, PERMISSION_DOCUMENT_TOOLS, \ PERMISSION_DOCUMENT_EDIT from documents.literals import PERMISSION_DOCUMENT_TYPE_EDIT, \ PERMISSION_DOCUMENT_TYPE_DELETE, PERMISSION_DOCUMENT_TYPE_CREATE from documents.literals import HISTORY_DOCUMENT_CREATED, \ HISTORY_DOCUMENT_EDITED, HISTORY_DOCUMENT_DELETED from documents.conf.settings import ZOOM_MAX_LEVEL from documents.conf.settings import ZOOM_MIN_LEVEL from documents.widgets import document_thumbnail # Permission setup set_namespace_title('documents', _(u'Documents')) register_permission(PERMISSION_DOCUMENT_CREATE) register_permission(PERMISSION_DOCUMENT_PROPERTIES_EDIT) register_permission(PERMISSION_DOCUMENT_EDIT) register_permission(PERMISSION_DOCUMENT_VIEW) register_permission(PERMISSION_DOCUMENT_DELETE) register_permission(PERMISSION_DOCUMENT_DOWNLOAD) register_permission(PERMISSION_DOCUMENT_TRANSFORM) register_permission(PERMISSION_DOCUMENT_TOOLS) # Document type permissions register_permission(PERMISSION_DOCUMENT_TYPE_EDIT) register_permission(PERMISSION_DOCUMENT_TYPE_DELETE) register_permission(PERMISSION_DOCUMENT_TYPE_CREATE) # History setup
from django.utils.translation import ugettext_lazy as _ from permissions.api import register_permission, set_namespace_title from project_tools.api import register_tool PERMISSION_HISTORY_VIEW = { 'namespace': 'history', 'name': u'history_view', 'label': _(u'Access the history app') } set_namespace_title('history', _(u'History')) register_permission(PERMISSION_HISTORY_VIEW) # TODO: support permissions AND operand history_list = { 'text': _(u'history'), 'view': 'history_list', 'famfam': 'book', 'icon': 'book.png', 'permissions': [PERMISSION_HISTORY_VIEW], 'children_views': ['history_view'] } register_tool(history_list)
from django.utils.translation import ugettext_lazy as _ from permissions.api import register_permission, set_namespace_title from project_tools.api import register_tool PERMISSION_HISTORY_VIEW = {'namespace': 'history', 'name': u'history_view', 'label': _(u'Access the history app')} set_namespace_title('history', _(u'History')) register_permission(PERMISSION_HISTORY_VIEW) # TODO: support permissions AND operand history_list = {'text': _(u'history'), 'view': 'history_list', 'famfam': 'book', 'icon': 'book.png', 'permissions': [PERMISSION_HISTORY_VIEW], 'children_views': ['history_view']} register_tool(history_list)
from navigation.api import register_links, register_multi_item_links from permissions.api import register_permission, set_namespace_title from project_setup.api import register_setup PERMISSION_USER_CREATE = {'namespace': 'user_management', 'name': 'user_create', 'label': _(u'Create new users')} PERMISSION_USER_EDIT = {'namespace': 'user_management', 'name': 'user_edit', 'label': _(u'Edit existing users')} PERMISSION_USER_VIEW = {'namespace': 'user_management', 'name': 'user_view', 'label': _(u'View existing users')} PERMISSION_USER_DELETE = {'namespace': 'user_management', 'name': 'user_delete', 'label': _(u'Delete existing users')} PERMISSION_GROUP_CREATE = {'namespace': 'user_management', 'name': 'group_create', 'label': _(u'Create new groups')} PERMISSION_GROUP_EDIT = {'namespace': 'user_management', 'name': 'group_edit', 'label': _(u'Edit existing groups')} PERMISSION_GROUP_VIEW = {'namespace': 'user_management', 'name': 'group_view', 'label': _(u'View existing groups')} PERMISSION_GROUP_DELETE = {'namespace': 'user_management', 'name': 'group_delete', 'label': _(u'Delete existing groups')} set_namespace_title('user_management', _(u'User management')) register_permission(PERMISSION_USER_CREATE) register_permission(PERMISSION_USER_EDIT) register_permission(PERMISSION_USER_VIEW) register_permission(PERMISSION_USER_DELETE) register_permission(PERMISSION_GROUP_CREATE) register_permission(PERMISSION_GROUP_EDIT) register_permission(PERMISSION_GROUP_VIEW) register_permission(PERMISSION_GROUP_DELETE) user_list = {'text': _(u'user list'), 'view': 'user_list', 'famfam': 'user', 'permissions': [PERMISSION_USER_VIEW]} user_setup = {'text': _(u'users'), 'view': 'user_list', 'famfam': 'user', 'icon': 'user.png', 'permissions': [PERMISSION_USER_VIEW]} user_edit = {'text': _(u'edit'), 'view': 'user_edit', 'args': 'object.id', 'famfam': 'user_edit', 'permissions': [PERMISSION_USER_EDIT]} user_add = {'text': _(u'create new user'), 'view': 'user_add', 'famfam': 'user_add', 'permissions': [PERMISSION_USER_CREATE]} user_delete = {u'text': _('delete'), 'view': 'user_delete', 'args': 'object.id', 'famfam': 'user_delete', 'permissions': [PERMISSION_USER_DELETE]} user_multiple_delete = {u'text': _('delete'), 'view': 'user_multiple_delete', 'famfam': 'user_delete', 'permissions': [PERMISSION_USER_DELETE]}
'namespace': 'ocr', 'name': 'ocr_queue_enable_disable', 'label': _(u'Can enable/disable an OCR queue') } PERMISSION_OCR_CLEAN_ALL_PAGES = { 'namespace': 'ocr', 'name': 'ocr_clean_all_pages', 'label': _(u'Can execute an OCR clean up on all document pages') } PERMISSION_OCR_QUEUE_EDIT = { 'namespace': 'ocr_setup', 'name': 'ocr_queue_edit', 'label': _(u'Can edit an OCR queue properties') } set_namespace_title('ocr', _(u'OCR')) register_permission(PERMISSION_OCR_DOCUMENT) register_permission(PERMISSION_OCR_DOCUMENT_DELETE) register_permission(PERMISSION_OCR_QUEUE_ENABLE_DISABLE) register_permission(PERMISSION_OCR_CLEAN_ALL_PAGES) set_namespace_title('ocr_setup', _(u'OCR Setup')) register_permission(PERMISSION_OCR_QUEUE_EDIT) #Links submit_document = { 'text': _('submit to OCR queue'), 'view': 'submit_document', 'args': 'object.id', 'famfam': 'hourglass_add', 'permissions': [PERMISSION_OCR_DOCUMENT]
from permissions.api import register_permission, set_namespace_title from project_setup.api import register_setup from hkp import Key as KeyServerKey from django_gpg.api import Key PERMISSION_DOCUMENT_VERIFY = {'namespace': 'django_gpg', 'name': 'document_verify', 'label': _(u'Verify document signatures')} PERMISSION_KEY_VIEW = {'namespace': 'django_gpg', 'name': 'key_view', 'label': _(u'View keys')} PERMISSION_KEY_DELETE = {'namespace': 'django_gpg', 'name': 'key_delete', 'label': _(u'Delete keys')} PERMISSION_KEYSERVER_QUERY = {'namespace': 'django_gpg', 'name': 'keyserver_query', 'label': _(u'Query keyservers')} PERMISSION_KEY_RECEIVE = {'namespace': 'django_gpg', 'name': 'key_receive', 'label': _(u'Import key from keyservers')} PERMISSION_SIGNATURE_UPLOAD = {'namespace': 'django_gpg', 'name': 'signature_upload', 'label': _(u'Upload detached signatures')} PERMISSION_SIGNATURE_DOWNLOAD = {'namespace': 'django_gpg', 'name': 'key_receive', 'label': _(u'Download detached signatures')} # Permission setup set_namespace_title('django_gpg', _(u'Signatures')) register_permission(PERMISSION_DOCUMENT_VERIFY) register_permission(PERMISSION_KEY_VIEW) register_permission(PERMISSION_KEY_DELETE) register_permission(PERMISSION_KEYSERVER_QUERY) register_permission(PERMISSION_KEY_RECEIVE) register_permission(PERMISSION_SIGNATURE_UPLOAD) register_permission(PERMISSION_SIGNATURE_DOWNLOAD) def has_embedded_signature(context): return context['object'].signature_state def doesnt_have_detached_signature(context): return context['object'].has_detached_signature() == False # Setup views