Converted apps to the new main menu navigation method and improved navigation links in some apps

This commit is contained in:
Roberto Rosario
2011-06-08 01:26:50 -04:00
parent 2a2c67de4e
commit 8fa4f641e4
11 changed files with 63 additions and 65 deletions

View File

@@ -1,6 +1,6 @@
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from navigation.api import register_menu from navigation.api import register_top_menu
from permissions.api import register_permission, set_namespace_title from permissions.api import register_permission, set_namespace_title
from main.api import register_tool from main.api import register_tool
@@ -13,9 +13,7 @@ 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_list = {'text': _(u'index list'), 'view': 'index_instance_list', 'famfam': 'folder_page', 'permissions': [PERMISSION_DOCUMENT_INDEXING_VIEW]}
register_menu([ register_top_menu('indexes', link={'text': _('indexes'), 'famfam': 'folder_page', 'view': 'index_instance_list'}, children_path_regex=[r'^document_indexing'], position=10)
{'text': _('indexes'), 'view': 'index_instance_list', 'links': [
], 'famfam': 'folder_page', 'position': 2, 'permissions': [PERMISSION_DOCUMENT_INDEXING_VIEW]}])
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.')} 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.')}

View File

@@ -2,7 +2,7 @@ from django.utils.translation import ugettext_lazy as _
from django.core.urlresolvers import reverse from django.core.urlresolvers import reverse
from django.conf import settings from django.conf import settings
from navigation.api import register_links, register_menu, \ from navigation.api import register_links, register_top_menu, \
register_model_list_columns, register_multi_item_links register_model_list_columns, register_multi_item_links
from main.api import register_diagnostic, register_tool from main.api import register_diagnostic, register_tool
from permissions.api import register_permission, set_namespace_title from permissions.api import register_permission, set_namespace_title
@@ -39,7 +39,6 @@ register_history_type(HISTORY_DOCUMENT_DELETED)
document_list = {'text': _(u'documents list'), 'view': 'document_list', 'famfam': 'page', 'permissions': [PERMISSION_DOCUMENT_VIEW]} document_list = {'text': _(u'documents list'), 'view': 'document_list', 'famfam': 'page', 'permissions': [PERMISSION_DOCUMENT_VIEW]}
document_list_recent = {'text': _(u'recent documents list'), 'view': 'document_list_recent', 'famfam': 'page', 'permissions': [PERMISSION_DOCUMENT_VIEW]} document_list_recent = {'text': _(u'recent documents list'), 'view': 'document_list_recent', 'famfam': 'page', 'permissions': [PERMISSION_DOCUMENT_VIEW]}
document_create = {'text': _(u'upload a new document'), 'view': 'document_create', 'famfam': 'page_add', 'permissions': [PERMISSION_DOCUMENT_CREATE]}
document_create_multiple = {'text': _(u'upload new documents'), 'view': 'document_create_multiple', 'famfam': 'page_add', 'permissions': [PERMISSION_DOCUMENT_CREATE]} document_create_multiple = {'text': _(u'upload new documents'), 'view': 'document_create_multiple', 'famfam': 'page_add', 'permissions': [PERMISSION_DOCUMENT_CREATE]}
document_create_siblings = {'text': _(u'upload new documents using same metadata'), 'view': 'document_create_siblings', 'args': 'object.id', 'famfam': 'page_copy', 'permissions': [PERMISSION_DOCUMENT_CREATE]} document_create_siblings = {'text': _(u'upload new documents using same metadata'), 'view': 'document_create_siblings', 'args': 'object.id', 'famfam': 'page_copy', 'permissions': [PERMISSION_DOCUMENT_CREATE]}
document_view_simple = {'text': _(u'details (simple)'), 'view': 'document_view_simple', 'args': 'object.id', 'famfam': 'page', 'permissions': [PERMISSION_DOCUMENT_VIEW]} document_view_simple = {'text': _(u'details (simple)'), 'view': 'document_view_simple', 'args': 'object.id', 'famfam': 'page', 'permissions': [PERMISSION_DOCUMENT_VIEW]}
@@ -90,7 +89,7 @@ register_links(Document, [document_create_siblings], menu_name='sidebar')
register_multi_item_links(['search', 'results', 'document_group_view', 'document_list', 'document_list_recent'], [document_multiple_clear_transformations, document_multiple_delete]) register_multi_item_links(['search', 'results', 'document_group_view', 'document_list', 'document_list_recent'], [document_multiple_clear_transformations, document_multiple_delete])
register_links(['document_list_recent', 'document_list', 'document_create', 'document_create_multiple', 'upload_document', 'upload_document_from_local', 'upload_document_from_staging', 'upload_document_from_user_staging'], [document_list_recent, document_list, document_create_multiple], menu_name='sidebar') register_links(['document_list_recent', 'document_list', 'document_create', 'document_create_multiple', 'upload_document', 'upload_document_from_local', 'upload_document_from_staging', 'upload_document_from_user_staging', 'document_find_duplicates'], [document_list_recent, document_list, document_create_multiple], menu_name='secondary_menu')
register_links(DocumentPage, [ register_links(DocumentPage, [
document_page_transformation_list, document_page_view, document_page_transformation_list, document_page_view,
@@ -146,7 +145,4 @@ register_model_list_columns(Document, [
}, },
]) ])
register_menu([ register_top_menu('documents', link={'famfam': 'folder', 'text': _(u'documents'), 'view': 'document_list_recent'}, children_path_regex=[r'^documents/', r'^metadata/', r'comments'], position=0)
{'text': _(u'documents'), 'view': 'document_list_recent', 'links': [
document_list_recent, document_list, document_create_multiple
], 'famfam': 'page', 'position': 1}])

