Use new icon classes, improve URLs layouts

Use the new icon classes to add custom icons. Improve
the URL schemes of some apps for uniformity.

Signed-off-by: Roberto Rosario <Roberto.Rosario@mayan-edms.com>
This commit is contained in:
Roberto Rosario
2018-12-27 04:46:56 -04:00
parent 24066c494e
commit e687430cf0
19 changed files with 425 additions and 211 deletions

View File

@@ -3,4 +3,7 @@ from __future__ import absolute_import, unicode_literals
from mayan.apps.appearance.classes import Icon
icon_acl_list = Icon(driver_name='fontawesome', symbol='lock')
icon_acl_new = Icon(driver_name='fontawesome', symbol='plus')
icon_acl_new = Icon(
driver_name='fontawesome-dual', primary_symbol='lock',
secondary_symbol='plus'
)

View File

@@ -7,7 +7,7 @@ icon_dashboard_document_types = Icon(
driver_name='fontawesome', symbol='book'
)
icon_dashboard_documents_in_trash = Icon(
driver_name='fontawesome', symbol='trash'
driver_name='fontawesome', symbol='trash-alt'
)
icon_dashboard_pages_per_month = Icon(
driver_name='fontawesome', symbol='copy'
@@ -18,14 +18,29 @@ icon_dashboard_new_documents_this_month = Icon(
icon_dashboard_total_document = Icon(
driver_name='fontawesome', symbol='file'
)
icon_document_delete = Icon(
driver_name='fontawesome', symbol='times'
)
icon_document_download = Icon(
driver_name='fontawesome', symbol='download'
)
icon_document_duplicates_list = Icon(
driver_name='fontawesome', symbol='clone'
)
icon_document_edit = Icon(
driver_name='fontawesome', symbol='pencil-alt'
)
icon_document_favorites_add = Icon(
driver_name='fontawesome-dual', primary_symbol='star',
secondary_symbol='plus'
)
icon_document_image_loading = Icon(
driver_name='fontawesomecss', css_classes='far fa-clock fa-2x'
)
icon_document_list = Icon(driver_name='fontawesome', symbol='file')
icon_document_list_deleted = Icon(driver_name='fontawesome', symbol='trash')
icon_document_list = Icon(driver_name='fontawesome', symbol='book')
icon_document_list_deleted = Icon(
driver_name='fontawesome', symbol='trash-alt'
)
icon_document_list_favorites = Icon(driver_name='fontawesome', symbol='star')
icon_document_list_recent_access = Icon(
driver_name='fontawesome', symbol='clock'
@@ -33,6 +48,12 @@ icon_document_list_recent_access = Icon(
icon_document_list_recent_added = Icon(
driver_name='fontawesome', symbol='asterisk'
)
icon_document_multiple_delete = Icon(
driver_name='fontawesome', symbol='trash-alt'
)
icon_document_multiepl_restore = Icon(
driver_name='fontawesome', symbol='recycle'
)
icon_document_page_navigation_first = Icon(
driver_name='fontawesome', symbol='step-backward'
)
@@ -66,18 +87,31 @@ icon_document_page_zoom_out = Icon(
)
icon_document_pages = Icon(driver_name='fontawesome', symbol='copy')
icon_document_preview = Icon(driver_name='fontawesome', symbol='eye')
icon_document_print = Icon(
driver_name='fontawesome', symbol='print'
)
icon_document_properties = Icon(driver_name='fontawesome', symbol='info')
icon_document_type = Icon(driver_name='fontawesome', symbol='file')
icon_document_restore = Icon(driver_name='fontawesome', symbol='recycle')
icon_document_trash = Icon(
driver_name='fontawesome', symbol='trash-alt'
)
icon_document_type = Icon(
driver_name='fontawesome-layers', data=[
{'class': 'fas fa-circle', 'transform': 'shrink-12 up-2'},
{'class': 'fas fa-cog', 'transform': 'shrink-6 up-2', 'mask': 'fas fa-torah'}
]
)
icon_document_type_create = Icon(driver_name='fontawesome', symbol='plus')
icon_document_type_delete = Icon(driver_name='fontawesome', symbol='times')
icon_document_type_edit = Icon(driver_name='fontawesome', symbol='pencil-alt')
icon_document_type_setup = Icon(driver_name='fontawesome', symbol='file')
icon_document_type_setup = icon_document_type
icon_document_type_filename = Icon(
driver_name='fontawesome', symbol='keyboard'
)
icon_document_type_filename_create = Icon(
driver_name='fontawesome', symbol='plus'
)
icon_document_type_list = icon_document_type
icon_document_version_list = Icon(
driver_name='fontawesome', symbol='code-branch'
)
@@ -99,4 +133,7 @@ icon_document_version_download = Icon(
icon_document_version_view = Icon(
driver_name='fontawesome', symbol='eye'
)
icon_menu_documents = Icon(driver_name='fontawesome', symbol='file')
icon_menu_documents = Icon(driver_name='fontawesome', symbol='book')
icon_trash_can_empty = Icon(
driver_name='fontawesome', symbol='trash-alt'
)

View File

@@ -11,19 +11,25 @@ from .icons import (
icon_clear_image_cache, icon_document_duplicates_list, icon_document_list,
icon_document_list_deleted, icon_document_list_favorites,
icon_document_list_recent_access, icon_document_list_recent_added,
icon_document_page_navigation_first, icon_document_page_navigation_last,
icon_document_delete, icon_document_download, icon_document_edit,
icon_document_favorites_add, icon_document_multiple_delete,
icon_document_multiepl_restore, icon_document_page_navigation_first,
icon_document_page_navigation_last,
icon_document_page_navigation_next, icon_document_page_navigation_previous,
icon_document_page_return, icon_document_page_rotate_left,
icon_document_page_rotate_right, icon_document_page_view,
icon_document_page_view_reset, icon_document_page_zoom_in,
icon_document_page_zoom_out, icon_document_pages, icon_document_preview,
icon_document_properties, icon_document_type_create,
icon_document_print, icon_document_properties, icon_document_restore,
icon_document_trash, icon_document_type_create,
icon_document_type_delete, icon_document_type_edit,
icon_document_type_filename, icon_document_type_filename_create,
icon_document_type_setup, icon_document_version_download,
icon_document_type_list, icon_document_type_setup,
icon_document_version_download,
icon_document_version_list, icon_document_version_return_document,
icon_document_version_return_list, icon_document_version_view,
icon_duplicated_document_list, icon_duplicated_document_scan
icon_duplicated_document_list, icon_duplicated_document_scan,
icon_trash_can_empty
)
from .permissions import (
permission_document_delete, permission_document_download,
@@ -100,11 +106,12 @@ link_document_clone_transformations = Link(
view='documents:document_clone_transformations',
)
link_document_delete = Link(
args='resolved_object.id', permissions=(permission_document_delete,),
tags='dangerous', text=_('Delete'), view='documents:document_delete',
args='resolved_object.id', icon_class=icon_document_delete,
permissions=(permission_document_delete,), tags='dangerous',
text=_('Delete'), view='documents:document_delete',
)
link_document_favorites_add = Link(
args='resolved_object.id',
args='resolved_object.id', icon_class=icon_document_favorites_add,
permissions=(permission_document_view,), text=_('Add to favorites'),
view='documents:document_add_to_favorites',
)
@@ -114,12 +121,12 @@ link_document_favorites_remove = Link(
view='documents:document_remove_from_favorites',
)
link_document_trash = Link(
args='resolved_object.id', permissions=(permission_document_trash,),
tags='dangerous', text=_('Move to trash'),
view='documents:document_trash',
args='resolved_object.id', icon_class=icon_document_trash,
permissions=(permission_document_trash,), tags='dangerous',
text=_('Move to trash'), view='documents:document_trash',
)
link_document_edit = Link(
args='resolved_object.id',
args='resolved_object.id', icon_class=icon_document_edit,
permissions=(permission_document_properties_edit,),
text=_('Edit properties'), view='documents:document_edit',
)
@@ -129,11 +136,13 @@ link_document_document_type_edit = Link(
view='documents:document_document_type_edit',
)
link_document_download = Link(
args='resolved_object.id', permissions=(permission_document_download,),
text=_('Advanced download'), view='documents:document_download_form',
args='resolved_object.id', icon_class=icon_document_download,
permissions=(permission_document_download,), text=_('Advanced download'),
view='documents:document_download_form',
)
link_document_print = Link(
args='resolved_object.id', permissions=(permission_document_print,),
args='resolved_object.id', icon_class=icon_document_print,
permissions=(permission_document_print,),
text=_('Print'), view='documents:document_print',
)
link_document_quick_download = Link(
@@ -146,6 +155,7 @@ link_document_update_page_count = Link(
view='documents:document_update_page_count'
)
link_document_restore = Link(
icon_class=icon_document_restore,
permissions=(permission_document_restore,), text=_('Restore'),
view='documents:document_restore', args='object.pk'
)
@@ -159,8 +169,8 @@ link_document_multiple_trash = Link(
view='documents:document_multiple_trash'
)
link_document_multiple_delete = Link(
tags='dangerous', text=_('Delete'),
view='documents:document_multiple_delete'
icon_class=icon_document_multiple_delete, tags='dangerous',
text=_('Delete'), view='documents:document_multiple_delete'
)
link_document_multiple_favorites_add = Link(
text=_('Add to favorites'),
@@ -182,7 +192,8 @@ link_document_multiple_update_page_count = Link(
view='documents:document_multiple_update_page_count'
)
link_document_multiple_restore = Link(
text=_('Restore'), view='documents:document_multiple_restore'
icon_class=icon_document_multiepl_restore, text=_('Restore'),
view='documents:document_multiple_restore'
)
# Versions
@@ -242,8 +253,8 @@ link_clear_image_cache = Link(
view='documents:document_clear_image_cache'
)
link_trash_can_empty = Link(
permissions=(permission_empty_trash,), text=_('Empty trash'),
view='documents:trash_can_empty'
icon_class=icon_trash_can_empty, permissions=(permission_empty_trash,),
text=_('Empty trash'), view='documents:trash_can_empty'
)
# Document pages
@@ -356,6 +367,7 @@ link_document_type_filename_list = Link(
view='documents:document_type_filename_list',
)
link_document_type_list = Link(
icon_class=icon_document_type_list,
permissions=(permission_document_type_view,), text=_('Document types'),
view='documents:document_type_list'
)

View File

@@ -20,8 +20,8 @@ from mayan.celery import app
from .classes import MailerBackend
from .links import (
link_send_document, link_send_document_link, link_send_multiple_document,
link_send_multiple_document_link, link_system_mailer_error_log,
link_document_send, link_document_send_link, link_document_multiple_send,
link_document_multiple_send_link, link_system_mailer_error_log,
link_user_mailer_create, link_user_mailer_delete, link_user_mailer_edit,
link_user_mailer_list, link_user_mailer_log_list, link_user_mailer_setup,
link_user_mailer_test
@@ -98,13 +98,13 @@ class MailerApp(MayanAppConfig):
menu_multi_item.bind_links(
links=(
link_send_multiple_document, link_send_multiple_document_link
link_document_multiple_send, link_document_multiple_send_link
), sources=(Document,)
)
menu_object.bind_links(
links=(
link_send_document_link, link_send_document
link_document_send_link, link_document_send
), sources=(Document,)
)

View File

@@ -2,6 +2,18 @@ from __future__ import absolute_import, unicode_literals
from mayan.apps.appearance.classes import Icon
icon_document_send = Icon(
driver_name='fontawesome', symbol='envelope'
)
icon_document_send_link = Icon(
driver_name='fontawesome', symbol='envelope'
)
icon_document_multiple_send = Icon(
driver_name='fontawesome', symbol='envelope'
)
icon_document_multiple_send_link = Icon(
driver_name='fontawesome', symbol='envelope'
)
icon_mail_document_submit = Icon(
driver_name='fontawesome', symbol='envelope'
)
@@ -9,5 +21,8 @@ icon_system_mailer_error_log = Icon(
driver_name='fontawesome', symbol='envelope'
)
icon_user_mailer_create = Icon(driver_name='fontawesome', symbol='plus')
icon_user_mailer_delete = Icon(driver_name='fontawesome', symbol='times')
icon_user_mailer_edit = Icon(driver_name='fontawesome', symbol='pencil-alt')
icon_user_mailer_list = Icon(driver_name='fontawesome', symbol='envelope')
icon_user_mailer_setup = Icon(driver_name='fontawesome', symbol='envelope')
icon_user_mailer_test = Icon(driver_name='fontawesome', symbol='play')

View File

@@ -5,8 +5,16 @@ from django.utils.translation import ugettext_lazy as _
from mayan.apps.navigation import Link
from .icons import (
icon_document_send,
icon_document_send_link,
icon_document_multiple_send,
icon_document_multiple_send_link,
icon_system_mailer_error_log, icon_user_mailer_create,
icon_user_mailer_list, icon_user_mailer_setup
icon_user_mailer_delete,icon_user_mailer_edit,
icon_user_mailer_list, icon_user_mailer_setup,
icon_user_mailer_test
)
from .permissions import (
permission_mailing_link, permission_mailing_send_document,
@@ -15,19 +23,23 @@ from .permissions import (
permission_user_mailer_view, permission_view_error_log
)
link_send_document = Link(
args='resolved_object.pk', permissions=(permission_mailing_send_document,),
text=_('Email document'), view='mailer:send_document'
link_document_send = Link(
args='resolved_object.pk', icon_class=icon_document_send,
permissions=(permission_mailing_send_document,), text=_('Email document'),
view='mailer:document_send'
)
link_send_document_link = Link(
args='resolved_object.pk', permissions=(permission_mailing_link,),
text=_('Email link'), view='mailer:send_document_link'
link_document_send_link = Link(
args='resolved_object.pk', icon_class=icon_document_send_link,
permissions=(permission_mailing_link,), text=_('Email link'),
view='mailer:document_send_link'
)
link_send_multiple_document = Link(
text=_('Email document'), view='mailer:send_multiple_document'
link_document_multiple_send = Link(
icon_class=icon_document_multiple_send, text=_('Email document'),
view='mailer:document_multiple_send'
)
link_send_multiple_document_link = Link(
text=_('Email link'), view='mailer:send_multiple_document_link'
link_document_multiple_send_link = Link(
icon_class=icon_document_multiple_send_link, text=_('Email link'),
view='mailer:document_multiple_send_link'
)
link_system_mailer_error_log = Link(
icon_class=icon_system_mailer_error_log,
@@ -40,12 +52,14 @@ link_user_mailer_create = Link(
text=_('User mailer create'), view='mailer:user_mailer_backend_selection',
)
link_user_mailer_delete = Link(
args='resolved_object.pk', permissions=(permission_user_mailer_delete,),
tags='dangerous', text=_('Delete'), view='mailer:user_mailer_delete',
args='resolved_object.pk', icon_class=icon_user_mailer_delete,
permissions=(permission_user_mailer_delete,), tags='dangerous',
text=_('Delete'), view='mailer:user_mailer_delete',
)
link_user_mailer_edit = Link(
args='object.pk', permissions=(permission_user_mailer_edit,),
text=_('Edit'), view='mailer:user_mailer_edit',
args='object.pk', icon_class=icon_user_mailer_edit,
permissions=(permission_user_mailer_edit,), text=_('Edit'),
view='mailer:user_mailer_edit',
)
link_user_mailer_log_list = Link(
args='object.pk', permissions=(permission_user_mailer_view,),
@@ -62,6 +76,7 @@ link_user_mailer_setup = Link(
text=_('Mailing profiles'), view='mailer:user_mailer_list',
)
link_user_mailer_test = Link(
args='object.pk', permissions=(permission_user_mailer_use,),
text=_('Test'), view='mailer:user_mailer_test',
args='object.pk', icon_class=icon_user_mailer_test,
permissions=(permission_user_mailer_use,), text=_('Test'),
view='mailer:user_mailer_test',
)

View File

@@ -11,20 +11,20 @@ from .views import (
urlpatterns = [
url(
r'^(?P<pk>\d+)/send/link/$', MailDocumentLinkView.as_view(),
name='send_document_link'
r'^documents/(?P<pk>\d+)/send/link/$', MailDocumentLinkView.as_view(),
name='document_send_link'
),
url(
r'^multiple/send/link/$', MailDocumentLinkView.as_view(),
name='send_multiple_document_link'
r'^documents/multiple/send/link/$', MailDocumentLinkView.as_view(),
name='document_multiple_send_link'
),
url(
r'^(?P<pk>\d+)/send/document/$', MailDocumentView.as_view(),
name='send_document'
r'^documents/(?P<pk>\d+)/send/$', MailDocumentView.as_view(),
name='document_send'
),
url(
r'^multiple/send/document/$', MailDocumentView.as_view(),
name='send_multiple_document'
r'^documents/multiple/send/document/$', MailDocumentView.as_view(),
name='document_multiple_send'
),
url(
r'^system_mailer/log/$', SystemMailerLogEntryListView.as_view(),

View File

@@ -38,12 +38,13 @@ from .handlers import (
handler_post_document_type_change_metadata, handler_index_document,
)
from .links import (
link_metadata_add, link_metadata_edit, link_metadata_multiple_add,
link_metadata_multiple_edit, link_metadata_multiple_remove,
link_metadata_remove, link_metadata_view,
link_setup_document_type_metadata_types, link_setup_metadata_type_create,
link_setup_metadata_type_delete, link_setup_metadata_type_document_types,
link_setup_metadata_type_edit, link_setup_metadata_type_list,
link_document_metadata_add, link_document_metadata_edit,
link_document_multiple_metadata_add, link_document_multiple_metadata_edit,
link_document_multiple_metadata_remove, link_document_metadata_remove,
link_document_metadata_view, link_document_type_metadata_types,
link_metadata_type_create, link_metadata_type_delete,
link_metadata_type_document_types, link_metadata_type_edit,
link_metadata_type_list,
)
from .methods import method_get_metadata
from .permissions import (
@@ -200,47 +201,51 @@ class MetadataApp(MayanAppConfig):
label=_('Metadata value')
)
menu_facet.bind_links(links=(link_metadata_view,), sources=(Document,))
menu_facet.bind_links(
links=(link_document_metadata_view,), sources=(Document,)
)
menu_list_facet.bind_links(
links=(
link_setup_document_type_metadata_types,
), sources=(DocumentType,)
links=(link_document_type_metadata_types,), sources=(
DocumentType,
)
)
menu_list_facet.bind_links(
links=(
link_acl_list, link_setup_metadata_type_document_types,
link_acl_list, link_metadata_type_document_types,
link_object_event_types_user_subcriptions_list,
link_events_for_object,
), sources=(MetadataType,)
)
menu_multi_item.bind_links(
links=(
link_metadata_multiple_add, link_metadata_multiple_edit,
link_metadata_multiple_remove
link_document_multiple_metadata_add,
link_document_multiple_metadata_edit,
link_document_multiple_metadata_remove
), sources=(Document,)
)
menu_object.bind_links(
links=(
link_setup_metadata_type_edit,
link_setup_metadata_type_delete,
link_metadata_type_edit, link_metadata_type_delete,
), sources=(MetadataType,)
)
menu_secondary.bind_links(
links=(
link_setup_metadata_type_list,
link_setup_metadata_type_create
link_metadata_type_list, link_metadata_type_create
), sources=(
MetadataType, 'metadata:setup_metadata_type_list',
'metadata:setup_metadata_type_create'
MetadataType, 'metadata:metadata_type_list',
'metadata:metadata_type_create'
)
)
menu_setup.bind_links(links=(link_setup_metadata_type_list,))
menu_setup.bind_links(links=(link_metadata_type_list,))
menu_sidebar.bind_links(
links=(
link_metadata_add, link_metadata_edit, link_metadata_remove
link_document_metadata_add, link_document_metadata_edit,
link_document_metadata_remove
), sources=(
'metadata:metadata_add', 'metadata:metadata_edit',
'metadata:metadata_remove', 'metadata:metadata_view'
'metadata:document_metadata_add',
'metadata:document_metadata_edit',
'metadata:document_metadata_remove',
'metadata:document_metadata_view'
)
)

View File

@@ -3,15 +3,42 @@ from __future__ import absolute_import, unicode_literals
from mayan.apps.appearance.classes import Icon
icon_document_metadata_add = Icon(
driver_name='fontawesome', symbol='plus'
driver_name='fontawesome-dual', primary_symbol='database',
secondary_symbol='plus'
)
icon_document_metadata_edit = Icon(
driver_name='fontawesome', symbol='pencil-alt'
driver_name='fontawesome-dual', primary_symbol='database',
secondary_symbol='pen'
)
icon_document_metadata_remove = Icon(
driver_name='fontawesome', symbol='minus'
driver_name='fontawesome-dual', primary_symbol='database',
secondary_symbol='minus'
)
icon_metadata = Icon(driver_name='fontawesome', symbol='pencil-alt')
icon_document_metadata_view = Icon(
driver_name='fontawesome', symbol='database'
)
icon_document_multiple_metadata_add = Icon(
driver_name='fontawesome-dual', primary_symbol='database',
secondary_symbol='plus'
)
icon_document_multiple_metadata_edit = Icon(
driver_name='fontawesome-dual', primary_symbol='database',
secondary_symbol='pen'
)
icon_document_multiple_metadata_remove = Icon(
driver_name='fontawesome-dual', primary_symbol='database',
secondary_symbol='minus'
)
icon_document_type_metadata_types = Icon(
driver_name='fontawesome', symbol='database'
)
icon_metadata = Icon(driver_name='fontawesome', symbol='database')
icon_metadata_type_create = Icon(driver_name='fontawesome', symbol='plus')
icon_metadata_type = Icon(driver_name='fontawesome', symbol='pencil-alt')
icon_metadata_view = Icon(driver_name='fontawesome', symbol='pencil-alt')
icon_metadata_type_delete = Icon(driver_name='fontawesome', symbol='times')
icon_metadata_type_document_types = Icon(
driver_name='fontawesome', symbol='book'
)
icon_metadata_type_edit = Icon(driver_name='fontawesome', symbol='pencil-alt')
icon_metadata_type_list = Icon(driver_name='fontawesome', symbol='database')

View File

@@ -7,8 +7,13 @@ from mayan.apps.documents.permissions import permission_document_type_edit
from mayan.apps.navigation import Link
from .icons import (
icon_document_metadata_add, icon_metadata_type, icon_metadata_view,
icon_metadata_type_create
icon_document_metadata_add, icon_document_metadata_edit,
icon_document_metadata_remove, icon_document_metadata_view,
icon_document_multiple_metadata_add, icon_document_multiple_metadata_edit,
icon_document_multiple_metadata_remove, icon_metadata_type_create,
icon_document_type_metadata_types, icon_metadata_type_document_types,
icon_metadata_type_delete, icon_metadata_type_edit,
icon_metadata_type_list,
)
from .permissions import (
permission_metadata_document_add, permission_metadata_document_edit,
@@ -17,57 +22,68 @@ from .permissions import (
permission_metadata_type_edit, permission_metadata_type_view
)
link_metadata_add = Link(
link_document_metadata_add = Link(
args='object.pk', icon_class=icon_document_metadata_add,
permissions=(permission_metadata_document_add,), text=_('Add metadata'),
view='metadata:metadata_add',
view='metadata:document_metadata_add',
)
link_metadata_edit = Link(
args='object.pk', permissions=(permission_metadata_document_edit,),
text=_('Edit metadata'), view='metadata:metadata_edit'
link_document_metadata_edit = Link(
args='object.pk', icon_class=icon_document_metadata_edit,
permissions=(permission_metadata_document_edit,), text=_('Edit metadata'),
view='metadata:document_metadata_edit'
)
link_metadata_multiple_add = Link(
text=_('Add metadata'), view='metadata:metadata_multiple_add'
link_document_multiple_metadata_add = Link(
icon_class=icon_document_multiple_metadata_add, text=_('Add metadata'),
view='metadata:document_multiple_metadata_add'
)
link_metadata_multiple_edit = Link(
text=_('Edit metadata'), view='metadata:metadata_multiple_edit'
link_document_multiple_metadata_edit = Link(
icon_class=icon_document_multiple_metadata_edit, text=_('Edit metadata'),
view='metadata:document_multiple_metadata_edit'
)
link_metadata_multiple_remove = Link(
text=_('Remove metadata'), view='metadata:metadata_multiple_remove'
link_document_multiple_metadata_remove = Link(
icon_class=icon_document_multiple_metadata_remove,
text=_('Remove metadata'),
view='metadata:document_multiple_metadata_remove'
)
link_metadata_remove = Link(
args='object.pk', permissions=(permission_metadata_document_remove,),
text=_('Remove metadata'), view='metadata:metadata_remove',
link_document_metadata_remove = Link(
args='object.pk', icon_class=icon_document_metadata_remove,
permissions=(permission_metadata_document_remove,),
text=_('Remove metadata'), view='metadata:document_metadata_remove',
)
link_metadata_view = Link(
args='resolved_object.pk', icon_class=icon_metadata_view,
link_document_metadata_view = Link(
args='resolved_object.pk', icon_class=icon_document_metadata_view,
permissions=(permission_metadata_document_view,), text=_('Metadata'),
view='metadata:metadata_view',
view='metadata:document_metadata_view',
)
link_setup_document_type_metadata_types = Link(
args='resolved_object.pk', icon_class=icon_metadata_type,
link_document_type_metadata_types = Link(
args='resolved_object.pk', icon_class=icon_document_type_metadata_types,
permissions=(permission_document_type_edit,), text=_('Metadata types'),
view='metadata:setup_document_type_metadata_types',
view='metadata:document_type_metadata_types',
)
link_setup_metadata_type_document_types = Link(
args='resolved_object.pk', icon_class=icon_document_type,
link_metadata_type_document_types = Link(
args='resolved_object.pk', icon_class=icon_metadata_type_document_types,
permissions=(permission_document_type_edit,), text=_('Document types'),
view='metadata:setup_metadata_type_document_types',
view='metadata:metadata_type_document_types',
)
link_setup_metadata_type_create = Link(
link_metadata_type_create = Link(
icon_class=icon_metadata_type_create,
permissions=(permission_metadata_type_create,), text=_('Create new'),
view='metadata:setup_metadata_type_create'
view='metadata:metadata_type_create'
)
link_setup_metadata_type_delete = Link(
args='object.pk', permissions=(permission_metadata_type_delete,),
tags='dangerous', text=_('Delete'), view='metadata:setup_metadata_type_delete',
link_metadata_type_delete = Link(
args='object.pk', icon_class=icon_metadata_type_delete,
permissions=(permission_metadata_type_delete,), tags='dangerous',
text=_('Delete'), view='metadata:metadata_type_delete',
)
link_setup_metadata_type_edit = Link(
args='object.pk', permissions=(permission_metadata_type_edit,),
text=_('Edit'), view='metadata:setup_metadata_type_edit'
link_metadata_type_edit = Link(
args='object.pk', icon_class=icon_metadata_type_edit,
permissions=(permission_metadata_type_edit,), text=_('Edit'),
view='metadata:metadata_type_edit'
)
link_setup_metadata_type_list = Link(
icon_class=icon_metadata_view, permissions=(permission_metadata_type_view,),
text=_('Metadata types'), view='metadata:setup_metadata_type_list'
link_metadata_type_list = Link(
icon_class=icon_metadata_type_list,
permissions=(permission_metadata_type_view,), text=_('Metadata types'),
view='metadata:metadata_type_list'
)

View File

@@ -17,59 +17,59 @@ from .views import (
urlpatterns = [
url(
r'^(?P<pk>\d+)/edit/$', DocumentMetadataEditView.as_view(),
name='metadata_edit'
r'^documents/(?P<pk>\d+)/edit/$', DocumentMetadataEditView.as_view(),
name='document_metadata_edit'
),
url(
r'^multiple/edit/$', DocumentMetadataEditView.as_view(),
name='metadata_multiple_edit'
r'^documents/multiple/edit/$', DocumentMetadataEditView.as_view(),
name='document_multiple_metadata_edit'
),
url(
r'^(?P<pk>\d+)/view/$', DocumentMetadataListView.as_view(),
name='metadata_view'
r'^documents/(?P<pk>\d+)/view/$', DocumentMetadataListView.as_view(),
name='document_metadata_view'
),
url(
r'^(?P<pk>\d+)/add/$', DocumentMetadataAddView.as_view(),
name='metadata_add'
r'^documents/(?P<pk>\d+)/add/$', DocumentMetadataAddView.as_view(),
name='document_metadata_add'
),
url(
r'^multiple/add/$', DocumentMetadataAddView.as_view(),
name='metadata_multiple_add'
r'^documents/multiple/add/$', DocumentMetadataAddView.as_view(),
name='document_multiple_metadata_add'
),
url(
r'^(?P<pk>\d+)/remove/$', DocumentMetadataRemoveView.as_view(),
name='metadata_remove'
r'^documents/(?P<pk>\d+)/remove/$', DocumentMetadataRemoveView.as_view(),
name='document_metadata_remove'
),
url(
r'^multiple/remove/$', DocumentMetadataRemoveView.as_view(),
name='metadata_multiple_remove'
r'^documents/multiple/remove/$', DocumentMetadataRemoveView.as_view(),
name='document_multiple_metadata_remove'
),
url(
r'^setup/type/list/$', MetadataTypeListView.as_view(),
name='setup_metadata_type_list'
r'^types/list/$', MetadataTypeListView.as_view(),
name='metadata_type_list'
),
url(
r'^setup/type/create/$', MetadataTypeCreateView.as_view(),
name='setup_metadata_type_create'
r'^types/create/$', MetadataTypeCreateView.as_view(),
name='metadata_type_create'
),
url(
r'^setup/type/(?P<pk>\d+)/edit/$', MetadataTypeEditView.as_view(),
name='setup_metadata_type_edit'
r'^types/(?P<pk>\d+)/edit/$', MetadataTypeEditView.as_view(),
name='metadata_type_edit'
),
url(
r'^setup/type/(?P<pk>\d+)/delete/$',
MetadataTypeDeleteView.as_view(), name='setup_metadata_type_delete'
r'^types/(?P<pk>\d+)/delete/$',
MetadataTypeDeleteView.as_view(), name='metadata_type_delete'
),
url(
r'^setup/document_types/(?P<pk>\d+)/metadata_types/$',
r'^document_types/(?P<pk>\d+)/metadata_types/$',
SetupDocumentTypeMetadataTypes.as_view(),
name='setup_document_type_metadata_types'
name='document_type_metadata_types'
),
url(
r'^setup/metadata_types/(?P<pk>\d+)/document_types/$',
r'^metadata_types/(?P<pk>\d+)/document_types/$',
SetupMetadataTypesDocumentTypes.as_view(),
name='setup_metadata_type_document_types'
name='metadata_type_document_types'
),
]

View File

@@ -32,8 +32,8 @@ from .icons import (
icon_document_metadata_remove, icon_metadata
)
from .links import (
link_metadata_add, link_metadata_multiple_add,
link_setup_metadata_type_create
link_document_metadata_add, link_document_multiple_metadata_add,
link_metadata_type_create
)
from .models import DocumentMetadata, MetadataType
from .permissions import (
@@ -78,13 +78,17 @@ class DocumentMetadataAddView(MultipleObjectFormActionView):
if self.action_count == 1:
return HttpResponseRedirect(
reverse('metadata:metadata_edit', args=(queryset.first().pk,)),
reverse(
viewname='metadata:document_metadata_edit',
args=(queryset.first().pk,)
)
)
elif self.action_count > 1:
return HttpResponseRedirect(
'%s?%s' % (
reverse('metadata:metadata_multiple_edit'),
urlencode(
reverse(
viewname='metadata:document_metadata_multiple_edit'
), urlencode(
{
'id_list': ','.join(
map(
@@ -242,13 +246,17 @@ class DocumentMetadataEditView(MultipleObjectFormActionView):
if self.action_count == 1:
return HttpResponseRedirect(
reverse('metadata:metadata_edit', args=(queryset.first().pk,)),
reverse(
viewname='metadata:document_metadata_edit',
args=(queryset.first().pk,)
)
)
elif self.action_count > 1:
return HttpResponseRedirect(
'%s?%s' % (
reverse('metadata:metadata_multiple_edit'),
urlencode(
reverse(
viewname='metadata:document_metadata_multiple_edit'
), urlencode(
{
'id_list': ','.join(
map(
@@ -275,13 +283,13 @@ class DocumentMetadataEditView(MultipleObjectFormActionView):
)
if queryset.count() == 1:
no_results_main_link = link_metadata_add.resolve(
no_results_main_link = link_document_metadata_add.resolve(
context=RequestContext(
request=self.request, dict_={'object': queryset.first()}
)
)
else:
no_results_main_link = link_metadata_multiple_add.resolve(
no_results_main_link = link_document_multiple_metadata_add.resolve(
context=RequestContext(request=self.request)
)
no_results_main_link.url = '{}?id_list={}'.format(
@@ -405,7 +413,7 @@ class DocumentMetadataListView(SingleObjectListView):
'hide_object': True,
'object': document,
'no_results_icon': icon_metadata,
'no_results_main_link': link_metadata_add.resolve(
'no_results_main_link': link_document_metadata_add.resolve(
context=RequestContext(
request=self.request, dict_={'object': document}
)
@@ -460,13 +468,17 @@ class DocumentMetadataRemoveView(MultipleObjectFormActionView):
if self.action_count == 1:
return HttpResponseRedirect(
reverse('metadata:metadata_edit', args=(queryset.first().pk,)),
reverse(
viewname='metadata:document_metadata_edit',
args=(queryset.first().pk,)
)
)
elif self.action_count > 1:
return HttpResponseRedirect(
'%s?%s' % (
reverse('metadata:metadata_multiple_edit'),
urlencode(
reverse(
viewname='metadata:document_metadata_multiple_edit'
), urlencode(
{
'id_list': ','.join(
map(
@@ -573,7 +585,9 @@ class MetadataTypeCreateView(SingleObjectCreateView):
extra_context = {'title': _('Create metadata type')}
form_class = MetadataTypeForm
model = MetadataType
post_action_redirect = reverse_lazy('metadata:setup_metadata_type_list')
post_action_redirect = reverse_lazy(
viewname='metadata:metadata_type_list'
)
view_permission = permission_metadata_type_create
def get_save_extra_data(self):
@@ -585,7 +599,9 @@ class MetadataTypeCreateView(SingleObjectCreateView):
class MetadataTypeDeleteView(SingleObjectDeleteView):
model = MetadataType
object_permission = permission_metadata_type_delete
post_action_redirect = reverse_lazy('metadata:setup_metadata_type_list')
post_action_redirect = reverse_lazy(
viewname='metadata:metadata_type_list'
)
def get_extra_context(self):
return {
@@ -599,7 +615,9 @@ class MetadataTypeEditView(SingleObjectEditView):
form_class = MetadataTypeForm
model = MetadataType
object_permission = permission_metadata_type_edit
post_action_redirect = reverse_lazy('metadata:setup_metadata_type_list')
post_action_redirect = reverse_lazy(
viewname='metadata:metadata_type_list'
)
def get_extra_context(self):
return {
@@ -620,7 +638,7 @@ class MetadataTypeListView(SingleObjectListView):
return {
'hide_object': True,
'no_results_icon': icon_metadata,
'no_results_main_link': link_setup_metadata_type_create.resolve(
'no_results_main_link': link_metadata_type_create.resolve(
context=RequestContext(request=self.request)
),
'no_results_text': _(
@@ -667,7 +685,7 @@ class SetupDocumentTypeMetadataTypes(FormView):
return {
'form_display_mode_table': True,
'no_results_icon': icon_metadata,
'no_results_main_link': link_setup_metadata_type_create.resolve(
'no_results_main_link': link_metadata_type_create.resolve(
context=RequestContext(request=self.request)
),
'no_results_text': _(
@@ -745,4 +763,4 @@ class SetupMetadataTypesDocumentTypes(SetupDocumentTypeMetadataTypes):
return initial
def get_post_action_redirect(self):
return reverse('metadata:setup_metadata_type_list')
return reverse(viewname='metadata:metadata_type_list')

View File

@@ -4,4 +4,8 @@ from mayan.apps.appearance.classes import Icon
icon_permission = Icon(driver_name='fontawesome', symbol='thumbs-up')
icon_role_create = Icon(driver_name='fontawesome', symbol='plus')
icon_role_delete = Icon(driver_name='fontawesome', symbol='times')
icon_role_edit = Icon(driver_name='fontawesome', symbol='pencil-alt')
icon_role_groups = Icon(driver_name='fontawesome', symbol='users')
icon_role_list = Icon(driver_name='fontawesome', symbol='user-secret')
icon_role_permissions = Icon(driver_name='fontawesome', symbol='thumbs-up')

View File

@@ -6,7 +6,10 @@ from mayan.apps.navigation import Link
from mayan.apps.user_management.icons import icon_group
from mayan.apps.user_management.permissions import permission_group_edit
from .icons import icon_permission, icon_role_create, icon_role_list
from .icons import (
icon_permission, icon_role_create, icon_role_delete, icon_role_edit,
icon_role_groups, icon_role_list, icon_role_permissions
)
from .permissions import (
permission_permission_grant, permission_permission_revoke,
permission_role_create, permission_role_delete, permission_role_edit,
@@ -31,11 +34,13 @@ link_role_create = Link(
text=_('Create new role'), view='permissions:role_create'
)
link_role_delete = Link(
args='object.id', permissions=(permission_role_delete,), tags='dangerous',
text=_('Delete'), view='permissions:role_delete',
args='object.id', icon_class=icon_role_delete,
permissions=(permission_role_delete,), tags='dangerous', text=_('Delete'),
view='permissions:role_delete',
)
link_role_edit = Link(
args='object.id', permissions=(permission_role_edit,), text=_('Edit'),
args='object.id', icon_class=icon_role_edit,
permissions=(permission_role_edit,), text=_('Edit'),
view='permissions:role_edit',
)
link_role_list = Link(
@@ -43,12 +48,12 @@ link_role_list = Link(
text=_('Roles'), view='permissions:role_list'
)
link_role_groups = Link(
args='object.id', icon_class=icon_group,
args='object.id', icon_class=icon_role_groups,
permissions=(permission_role_edit,), text=_('Groups'),
view='permissions:role_groups',
)
link_role_permissions = Link(
args='object.id', icon_class=icon_permission,
args='object.id', icon_class=icon_role_permissions,
permissions=(permission_permission_grant, permission_permission_revoke),
text=_('Role permissions'), view='permissions:role_permissions',
)

View File

@@ -2,10 +2,31 @@ from __future__ import absolute_import, unicode_literals
from mayan.apps.appearance.classes import Icon
icon_menu_tags = Icon(driver_name='fontawesome', symbol='tag')
icon_tag_attach = Icon(driver_name='fontawesome', symbol='plus')
icon_tag_create = Icon(driver_name='fontawesome', symbol='plus')
icon_menu_tags = Icon(driver_name='fontawesome', symbol='tags')
icon_multiple_documents_tag_attach = Icon(
driver_name='fontawesome-dual', primary_symbol='tag',
secondary_symbol='arrow-right'
)
icon_multiple_documents_tag_remove = Icon(
driver_name='fontawesome-dual', primary_symbol='tag',
secondary_symbol='minus'
)
icon_tag_attach = Icon(
driver_name='fontawesome-dual', primary_symbol='tag',
secondary_symbol='arrow-right'
)
icon_tag_create = Icon(
driver_name='fontawesome-dual', primary_symbol='tag',
secondary_symbol='plus'
)
icon_tag_delete = Icon(driver_name='fontawesome', symbol='times')
icon_tag_edit = Icon(driver_name='fontawesome', symbol='pen')
icon_tag_delete_submit = Icon(driver_name='fontawesome', symbol='times')
icon_tag_document_list = Icon(driver_name='fontawesome', symbol='tag')
icon_tag_list = Icon(driver_name='fontawesome', symbol='tag')
icon_tag_document_list = Icon(driver_name='fontawesome', symbol='tags')
icon_tag_list = Icon(driver_name='fontawesome', symbol='tags')
icon_tag_multiple_delete = Icon(driver_name='fontawesome', symbol='times')
icon_tag_remove = Icon(
driver_name='fontawesome-dual', primary_symbol='tag',
secondary_symbol='minus'
)
icon_tag_remove_submit = Icon(driver_name='fontawesome', symbol='minus')

View File

@@ -6,7 +6,10 @@ from mayan.apps.documents.icons import icon_document_list
from mayan.apps.navigation import Link, get_cascade_condition
from .icons import (
icon_tag_attach, icon_tag_create, icon_tag_document_list, icon_tag_list
icon_multiple_documents_tag_attach, icon_multiple_documents_tag_remove,
icon_tag_attach, icon_tag_create, icon_tag_delete, icon_tag_edit,
icon_tag_document_list, icon_tag_list, icon_tag_multiple_delete,
icon_tag_remove
)
from .permissions import (
permission_tag_attach, permission_tag_create, permission_tag_delete,
@@ -20,14 +23,17 @@ link_document_tag_list = Link(
view='tags:document_tags',
)
link_multiple_documents_tag_remove = Link(
text=_('Remove tag'), view='tags:multiple_documents_selection_tag_remove'
icon_class=icon_multiple_documents_tag_remove, text=_('Remove tag'),
view='tags:multiple_documents_selection_tag_remove'
)
link_multiple_documents_attach_tag = Link(
text=_('Attach tags'), view='tags:multiple_documents_tag_attach'
icon_class=icon_multiple_documents_tag_attach, text=_('Attach tags'),
view='tags:multiple_documents_tag_attach'
)
link_single_document_multiple_tag_remove = Link(
args='object.id', permissions=(permission_tag_remove,),
text=_('Remove tags'), view='tags:single_document_multiple_tag_remove',
args='object.id', icon_class=icon_tag_remove,
permissions=(permission_tag_remove,), text=_('Remove tags'),
view='tags:single_document_multiple_tag_remove',
)
link_tag_attach = Link(
args='object.pk', icon_class=icon_tag_attach,
@@ -39,12 +45,13 @@ link_tag_create = Link(
text=_('Create new tag'), view='tags:tag_create'
)
link_tag_delete = Link(
args='object.id', permissions=(permission_tag_delete,), tags='dangerous',
text=_('Delete'), view='tags:tag_delete',
args='object.id', icon_class=icon_tag_delete,
permissions=(permission_tag_delete,), tags='dangerous', text=_('Delete'),
view='tags:tag_delete',
)
link_tag_edit = Link(
args='object.id', permissions=(permission_tag_edit,), text=_('Edit'),
view='tags:tag_edit',
args='object.id', icon_class=icon_tag_edit,
permissions=(permission_tag_edit,), text=_('Edit'), view='tags:tag_edit',
)
link_tag_list = Link(
condition=get_cascade_condition(
@@ -53,8 +60,8 @@ link_tag_list = Link(
), icon_class=icon_tag_list, text=_('All'), view='tags:tag_list'
)
link_tag_multiple_delete = Link(
permissions=(permission_tag_delete,), text=_('Delete'),
view='tags:tag_multiple_delete'
icon_class=icon_tag_multiple_delete, permissions=(permission_tag_delete,),
text=_('Delete'), view='tags:tag_multiple_delete'
)
link_tag_tagged_item_list = Link(
args='object.id', icon_class=icon_document_list, text=('Documents'),

View File

@@ -91,25 +91,32 @@ class UserManagementApp(MayanAppConfig):
)
)
SourceColumn(attribute='name', is_identifier=True, source=Group)
SourceColumn(
attribute='name', is_identifier=True, is_sortable=True,
label=_('Name'), source=Group
)
SourceColumn(
attribute='user_set.count', label=_('Users'), source=Group
)
SourceColumn(
attribute='username', is_absolute_url=True, is_identifier=True,
label=_('Username'), source=User
is_sortable=True, label=_('Username'), source=User
)
SourceColumn(
attribute='get_full_name', label=_('Full name'), source=User
)
SourceColumn(attribute='email', label=_('Email'), source=User)
SourceColumn(
attribute='is_active', label=_('Active'), source=User,
widget=TwoStateWidget
attribute='first_name', is_sortable=True, label=_('First name'),
source=User
)
SourceColumn(
attribute='has_usable_password', source=User, widget=TwoStateWidget
attribute='last_name', is_sortable=True, label=_('Last name'),
source=User
)
SourceColumn(
attribute='email', is_sortable=True, label=_('Email'), source=User
)
SourceColumn(
attribute='is_active', is_sortable=True, label=_('Active'),
source=User, widget=TwoStateWidget
)
SourceColumn(
attribute='has_usable_password', label=_('Has usable password?'),

View File

@@ -6,7 +6,17 @@ icon_current_user_details = Icon(driver_name='fontawesome', symbol='user')
icon_current_user_edit = Icon(driver_name='fontawesome', symbol='user')
icon_group = Icon(driver_name='fontawesome', symbol='users')
icon_group_create = Icon(driver_name='fontawesome', symbol='plus')
icon_group_delete = Icon(driver_name='fontawesome', symbol='times')
icon_group_edit = Icon(driver_name='fontawesome', symbol='pencil-alt')
icon_group_list = Icon(driver_name='fontawesome', symbol='users')
icon_group_members = Icon(driver_name='fontawesome', symbol='user')
icon_group_setup = Icon(driver_name='fontawesome', symbol='users')
icon_user_create = Icon(driver_name='fontawesome', symbol='plus')
icon_user_delete = Icon(driver_name='fontawesome', symbol='times')
icon_user_edit = Icon(driver_name='fontawesome', symbol='pencil-alt')
icon_user_list = Icon(driver_name='fontawesome', symbol='user')
icon_user_multiple_delete = icon_user_delete
icon_user_set_options = Icon(driver_name='fontawesome', symbol='cog')
icon_user_set_password = Icon(driver_name='fontawesome', symbol='key')
icon_user_setup = Icon(driver_name='fontawesome', symbol='user')
icon_user_multiple_set_password = icon_user_set_password

View File

@@ -6,8 +6,11 @@ from mayan.apps.navigation import Link, Separator, Text
from .icons import (
icon_current_user_details, icon_current_user_edit, icon_group,
icon_group_create, icon_group_members, icon_group_setup, icon_user_create,
icon_user_setup
icon_group_create, icon_group_delete, icon_group_edit, icon_group_list,
icon_group_members, icon_group_setup, icon_user_create, icon_user_delete,
icon_user_edit, icon_user_list, icon_user_multiple_delete,
icon_user_multiple_set_password, icon_user_set_options,
icon_user_set_password, icon_user_setup
)
from .permissions import (
permission_group_create, permission_group_delete, permission_group_edit,
@@ -35,15 +38,18 @@ link_group_create = Link(
text=_('Create new group'), view='user_management:group_create'
)
link_group_delete = Link(
args='object.id', permissions=(permission_group_delete,), tags='dangerous',
args='object.id', icon_class=icon_group_delete,
permissions=(permission_group_delete,), tags='dangerous',
text=_('Delete'), view='user_management:group_delete',
)
link_group_edit = Link(
args='object.id', permissions=(permission_group_edit,), text=_('Edit'),
args='object.id', icon_class=icon_group_edit,
permissions=(permission_group_edit,), text=_('Edit'),
view='user_management:group_edit',
)
link_group_list = Link(
permissions=(permission_group_view,), text=_('Groups'),
icon_class=icon_group_list, permissions=(permission_group_view,),
text=_('Groups'),
view='user_management:group_list'
)
link_group_members = Link(
@@ -60,11 +66,13 @@ link_user_create = Link(
text=_('Create new user'), view='user_management:user_create'
)
link_user_delete = Link(
args='object.id', permissions=(permission_user_delete,), tags='dangerous',
text=_('Delete'), view='user_management:user_delete',
args='object.id', icon_class=icon_user_delete,
permissions=(permission_user_delete,), tags='dangerous', text=_('Delete'),
view='user_management:user_delete',
)
link_user_edit = Link(
args='object.id', permissions=(permission_user_edit,), text=_('Edit'),
args='object.id', icon_class=icon_user_edit,
permissions=(permission_user_edit,), text=_('Edit'),
view='user_management:user_edit',
)
link_user_groups = Link(
@@ -73,24 +81,28 @@ link_user_groups = Link(
text=_('Groups'), view='user_management:user_groups',
)
link_user_list = Link(
permissions=(permission_user_view,), text=_('Users'),
view='user_management:user_list'
icon_class=icon_user_list, permissions=(permission_user_view,),
text=_('Users'), view='user_management:user_list'
)
link_user_multiple_delete = Link(
icon_class=icon_user_multiple_delete,
permissions=(permission_user_delete,), tags='dangerous', text=_('Delete'),
view='user_management:user_multiple_delete'
)
link_user_multiple_set_password = Link(
icon_class=icon_user_multiple_set_password,
permissions=(permission_user_edit,), text=_('Set password'),
view='user_management:user_multiple_set_password'
)
link_user_set_options = Link(
args='object.id', permissions=(permission_user_edit,),
text=_('User options'), view='user_management:user_options',
args='object.id', icon_class=icon_user_set_options,
permissions=(permission_user_edit,), text=_('User options'),
view='user_management:user_options',
)
link_user_set_password = Link(
args='object.id', permissions=(permission_user_edit,),
text=_('Set password'), view='user_management:user_set_password',
args='object.id', icon_class=icon_user_set_password,
permissions=(permission_user_edit,), text=_('Set password'),
view='user_management:user_set_password',
)
link_user_setup = Link(
icon_class=icon_user_setup, permissions=(permission_user_view,),