Finish updating and reenabling metadata app

This commit is contained in:
Roberto Rosario
2012-09-11 05:20:35 -04:00
parent 2cb1d7b34c
commit 76b89dfb36
12 changed files with 97 additions and 44 deletions

View File

@@ -60,6 +60,10 @@ ROUTING_TURNAROUND_RIGHT = 'routing_turnaround_right'
SCRIPT = 'script'
STORAGE = 'storage'
TABLE = 'table'
TABLE_ADD = 'table_add'
TABLE_EDIT = 'table_edit'
TABLE_DELETE = 'table_delete'
TABLE_REFRESH = 'table_refresh'
TABLE_RELATIONSHIP = 'table_relationship'
TEXT_DROPCAPS = 'text_dropcaps'
TEXT_STRIKETHROUGH = 'text_strikethrough'
@@ -71,4 +75,8 @@ USER_DELETE = 'user_delete'
VCARD = 'vcard'
VCARD_EDIT = 'vcard_edit'
WRENCH = 'wrench'
XHTML = 'xhtml'
XHTML_GO = 'xhtml_go'
XHTML_ADD = 'xhtml_add'
XHTML_DELETE = 'xhtml_delete'
ZOOM = 'zoom'

View File

@@ -59,6 +59,10 @@ DICTIONARY = {
SCRIPT: 'script.png',
STORAGE: 'storage.png',
TABLE: 'table.png',
TABLE_ADD: 'table_add.png',
TABLE_EDIT: 'table_edit.png',
TABLE_DELETE: 'table_delete.png',
TABLE_REFRESH: 'table_refresh.png',
TABLE_RELATIONSHIP: 'table_relationship.png',
TEXT_DROPCAPS: 'text_dropcaps.png',
TEXT_STRIKETHROUGH: 'text_strikethrough.png',
@@ -70,5 +74,9 @@ DICTIONARY = {
VCARD: 'vcard.png',
VCARD_EDIT: 'vcard_edit.png',
WRENCH: 'wrench.png',
XHTML: 'xhtml.png',
XHTML_GO: 'xhtml_go.png',
XHTML_ADD: 'xhtml_add.png',
XHTML_DELETE: 'xhtml_delete.png',
ZOOM: 'zoom.png',
}

View File

@@ -7,7 +7,6 @@ from common.utils import encapsulate
from documents.models import Document, DocumentType
from navigation.api import (bind_links, register_sidebar_template,
register_model_list_columns, register_multi_item_links)
from project_setup.api import register_setup
from .api import get_metadata_string
from .links import (metadata_edit, metadata_view, metadata_add, metadata_remove,
@@ -40,9 +39,6 @@ metadata_set_setup_views = ['setup_metadata_set_list', 'setup_metadata_set_edit'
register_sidebar_template(['setup_metadata_type_list'], 'metadata_type_help.html')
register_sidebar_template(['setup_metadata_set_list'], 'metadata_set_help.html')
register_setup(setup_metadata_type_list)
register_setup(setup_metadata_set_list)
class_permissions(Document, [
PERMISSION_METADATA_DOCUMENT_EDIT,
PERMISSION_METADATA_DOCUMENT_ADD,

View File

@@ -1,4 +1,7 @@
"""Metadata handling commonalities"""
"""
Metadata handling commonalities
"""
from __future__ import absolute_import
from urllib import unquote_plus

View File

@@ -6,7 +6,7 @@ from django.forms.formsets import formset_factory
from common.widgets import ScrollableCheckboxSelectMultiple
#from .conf.settings import AVAILABLE_MODELS, AVAILABLE_FUNCTIONS
from .settings import AVAILABLE_MODELS, AVAILABLE_FUNCTIONS
from .models import MetadataSet, MetadataType, DocumentTypeDefaults

16
apps/metadata/icons.py Normal file
View File

@@ -0,0 +1,16 @@
from __future__ import absolute_import
from icons.literals import (XHTML, XHTML_GO, XHTML_ADD, XHTML_DELETE, TABLE,
TABLE_ADD, TABLE_EDIT, TABLE_DELETE, TABLE_REFRESH)
from icons import Icon
icon_metadata_view = Icon(XHTML)
icon_metadata_edit = Icon(XHTML_GO)
icon_metadata_add = Icon(XHTML_ADD)
icon_metadata_remove = Icon(XHTML_DELETE)
icon_metadata_sets = Icon(TABLE)
icon_metadata_set_create = Icon(TABLE_ADD)
icon_metadata_set_edit = Icon(TABLE_EDIT)
icon_metadata_set_delete = Icon(TABLE_DELETE)
icon_metadata_set_members = Icon(TABLE_REFRESH)

View File

@@ -13,24 +13,27 @@ from .permissions import (PERMISSION_METADATA_DOCUMENT_EDIT,
PERMISSION_METADATA_TYPE_VIEW, PERMISSION_METADATA_SET_EDIT,
PERMISSION_METADATA_SET_CREATE, PERMISSION_METADATA_SET_DELETE,
PERMISSION_METADATA_SET_VIEW)
from .icons import (icon_metadata_view, icon_metadata_edit, icon_metadata_add,
icon_metadata_remove, icon_metadata_sets, icon_metadata_set_create,
icon_metadata_set_edit, icon_metadata_set_delete, icon_metadata_set_members)
metadata_edit = Link(text=_(u'edit metadata'), view='metadata_edit', args='object.pk', sprite='xhtml_go', permissions=[PERMISSION_METADATA_DOCUMENT_EDIT])
metadata_view = Link(text=_(u'metadata'), view='metadata_view', args='object.pk', sprite='xhtml_go', permissions=[PERMISSION_METADATA_DOCUMENT_VIEW]) # children_view_regex=['metadata'])
metadata_multiple_edit = Link(text=_(u'edit metadata'), view='metadata_multiple_edit', sprite='xhtml_go', permissions=[PERMISSION_METADATA_DOCUMENT_EDIT])
metadata_add = Link(text=_(u'add metadata'), view='metadata_add', args='object.pk', sprite='xhtml_add', permissions=[PERMISSION_METADATA_DOCUMENT_ADD])
metadata_multiple_add = Link(text=_(u'add metadata'), view='metadata_multiple_add', sprite='xhtml_add', permissions=[PERMISSION_METADATA_DOCUMENT_ADD])
metadata_remove = Link(text=_(u'remove metadata'), view='metadata_remove', args='object.pk', sprite='xhtml_delete', permissions=[PERMISSION_METADATA_DOCUMENT_REMOVE])
metadata_multiple_remove = Link(text=_(u'remove metadata'), view='metadata_multiple_remove', sprite='xhtml_delete', permissions=[PERMISSION_METADATA_DOCUMENT_REMOVE])
metadata_view = Link(text=_(u'metadata'), view='metadata_view', args='object.pk', icon=icon_metadata_view, permissions=[PERMISSION_METADATA_DOCUMENT_VIEW]) # children_view_regex=['metadata'])
metadata_edit = Link(text=_(u'edit metadata'), view='metadata_edit', args='object.pk', icon=icon_metadata_edit, permissions=[PERMISSION_METADATA_DOCUMENT_EDIT])
metadata_multiple_edit = Link(text=_(u'edit metadata'), view='metadata_multiple_edit', icon=icon_metadata_edit, permissions=[PERMISSION_METADATA_DOCUMENT_EDIT])
metadata_add = Link(text=_(u'add metadata'), view='metadata_add', args='object.pk', icon=icon_metadata_add, permissions=[PERMISSION_METADATA_DOCUMENT_ADD])
metadata_multiple_add = Link(text=_(u'add metadata'), view='metadata_multiple_add', icon=icon_metadata_add, permissions=[PERMISSION_METADATA_DOCUMENT_ADD])
metadata_remove = Link(text=_(u'remove metadata'), view='metadata_remove', args='object.pk', icon=icon_metadata_remove, permissions=[PERMISSION_METADATA_DOCUMENT_REMOVE])
metadata_multiple_remove = Link(text=_(u'remove metadata'), view='metadata_multiple_remove', icon=icon_metadata_remove, permissions=[PERMISSION_METADATA_DOCUMENT_REMOVE])
setup_metadata_type_list = Link(text=_(u'metadata types'), view='setup_metadata_type_list', sprite='xhtml_go', icon='xhtml.png', permissions=[PERMISSION_METADATA_TYPE_VIEW]) # children_view_regex=[r'setup_metadata_type'])
setup_metadata_type_edit = Link(text=_(u'edit'), view='setup_metadata_type_edit', args='object.pk', sprite='xhtml', permissions=[PERMISSION_METADATA_TYPE_EDIT])
setup_metadata_type_delete = Link(text=_(u'delete'), view='setup_metadata_type_delete', args='object.pk', sprite='xhtml_delete', permissions=[PERMISSION_METADATA_TYPE_DELETE])
setup_metadata_type_create = Link(text=_(u'create new'), view='setup_metadata_type_create', sprite='xhtml_add', permissions=[PERMISSION_METADATA_TYPE_CREATE])
setup_metadata_type_list = Link(text=_(u'metadata types'), view='setup_metadata_type_list', icon=icon_metadata_view, permissions=[PERMISSION_METADATA_TYPE_VIEW]) # children_view_regex=[r'setup_metadata_type'])
setup_metadata_type_edit = Link(text=_(u'edit'), view='setup_metadata_type_edit', args='object.pk', icon=icon_metadata_view, permissions=[PERMISSION_METADATA_TYPE_EDIT])
setup_metadata_type_delete = Link(text=_(u'delete'), view='setup_metadata_type_delete', args='object.pk', icon=icon_metadata_remove, permissions=[PERMISSION_METADATA_TYPE_DELETE])
setup_metadata_type_create = Link(text=_(u'create new'), view='setup_metadata_type_create', icon=icon_metadata_add, permissions=[PERMISSION_METADATA_TYPE_CREATE])
setup_metadata_set_list = Link(text=_(u'metadata sets'), view='setup_metadata_set_list', sprite='table', icon='table.png', permissions=[PERMISSION_METADATA_SET_VIEW]) # children_view_regex=[r'setup_metadata_set'])
setup_metadata_set_edit = Link(text=_(u'edit'), view='setup_metadata_set_edit', args='object.pk', sprite='table_edit', permissions=[PERMISSION_METADATA_SET_EDIT])
setup_metadata_set_delete = Link(text=_(u'delete'), view='setup_metadata_set_delete', args='object.pk', sprite='table_delete', permissions=[PERMISSION_METADATA_SET_DELETE])
setup_metadata_set_create = Link(text=_(u'create new'), view='setup_metadata_set_create', sprite='table_add', permissions=[PERMISSION_METADATA_SET_CREATE])
setup_metadata_set_members = Link(text=_(u'members'), view='setup_metadata_set_members', args='object.pk', sprite='table_refresh', permissions=[PERMISSION_METADATA_SET_EDIT])
setup_metadata_set_list = Link(text=_(u'metadata sets'), view='setup_metadata_set_list', sprite='table', icon=icon_metadata_sets, permissions=[PERMISSION_METADATA_SET_VIEW]) # children_view_regex=[r'setup_metadata_set'])
setup_metadata_set_edit = Link(text=_(u'edit'), view='setup_metadata_set_edit', args='object.pk', icon=icon_metadata_set_edit, permissions=[PERMISSION_METADATA_SET_EDIT])
setup_metadata_set_delete = Link(text=_(u'delete'), view='setup_metadata_set_delete', args='object.pk', icon=icon_metadata_set_delete, permissions=[PERMISSION_METADATA_SET_DELETE])
setup_metadata_set_create = Link(text=_(u'create new'), view='setup_metadata_set_create', icon=icon_metadata_set_create, permissions=[PERMISSION_METADATA_SET_CREATE])
setup_metadata_set_members = Link(text=_(u'members'), view='setup_metadata_set_members', args='object.pk', icon=icon_metadata_set_members, permissions=[PERMISSION_METADATA_SET_EDIT])
setup_document_type_metadata = Link(text=_(u'default metadata'), view='setup_document_type_metadata', args='document_type.pk', sprite='xhtml', permissions=[PERMISSION_DOCUMENT_TYPE_EDIT])
setup_document_type_metadata = Link(text=_(u'default metadata'), view='setup_document_type_metadata', args='document_type.pk', icon=icon_metadata_view, permissions=[PERMISSION_DOCUMENT_TYPE_EDIT])

View File

@@ -7,8 +7,8 @@ from documents.models import Document, DocumentType
#from .settings import (AVAILABLE_MODELS, AVAILABLE_FUNCTIONS)
available_models_string = (_(u' Available models: %s') % u','.join([name for name, model in AVAILABLE_MODELS.items()])) if AVAILABLE_MODELS else u''
available_functions_string = (_(u' Available functions: %s') % u','.join([u'%s()' % name for name, function in AVAILABLE_FUNCTIONS.items()])) if AVAILABLE_FUNCTIONS else u''
#available_models_string = (_(u' Available models: %s') % u','.join([name for name, model in AVAILABLE_MODELS.items()])) if AVAILABLE_MODELS else u''
#available_functions_string = (_(u' Available functions: %s') % u','.join([u'%s()' % name for name, function in AVAILABLE_FUNCTIONS.items()])) if AVAILABLE_FUNCTIONS else u''
class MetadataType(models.Model):
@@ -19,10 +19,12 @@ class MetadataType(models.Model):
title = models.CharField(max_length=48, verbose_name=_(u'title'), blank=True, null=True)
default = models.CharField(max_length=128, blank=True, null=True,
verbose_name=_(u'default'),
help_text=_(u'Enter a string to be evaluated.%s') % available_functions_string)
#help_text=_(u'Enter a string to be evaluated.%s') % available_functions_string)
help_text=_(u'Enter a string to be evaluated.'))
lookup = models.CharField(max_length=128, blank=True, null=True,
verbose_name=_(u'lookup'),
help_text=_(u'Enter a string to be evaluated. Example: [user.get_full_name() for user in User.objects.all()].%s') % available_models_string)
#help_text=_(u'Enter a string to be evaluated. Example: [user.get_full_name() for user in User.objects.all()].%s') % available_models_string)
help_text=_(u'Enter a string to be evaluated. Example: [user.get_full_name() for user in User.objects.all()].'))
#TODO: datatype?
def __unicode__(self):

View File

@@ -0,0 +1,13 @@
from __future__ import absolute_import
from django.utils.translation import ugettext_lazy as _
from .settings import (AVAILABLE_MODELS, AVAILABLE_FUNCTIONS)
from .models import MetadataType
available_models_string = (_(u' Available models: %s') % u','.join([name for name, model in AVAILABLE_MODELS.items()])) if AVAILABLE_MODELS else u''
available_functions_string = (_(u' Available functions: %s') % u','.join([u'%s()' % name for name, function in AVAILABLE_FUNCTIONS.items()])) if AVAILABLE_FUNCTIONS else u''
def init_set_metadata_type_help_texts():
MetadataType._meta.get_field('default').help_text=_(u'Enter a string to be evaluated.%s') % available_functions_string
MetadataType._meta.get_field('lookup').help_text=_(u'Enter a string to be evaluated. Example: [user.get_full_name() for user in User.objects.all()].%s') % available_models_string

View File

@@ -5,6 +5,8 @@ import datetime
from django.utils.translation import ugettext_lazy as _
from django.contrib.auth.models import User
from smart_settings import LocalScope
default_available_functions = {
'current_date': datetime.datetime.now().date,
}
@@ -13,22 +15,24 @@ default_available_models = {
'User': User
}
#from .icons import icon_history_list
#from .links import history_list
from .icons import icon_metadata_view
from .links import setup_metadata_type_list, setup_metadata_set_list
label = _(u'Metadata')
#description = _(u'Handles the events registration and event logging.')
description = _(u'Handles document metadata.')
dependencies = ['app_registry', 'icons', 'navigation', 'documents', 'permissions', 'acls', 'common']
#icon = icon_history_list
#tool_links = [history_list]
"""
app.add_setting(
name=u'AVAILABLE_FUNCTIONS',
default=default_available_functions,
)
icon = icon_metadata_view
settings = [
{
'name': 'AVAILABLE_FUNCTIONS',
'default': default_available_functions,
'scopes': [LocalScope()]
},
{
'name': 'AVAILABLE_MODELS',
'default': default_available_models,
'scopes': [LocalScope()]
}
]
setup_links = [setup_metadata_type_list, setup_metadata_set_list]
app.add_setting(
name=u'AVAILABLE_MODELS',
default=default_available_models,
)
"""

View File

@@ -179,7 +179,7 @@ INSTALLED_APPS = (
#'document_comments',
#'document_signatures',
#'linking',
#'metadata',
'metadata',
#'ocr',
'main',
#'installation',

View File

@@ -19,7 +19,7 @@ urlpatterns = patterns('',
#(r'^tags/', include('tags.urls')),
#(r'^comments/', include('document_comments.urls')),
(r'^user_management/', include('user_management.urls')),
#(r'^metadata/', include('metadata.urls')),
(r'^metadata/', include('metadata.urls')),
#(r'^linking/', include('linking.urls')),
#(r'^document_indexing/', include('document_indexing.urls')),
(r'^history/', include('history.urls')),