View File

@@ -1,6 +1,6 @@
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from navigation.api import register_links, register_menu, \ from navigation.api import register_links, register_top_menu, \
register_multi_item_links register_multi_item_links
from navigation.api import register_sidebar_template from navigation.api import register_sidebar_template
@@ -11,16 +11,14 @@ folder_create = {'text': _('create folder'), 'view': 'folder_create', 'famfam':
folder_edit = {'text': _('edit'), 'view': 'folder_edit', 'args': 'object.id', 'famfam': 'folder_edit'} folder_edit = {'text': _('edit'), 'view': 'folder_edit', 'args': 'object.id', 'famfam': 'folder_edit'}
folder_delete = {'text': _('delete'), 'view': 'folder_delete', 'args': 'object.id', 'famfam': 'folder_delete'} folder_delete = {'text': _('delete'), 'view': 'folder_delete', 'args': 'object.id', 'famfam': 'folder_delete'}
folder_document_multiple_remove = {'text': _('remove'), 'view': 'folder_document_multiple_remove', 'famfam': 'delete'} folder_document_multiple_remove = {'text': _('remove'), 'view': 'folder_document_multiple_remove', 'famfam': 'delete'}
folder_view = {'text': _(u'folder documents'), 'view': 'folder_view', 'args': 'object.id', 'famfam': 'folder_go'}
register_multi_item_links(['folder_view'], [folder_document_multiple_remove]) register_multi_item_links(['folder_view'], [folder_document_multiple_remove])
register_links(Folder, [folder_edit, folder_delete]) register_links(Folder, [folder_view, folder_edit, folder_delete])
register_links(['folder_edit', 'folder_delete', 'folder_list', 'folder_create'], [folder_list, folder_create], menu_name='sidebar') register_links(['folder_edit', 'folder_delete', 'folder_list', 'folder_create', 'folder_view'], [folder_list, folder_create], menu_name='secondary_menu')
register_menu([ register_top_menu(name='folders', link={'text': _('folders'), 'famfam': 'folder_user', 'view': 'folder_list'}, children_path_regex=[r'^folders/'])
{'text': _('folders'), 'view': 'folder_list', 'links': [
folder_list, folder_create
], 'famfam': 'folder_user', 'position': 2}])
register_sidebar_template(['document_view_advanced', 'document_view_simple'], 'folders_sidebar_template.html') register_sidebar_template(['document_view_advanced', 'document_view_simple'], 'folders_sidebar_template.html')

View File

@@ -74,6 +74,7 @@ def folder_edit(request, folder_id):
'title': _(u'edit folder: %s') % folder, 'title': _(u'edit folder: %s') % folder,
'form': form, 'form': form,
'object': folder, 'object': folder,
'object_name': _(u'folder'),
}, },
context_instance=RequestContext(request)) context_instance=RequestContext(request))

View File

@@ -1,6 +1,6 @@
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from navigation.api import register_links, register_menu from navigation.api import register_links
from permissions.api import register_permission, set_namespace_title from permissions.api import register_permission, set_namespace_title
PERMISSION_HISTORY_VIEW = {'namespace': 'history', 'name': u'history_view', 'label': _(u'Access the history app')} PERMISSION_HISTORY_VIEW = {'namespace': 'history', 'name': u'history_view', 'label': _(u'Access the history app')}
@@ -11,4 +11,4 @@ register_permission(PERMISSION_HISTORY_VIEW)
# TODO: support permissions AND operand # TODO: support permissions AND operand
history_list = {'text': _(u'history'), 'view': 'history_list', 'famfam': 'book', 'permissions': [PERMISSION_HISTORY_VIEW]} history_list = {'text': _(u'history'), 'view': 'history_list', 'famfam': 'book', 'permissions': [PERMISSION_HISTORY_VIEW]}
register_links(['history_list'], [history_list], menu_name='sidebar') #register_links(['history_view'], [history_list], menu_name='sidebar')

View File

@@ -1,8 +1,8 @@
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from navigation.api import register_menu from navigation.api import register_top_menu
from permissions import role_list from permissions import role_list, permission_views
from user_management import user_list, group_list from user_management import user_list, group_list, user_management_views
from navigation.api import register_links from navigation.api import register_links
from history import history_list from history import history_list
@@ -15,7 +15,7 @@ def is_superuser(context):
check_settings = {'text': _(u'settings'), 'view': 'setting_list', 'famfam': 'cog'} check_settings = {'text': _(u'settings'), 'view': 'setting_list', 'famfam': 'cog'}
statistics = {'text': _(u'statistics'), 'view': 'statistics', 'famfam': 'table'} statistics = {'text': _(u'statistics'), 'view': 'statistics', 'famfam': 'table'}
diagnostics = {'text': _(u'diagnostics'), 'view': 'diagnostics', 'famfam': 'pill'} diagnostics = {'text': _(u'diagnostics'), 'view': 'diagnostics', 'famfam': 'pill'}
tools = {'text': _(u'tools'), 'view': 'tools_menu', 'famfam': 'wrench'} tools_menu = {'text': _(u'tools'), 'view': 'tools_menu', 'famfam': 'wrench'}
admin_site = {'text': _(u'admin site'), 'url': '/admin', 'famfam': 'keyboard', 'condition': is_superuser} admin_site = {'text': _(u'admin site'), 'url': '/admin', 'famfam': 'keyboard', 'condition': is_superuser}
sentry = {'text': _(u'sentry'), 'url': '/sentry', 'famfam': 'bug', 'condition': is_superuser} sentry = {'text': _(u'sentry'), 'url': '/sentry', 'famfam': 'bug', 'condition': is_superuser}
@@ -23,31 +23,30 @@ sentry = {'text': _(u'sentry'), 'url': '/sentry', 'famfam': 'bug', 'condition':
__version_info__ = { __version_info__ = {
'major': 0, 'major': 0,
'minor': 7, 'minor': 7,
'micro': 1, 'micro': 2,
'releaselevel': 'final', 'releaselevel': 'final',
'serial': 0 'serial': 0
} }
main_menu = [ #setup_views = []
{'text': _(u'home'), 'view': 'home', 'famfam': 'house', 'position': 0}, #setup_views.extend(permission_views)
{'text': _(u'tools'), 'view': 'tools_menu', 'links': [ #setup_views.extend(user_management_views)
tools, statistics, diagnostics, history_list, sentry, #setup_views.extend(['setting_list'])
], 'famfam': 'wrench', 'name': 'tools', 'position': 7},
{'text': _(u'setup'), 'view': 'setting_list', 'links': [
check_settings, role_list, user_list, group_list, admin_site
], 'famfam': 'cog', 'name': 'setup', 'position': 8},
{'text': _(u'about'), 'view': 'about', 'famfam': 'information', 'position': 9},
]
register_top_menu('home', link={'text': _(u'home'), 'view': 'home', 'famfam': 'house'}, position=0)
if not SIDE_BAR_SEARCH: if not SIDE_BAR_SEARCH:
main_menu.insert(1, {'text': _(u'search'), 'view': 'search', 'famfam': 'zoom', 'position': 2}) register_top_menu('search', link={'text': _(u'search'), 'view': 'search', 'famfam': 'zoom'})
register_top_menu('tools', link=tools_menu, children_views=['statistics', 'history_list'])
#register_top_menu('setup_menu', link={'text': _(u'setup'), 'view': 'setting_list', 'famfam': 'cog'}, children=setup_views)
register_top_menu('setup_menu', link={'text': _(u'setup'), 'view': 'setting_list', 'famfam': 'cog'}, children_path_regex=[r'^settings/', r'^user_management/', r'permissions'])
register_top_menu('about', link={'text': _(u'about'), 'view': 'about', 'famfam': 'information'})
register_menu(main_menu) register_links(['tools_menu', 'statistics', 'history_list', 'history_view'], [tools_menu, statistics, history_list, sentry], menu_name='secondary_menu')
register_links(['tools_menu', 'statistics', 'diagnostics', 'history_list'], [tools, statistics, diagnostics, history_list, sentry], menu_name='sidebar') tool_links = [check_settings, role_list, user_list, group_list, admin_site]
#register_links(['setting_list'], [check_settings, role_list, user_list, group_list, admin_site], menu_name='sidebar') register_links(['setting_list'], tool_links, menu_name='secondary_menu')
register_links(permission_views, tool_links, menu_name='secondary_menu')
register_links(user_management_views, tool_links, menu_name='secondary_menu')
def get_version(): def get_version():

View File

@@ -3,7 +3,7 @@ from django.utils.translation import ugettext
from django.db.utils import DatabaseError from django.db.utils import DatabaseError
from django.db.models.signals import post_save from django.db.models.signals import post_save
from navigation.api import register_links, register_menu, register_multi_item_links from navigation.api import register_links, register_top_menu, register_multi_item_links
from permissions.api import register_permission, set_namespace_title from permissions.api import register_permission, set_namespace_title
from documents.models import Document from documents.models import Document
from main.api import register_tool from main.api import register_tool
@@ -43,17 +43,13 @@ register_links(DocumentQueue, [document_queue_disable, document_queue_enable])
register_multi_item_links(['queue_document_list'], [re_queue_multiple_document, queue_document_multiple_delete]) register_multi_item_links(['queue_document_list'], [re_queue_multiple_document, queue_document_multiple_delete])
register_links(['queue_document_list', 'node_active_list'], [queue_document_list, node_active_list], menu_name='sidebar') register_links(['queue_document_list', 'node_active_list'], [queue_document_list, node_active_list], menu_name='secondary_menu')
register_tool(all_document_ocr_cleanup, namespace='ocr', title=_(u'OCR')) register_tool(all_document_ocr_cleanup, namespace='ocr', title=_(u'OCR'))
#Menus #Menus
register_menu([ register_top_menu('ocr', link={'text': _('OCR'), 'famfam': 'hourglass', 'view': 'queue_document_list'}, children_path_regex=[r'^ocr/'])
{'text': _('OCR'), 'view': 'queue_document_list', 'links':[
queue_document_list, node_active_list
], 'famfam': 'hourglass', 'position': 5}])
try: try:
default_queue, created = DocumentQueue.objects.get_or_create(name='default') default_queue, created = DocumentQueue.objects.get_or_create(name='default')

View File

@@ -24,8 +24,9 @@ role_permissions = {'text': _(u'role permissions'), 'view': 'role_permissions',
role_delete = {'text': _(u'delete'), 'view': 'role_delete', 'args': 'object.id', 'famfam': 'medal_gold_delete', 'permissions': [PERMISSION_ROLE_DELETE]} role_delete = {'text': _(u'delete'), 'view': 'role_delete', 'args': 'object.id', 'famfam': 'medal_gold_delete', 'permissions': [PERMISSION_ROLE_DELETE]}
register_links(Role, [role_edit, role_delete, role_permissions, role_members]) register_links(Role, [role_edit, role_delete, role_permissions, role_members])
register_links(['role_members', 'role_list', 'role_view', 'role_create', 'role_edit', 'role_permissions', 'role_delete'], [role_create, role_list], menu_name='sidebar') register_links(['role_members', 'role_list', 'role_view', 'role_create', 'role_edit', 'role_permissions', 'role_delete'], [role_create], menu_name='sidebar')
permission_views = ['role_list', 'role_create', 'role_edit', 'role_members', 'role_permissions', 'role_delete']
def user_post_save(sender, instance, **kwargs): def user_post_save(sender, instance, **kwargs):
if kwargs.get('created', False): if kwargs.get('created', False):

View File

@@ -1,6 +1,6 @@
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from navigation.api import register_links, register_menu, \ from navigation.api import register_links, register_top_menu, \
register_model_list_columns, register_multi_item_links register_model_list_columns, register_multi_item_links
from permissions.api import register_permission, set_namespace_title from permissions.api import register_permission, set_namespace_title
from navigation.api import register_sidebar_template from navigation.api import register_sidebar_template
@@ -20,11 +20,11 @@ register_permission(PERMISSION_TAG_REMOVE)
register_permission(PERMISSION_TAG_DELETE) register_permission(PERMISSION_TAG_DELETE)
register_permission(PERMISSION_TAG_EDIT) register_permission(PERMISSION_TAG_EDIT)
tag_list = {'text': _(u'tags'), 'view': 'tag_list', 'famfam': 'tag_blue'} tag_list = {'text': _(u'tag list'), 'view': 'tag_list', 'famfam': 'tag_blue'}
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 = {'text': _(u'remove'), 'view': 'tag_remove', 'args': ['object.id', 'document.id'], 'famfam': 'tag_blue_delete', 'permissions': [PERMISSION_TAG_REMOVE]}
tag_delete = {'text': _(u'delete'), 'view': 'tag_delete', 'args': 'object.id', 'famfam': 'tag_blue_delete', 'permissions': [PERMISSION_TAG_DELETE]} 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_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': 'tag_blue'} tag_tagged_item_list = {'text': _(u'tagged documents'), 'view': 'tag_tagged_item_list', 'args': 'object.id', 'famfam': 'page'}
tag_multiple_delete = {'text': _(u'delete'), 'view': 'tag_multiple_delete', 'famfam': 'tag_blue_delete', 'permissions': [PERMISSION_TAG_DELETE]} tag_multiple_delete = {'text': _(u'delete'), 'view': 'tag_multiple_delete', 'famfam': 'tag_blue_delete', 'permissions': [PERMISSION_TAG_DELETE]}
register_model_list_columns(Tag, [ register_model_list_columns(Tag, [
@@ -39,17 +39,12 @@ register_model_list_columns(Tag, [
} }
]) ])
register_links(Tag, [tag_tagged_item_list, tag_edit]) register_links(Tag, [tag_tagged_item_list, tag_edit, tag_delete])
register_multi_item_links(['tag_list'], [tag_multiple_delete]) register_multi_item_links(['tag_list'], [tag_multiple_delete])
register_links(['tag_list', 'tag_remove', 'tag_delete', 'tag_edit', 'tag_tagged_item_list', 'tag_multiple_delete'], [tag_list], menu_name='secondary_menu')
register_sidebar_template(['document_view_advanced', 'document_view_simple'], 'tags_sidebar_template.html') register_sidebar_template(['document_view_advanced', 'document_view_simple'], 'tags_sidebar_template.html')
tags_menu = [ register_top_menu('tags', link={'text': _(u'tags'), 'view': 'tag_list', 'famfam': 'tag_blue'}, children_path_regex=[r'^tags/'])
{
'text': _(u'tags'), 'view': 'tag_list', 'famfam': 'tag_blue', 'position': 4, 'links': [
tag_list
]
},
]
register_menu(tags_menu)

View File

@@ -168,4 +168,11 @@ def tag_tagged_item_list(request, tag_id):
tag = get_object_or_404(Tag, pk=tag_id) tag = get_object_or_404(Tag, pk=tag_id)
object_list = [tagged_item.content_object for tagged_item in tag.taggit_taggeditem_items.all()] object_list = [tagged_item.content_object for tagged_item in tag.taggit_taggeditem_items.all()]
return document_list(request, object_list=object_list, title=_('documents with the tag "%s"') % tag) return document_list(
request,
object_list=object_list,
title=_('documents with the tag "%s"') % tag,
extra_context={
'object': tag
}
)

View File

@@ -40,9 +40,16 @@ group_multiple_delete = {u'text': _('delete'), 'view': 'group_multiple_delete',
group_members = {'text': _(u'members'), 'view': 'group_members', 'args': 'object.id', 'famfam': 'group_link', 'permissions': [PERMISSION_GROUP_EDIT]} group_members = {'text': _(u'members'), 'view': 'group_members', 'args': 'object.id', 'famfam': 'group_link', 'permissions': [PERMISSION_GROUP_EDIT]}
register_links(User, [user_edit, user_set_password, user_delete]) register_links(User, [user_edit, user_set_password, user_delete])
register_links(['user_multiple_set_password', 'user_set_password', 'user_multiple_delete', 'user_delete', 'user_edit', 'user_list', 'user_add'], [user_add, user_list], menu_name=u'sidebar') register_links(['user_multiple_set_password', 'user_set_password', 'user_multiple_delete', 'user_delete', 'user_edit', 'user_list', 'user_add'], [user_add], menu_name=u'sidebar')
register_multi_item_links(['user_list'], [user_multiple_set_password, user_multiple_delete]) register_multi_item_links(['user_list'], [user_multiple_set_password, user_multiple_delete])
register_links(Group, [group_edit, group_members, group_delete]) register_links(Group, [group_edit, group_members, group_delete])
register_links(['group_multiple_delete', 'group_delete', 'group_edit', 'group_list', 'group_add', 'group_members'], [group_add, group_list], menu_name=u'sidebar') register_links(['group_multiple_delete', 'group_delete', 'group_edit', 'group_list', 'group_add', 'group_members'], [group_add], menu_name=u'sidebar')
register_multi_item_links(['group_list'], [group_multiple_delete]) register_multi_item_links(['group_list'], [group_multiple_delete])
user_management_views = [
'user_list', 'user_edit', 'user_add', 'user_delete',
'user_multiple_delete', 'user_set_password',
'user_multiple_set_password', 'group_list', 'group_edit', 'group_add',
'group_delete', 'group_multiple_delete', 'group_members'
]