Added view to create source transformations, merged and normalized most source and source transformations views

This commit is contained in:
Roberto Rosario
2011-07-13 02:33:37 -04:00
parent d0da4daa93
commit 6fa40be524
6 changed files with 114 additions and 79 deletions

View File

@@ -133,7 +133,7 @@ def resolve_links(context, links, current_view, current_path, parsed_query_strin
for cls in link.get('children_classes', []): for cls in link.get('children_classes', []):
obj, object_name = get_navigation_object(context) obj, object_name = get_navigation_object(context)
if type(obj) == cls: if type(obj) == cls or obj == cls:
new_link['active'] = True new_link['active'] = True
context_links.append(new_link) context_links.append(new_link)

View File

@@ -11,19 +11,14 @@ staging_file_preview = {'text': _(u'preview'), 'class': 'fancybox-noscaling', 'v
staging_file_delete = {'text': _(u'delete'), 'view': 'staging_file_delete', 'args': ['source.source_type', 'source.pk', 'object.id'], 'famfam': 'delete', 'keep_query': True} staging_file_delete = {'text': _(u'delete'), 'view': 'staging_file_delete', 'args': ['source.source_type', 'source.pk', 'object.id'], 'famfam': 'delete', 'keep_query': True}
setup_web_form_list = {'text': _(u'web forms'), 'view': 'setup_web_form_list', 'famfam': 'application_form', 'children_classes': [WebForm]} setup_web_form_list = {'text': _(u'web forms'), 'view': 'setup_web_form_list', 'famfam': 'application_form', 'children_classes': [WebForm]}
setup_web_form_edit = {'text': _(u'edit'), 'view': 'setup_web_form_edit', 'args': 'source.pk', 'famfam': 'application_form_edit'}
setup_web_form_delete = {'text': _(u'delete'), 'view': 'setup_web_form_delete', 'args': 'source.pk', 'famfam': 'application_form_delete'}
setup_web_form_create = {'text': _(u'add new'), 'view': 'setup_web_form_create', 'famfam': 'application_form_add'}
setup_web_form_transformation_list = {'text': _(u'transformations'), 'view': 'setup_web_form_transformation_list', 'args': 'source.pk', 'famfam': 'shape_move_front'}
setup_staging_folder_list = {'text': _(u'staging folders'), 'view': 'setup_staging_folder_list', 'famfam': 'folder_magnify', 'children_classes': [StagingFolder]} setup_staging_folder_list = {'text': _(u'staging folders'), 'view': 'setup_staging_folder_list', 'famfam': 'folder_magnify', 'children_classes': [StagingFolder]}
setup_staging_folder_edit = {'text': _(u'edit'), 'view': 'setup_staging_folder_edit', 'args': 'source.pk', 'famfam': 'folder_edit'}
setup_staging_folder_delete = {'text': _(u'delete'), 'view': 'setup_staging_folder_delete', 'args': 'source.pk', 'famfam': 'folder_delete'}
setup_staging_folder_create = {'text': _(u'add new'), 'view': 'setup_staging_folder_create', 'famfam': 'folder_add'}
setup_staging_folder_transformation_list = {'text': _(u'transformations'), 'view': 'setup_staging_folder_transformation_list', 'args': 'source.pk', 'famfam': 'shape_move_front'} 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'}
setup_source_create = {'text': _(u'add new'), 'view': 'setup_source_create', 'args': 'source_type', 'famfam': 'application_form_add'}
setup_source_transformation_list = {'text': _(u'transformations'), 'view': 'setup_source_transformation_list', 'args': ['source.source_type', 'source.pk'], 'famfam': 'shape_move_front'}
setup_source_transformation_create = {'text': _(u'add transformation'), 'view': 'setup_source_transformation_create', 'args': ['source.source_type', 'source.pk'], 'famfam': 'shape_square_add'}
setup_source_transformation_edit = {'text': _(u'edit'), 'view': 'setup_source_transformation_edit', 'args': 'transformation.pk', 'famfam': 'shape_square_edit'} setup_source_transformation_edit = {'text': _(u'edit'), 'view': 'setup_source_transformation_edit', 'args': 'transformation.pk', 'famfam': 'shape_square_edit'}
setup_source_transformation_delete = {'text': _(u'delete'), 'view': 'setup_source_transformation_delete', 'args': 'transformation.pk', 'famfam': 'shape_square_delete'} setup_source_transformation_delete = {'text': _(u'delete'), 'view': 'setup_source_transformation_delete', 'args': 'transformation.pk', 'famfam': 'shape_square_delete'}
@@ -33,14 +28,16 @@ register_links(StagingFile, [staging_file_preview, staging_file_delete])
register_links(SourceTransformation, [setup_source_transformation_edit, setup_source_transformation_delete]) register_links(SourceTransformation, [setup_source_transformation_edit, setup_source_transformation_delete])
register_links(['setup_web_form_list', 'setup_web_form_create', 'setup_staging_folder_list', 'setup_staging_folder_create'], [setup_web_form_list, setup_staging_folder_list], menu_name='form_header') register_links(['setup_web_form_list', 'setup_staging_folder_list', 'setup_source_create'], [setup_web_form_list, setup_staging_folder_list], menu_name='form_header')
register_links(WebForm, [setup_web_form_list, setup_staging_folder_list], menu_name='form_header') register_links(WebForm, [setup_web_form_list, setup_staging_folder_list], menu_name='form_header')
register_links(WebForm, [setup_web_form_transformation_list, setup_web_form_edit, setup_web_form_delete]) register_links(WebForm, [setup_source_transformation_list, setup_source_edit, setup_source_delete])
register_links(['setup_web_form_list', 'setup_web_form_edit', 'setup_web_form_delete', 'setup_web_form_create'], [setup_web_form_create], menu_name='sidebar')
register_links(['setup_web_form_list', 'setup_staging_folder_list', 'setup_source_edit', 'setup_source_delete', 'setup_source_create'], [setup_source_create], menu_name='sidebar')
register_links(StagingFolder, [setup_web_form_list, setup_staging_folder_list], menu_name='form_header') register_links(StagingFolder, [setup_web_form_list, setup_staging_folder_list], menu_name='form_header')
register_links(StagingFolder, [setup_staging_folder_transformation_list, setup_staging_folder_edit, setup_staging_folder_delete]) register_links(StagingFolder, [setup_source_transformation_list, setup_source_edit, setup_source_delete])
register_links(['setup_staging_folder_list', 'setup_staging_folder_edit', 'setup_staging_folder_delete', 'setup_staging_folder_create'], [setup_staging_folder_create], menu_name='sidebar')
source_views = ['setup_web_form_list', 'setup_web_form_edit', 'setup_web_form_delete', 'setup_web_form_create', 'setup_staging_folder_list', 'setup_staging_folder_edit', 'setup_staging_folder_delete', 'setup_staging_folder_create', 'setup_web_form_transformation_list', 'setup_staging_folder_transformation_list', 'setup_source_transformation_edit', 'setup_source_transformation_delete'] register_links(['setup_source_transformation_create', 'setup_source_transformation_edit', 'setup_source_transformation_delete', 'setup_source_transformation_list'], [setup_source_transformation_create], menu_name='sidebar')
source_views = ['setup_web_form_list', 'setup_staging_folder_list', 'setup_source_edit', 'setup_source_delete', 'setup_source_create', 'setup_source_transformation_list', 'setup_source_transformation_edit', 'setup_source_transformation_delete', 'setup_source_transformation_create']

View File

@@ -95,3 +95,9 @@ class SourceTransformationForm(forms.ModelForm):
super(SourceTransformationForm, self).__init__(*args, **kwargs) super(SourceTransformationForm, self).__init__(*args, **kwargs)
self.fields['content_type'].widget = forms.HiddenInput() self.fields['content_type'].widget = forms.HiddenInput()
self.fields['object_id'].widget = forms.HiddenInput() self.fields['object_id'].widget = forms.HiddenInput()
class SourceTransformationForm_create(forms.ModelForm):
class Meta:
model = SourceTransformation
exclude = ('content_type', 'object_id')

View File

@@ -55,8 +55,13 @@ SOURCE_CHOICE_WEB_FORM = 'webform'
SOURCE_CHOICE_STAGING = 'staging' SOURCE_CHOICE_STAGING = 'staging'
SOURCE_CHOICES = ( SOURCE_CHOICES = (
(SOURCE_CHOICE_WEB_FORM, _(u'Web form')), (SOURCE_CHOICE_WEB_FORM, _(u'web form')),
(SOURCE_CHOICE_STAGING, _(u'Server staging folder')), (SOURCE_CHOICE_STAGING, _(u'server staging folder')),
)
SOURCE_CHOICES_PLURAL = (
(SOURCE_CHOICE_WEB_FORM, _(u'web forms')),
(SOURCE_CHOICE_STAGING, _(u'server staging folders')),
) )
@@ -70,6 +75,17 @@ class BaseModel(models.Model):
def __unicode__(self): def __unicode__(self):
return u'%s' % self.title return u'%s' % self.title
def fullname(self):
return u' '.join([self.class_fullname(), '"%s"' % self.title])
@classmethod
def class_fullname(cls):
return unicode(dict(SOURCE_CHOICES).get(cls.source_type))
@classmethod
def class_fullname_plural(cls):
return unicode(dict(SOURCE_CHOICES_PLURAL).get(cls.source_type))
class Meta: class Meta:
ordering = ('title',) ordering = ('title',)
abstract = True abstract = True

View File

@@ -12,17 +12,16 @@ urlpatterns = patterns('sources.views',
#Setup views #Setup views
url(r'^setup/interactive/webforms/list/$', 'setup_source_list', {'source_type': SOURCE_CHOICE_WEB_FORM}, 'setup_web_form_list'), url(r'^setup/interactive/webforms/list/$', 'setup_source_list', {'source_type': SOURCE_CHOICE_WEB_FORM}, 'setup_web_form_list'),
url(r'^setup/interactive/webforms/(?P<source_id>\w+)/edit/$', 'setup_source_edit', {'source_type': SOURCE_CHOICE_WEB_FORM}, 'setup_web_form_edit'),
url(r'^setup/interactive/webforms/(?P<source_id>\w+)/delete/$', 'setup_source_delete', {'source_type': SOURCE_CHOICE_WEB_FORM}, 'setup_web_form_delete'),
url(r'^setup/interactive/webforms/create/$', 'setup_source_create', {'source_type': SOURCE_CHOICE_WEB_FORM}, 'setup_web_form_create'),
url(r'^setup/interactive/webforms/(?P<source_id>\w+)/transformation/list/$', 'setup_source_transformation_list', {'source_type': SOURCE_CHOICE_WEB_FORM}, 'setup_web_form_transformation_list'),
url(r'^setup/interactive/staging_folder/list/$', 'setup_source_list', {'source_type': SOURCE_CHOICE_STAGING}, 'setup_staging_folder_list'), url(r'^setup/interactive/staging_folder/list/$', 'setup_source_list', {'source_type': SOURCE_CHOICE_STAGING}, 'setup_staging_folder_list'),
url(r'^setup/interactive/staging_folder/(?P<source_id>\w+)/edit/$', 'setup_source_edit', {'source_type': SOURCE_CHOICE_STAGING}, 'setup_staging_folder_edit'),
url(r'^setup/interactive/staging_folder/(?P<source_id>\w+)/delete/$', 'setup_source_delete', {'source_type': SOURCE_CHOICE_STAGING}, 'setup_staging_folder_delete'),
url(r'^setup/interactive/staging_folder/create/$', 'setup_source_create', {'source_type': SOURCE_CHOICE_STAGING}, 'setup_staging_folder_create'),
url(r'^setup/interactive/staging_folder/(?P<source_id>\w+)/transformation/list/$', 'setup_source_transformation_list', {'source_type': SOURCE_CHOICE_STAGING}, 'setup_staging_folder_transformation_list'),
url(r'^setup/interactive/(?P<source_type>\w+)/list/$', 'setup_source_list', (), 'setup_source_list'),
url(r'^setup/interactive/(?P<source_type>\w+)/(?P<source_id>\w+)/edit/$', 'setup_source_edit', (), 'setup_source_edit'),
url(r'^setup/interactive/(?P<source_type>\w+)/(?P<source_id>\w+)/delete/$', 'setup_source_delete', (), 'setup_source_delete'),
url(r'^setup/interactive/(?P<source_type>\w+)/create/$', 'setup_source_create', (), 'setup_source_create'),
url(r'^setup/interactive/(?P<source_type>\w+)/(?P<source_id>\w+)/transformation/list/$', 'setup_source_transformation_list', (), 'setup_source_transformation_list'),
url(r'^setup/interactive/(?P<source_type>\w+)/(?P<source_id>\w+)/transformation/create/$', 'setup_source_transformation_create', (), 'setup_source_transformation_create'),
url(r'^setup/interactive/source/transformation/(?P<transformation_id>\w+)/edit/$', 'setup_source_transformation_edit', (), 'setup_source_transformation_edit'), url(r'^setup/interactive/source/transformation/(?P<transformation_id>\w+)/edit/$', 'setup_source_transformation_edit', (), 'setup_source_transformation_edit'),
url(r'^setup/interactive/source/transformation/(?P<transformation_id>\w+)/delete/$', 'setup_source_transformation_delete', (), 'setup_source_transformation_delete'), url(r'^setup/interactive/source/transformation/(?P<transformation_id>\w+)/delete/$', 'setup_source_transformation_delete', (), 'setup_source_transformation_delete'),
) )

View File

@@ -30,7 +30,7 @@ from sources.models import SOURCE_UNCOMPRESS_CHOICE_Y, \
from sources.staging import create_staging_file_class, StagingFile from sources.staging import create_staging_file_class, StagingFile
from sources.forms import StagingDocumentForm, WebFormForm from sources.forms import StagingDocumentForm, WebFormForm
from sources.forms import WebFormSetupForm, StagingFolderSetupForm from sources.forms import WebFormSetupForm, StagingFolderSetupForm
from sources.forms import SourceTransformationForm from sources.forms import SourceTransformationForm, SourceTransformationForm_create
def return_function(obj): def return_function(obj):
@@ -339,16 +339,15 @@ def setup_source_list(request, source_type):
if source_type == SOURCE_CHOICE_WEB_FORM: if source_type == SOURCE_CHOICE_WEB_FORM:
cls = WebForm cls = WebForm
title = _(u'web form sources')
elif source_type == SOURCE_CHOICE_STAGING: elif source_type == SOURCE_CHOICE_STAGING:
cls = StagingFolder cls = StagingFolder
title = _(u'staging folder sources')
context = { context = {
'object_list': cls.objects.all(), 'object_list': cls.objects.all(),
'title': title, 'title': cls.class_fullname_plural(),
'hide_link': True, 'hide_link': True,
'list_object_variable_name': 'source' 'list_object_variable_name': 'source',
'source_type': source_type,
} }
return render_to_response('generic_list.html', context, return render_to_response('generic_list.html', context,
@@ -361,11 +360,9 @@ def setup_source_edit(request, source_type, source_id):
if source_type == SOURCE_CHOICE_WEB_FORM: if source_type == SOURCE_CHOICE_WEB_FORM:
cls = WebForm cls = WebForm
form_class = WebFormSetupForm form_class = WebFormSetupForm
title = _(u'edit web form source: %s')
elif source_type == SOURCE_CHOICE_STAGING: elif source_type == SOURCE_CHOICE_STAGING:
cls = StagingFolder cls = StagingFolder
form_class = StagingFolderSetupForm form_class = StagingFolderSetupForm
title = _(u'edit staging folder source: %s')
source = get_object_or_404(cls, pk=source_id) source = get_object_or_404(cls, pk=source_id)
next = request.POST.get('next', request.GET.get('next', request.META.get('HTTP_REFERER', '/'))) next = request.POST.get('next', request.GET.get('next', request.META.get('HTTP_REFERER', '/')))
@@ -383,12 +380,13 @@ def setup_source_edit(request, source_type, source_id):
form = form_class(instance=source) form = form_class(instance=source)
return render_to_response('generic_form.html', { return render_to_response('generic_form.html', {
'title': title % source, 'title': _(u'edit source: %s') % source.fullname(),
'form': form, 'form': form,
'source': source, 'source': source,
'navigation_object_name': 'source', 'navigation_object_name': 'source',
'next': next, 'next': next,
'object_name': _(u'source'), 'object_name': _(u'source'),
'source_type': source_type,
}, },
context_instance=RequestContext(request)) context_instance=RequestContext(request))
@@ -397,15 +395,16 @@ def setup_source_delete(request, source_type, source_id):
#check_permissions(request.user, [PERMISSION_SOURCES_SETUP_DELETE]) #check_permissions(request.user, [PERMISSION_SOURCES_SETUP_DELETE])
if source_type == SOURCE_CHOICE_WEB_FORM: if source_type == SOURCE_CHOICE_WEB_FORM:
cls = WebForm cls = WebForm
title = _(u'Are you sure you wish to delete the web form source: %s?')
form_icon = u'application_form_delete.png' form_icon = u'application_form_delete.png'
redirect_view = 'setup_web_form_list' redirect_view = 'setup_web_form_list'
elif source_type == SOURCE_CHOICE_STAGING: elif source_type == SOURCE_CHOICE_STAGING:
cls = StagingFolder cls = StagingFolder
title = _(u'Are you sure you wish to delete the staging folder source: %s?')
form_icon = u'folder_delete.png' form_icon = u'folder_delete.png'
redirect_view = 'setup_staging_folder_list' redirect_view = 'setup_staging_folder_list'
redirect_view = reverse('setup_source_list', args=[source_type])
previous = request.POST.get('previous', request.GET.get('previous', request.META.get('HTTP_REFERER', redirect_view)))
source = get_object_or_404(cls, pk=source_id) source = get_object_or_404(cls, pk=source_id)
if request.method == 'POST': if request.method == 'POST':
@@ -417,16 +416,17 @@ def setup_source_delete(request, source_type, source_id):
'source': source, 'error': e 'source': source, 'error': e
}) })
return HttpResponseRedirect(reverse(redirect_view)) return HttpResponseRedirect(redirect_view)
context = { context = {
'title': title % source, 'title': _(u'Are you sure you wish to delete the source: %s?') % source.fullname(),
'source': source, 'source': source,
'object_name': _(u'source'), 'object_name': _(u'source'),
'navigation_object_name': 'source', 'navigation_object_name': 'source',
'delete_view': True, 'delete_view': True,
'previous': reverse(redirect_view), 'previous': previous,
'form_icon': form_icon, 'form_icon': form_icon,
'source_type': source_type,
} }
return render_to_response('generic_confirm.html', context, return render_to_response('generic_confirm.html', context,
@@ -437,16 +437,12 @@ def setup_source_create(request, source_type):
#check_permissions(request.user, [PERMISSION_SOURCES_SETUP_EDIT]) #check_permissions(request.user, [PERMISSION_SOURCES_SETUP_EDIT])
if source_type == SOURCE_CHOICE_WEB_FORM: if source_type == SOURCE_CHOICE_WEB_FORM:
#cls = WebForm cls = WebForm
form_class = WebFormSetupForm form_class = WebFormSetupForm
title = _(u'Creating web form source')
elif source_type == SOURCE_CHOICE_STAGING: elif source_type == SOURCE_CHOICE_STAGING:
#cls = StagingFolder cls = StagingFolder
form_class = StagingFolderSetupForm form_class = StagingFolderSetupForm
title = _(u'Creating staging folder source')
#source = get_object_or_404(cls, pk=source_id)
if request.method == 'POST': if request.method == 'POST':
form = form_class(data=request.POST) form = form_class(data=request.POST)
if form.is_valid(): if form.is_valid():
@@ -460,9 +456,11 @@ def setup_source_create(request, source_type):
form = form_class() form = form_class()
return render_to_response('generic_form.html', { return render_to_response('generic_form.html', {
'title': title, 'title': _(u'Create new source of type: %s') % cls.class_fullname(),
'form': form, 'form': form,
#'object_name': _(u'source'), 'source_type': source_type,
'source': cls,
'navigation_object_name': 'source',
}, },
context_instance=RequestContext(request)) context_instance=RequestContext(request))
@@ -472,16 +470,14 @@ def setup_source_transformation_list(request, source_type, source_id):
if source_type == SOURCE_CHOICE_WEB_FORM: if source_type == SOURCE_CHOICE_WEB_FORM:
cls = WebForm cls = WebForm
#title = _(u'web form sources')
elif source_type == SOURCE_CHOICE_STAGING: elif source_type == SOURCE_CHOICE_STAGING:
cls = StagingFolder cls = StagingFolder
#title = _(u'staging folder sources')
source = get_object_or_404(cls, pk=source_id) source = get_object_or_404(cls, pk=source_id)
context = { context = {
'object_list': SourceTransformation.objects.get_for_object(source), 'object_list': SourceTransformation.objects.get_for_object(source),
'title': _(u'transformations for: %s') % source, 'title': _(u'transformations for: %s') % source.fullname(),
'source': source, 'source': source,
'object_name': _(u'source'), 'object_name': _(u'source'),
'navigation_object_name': 'source', 'navigation_object_name': 'source',
@@ -503,7 +499,8 @@ def setup_source_transformation_edit(request, transformation_id):
#check_permissions(request.user, [PERMISSION_SOURCES_SETUP_EDIT]) #check_permissions(request.user, [PERMISSION_SOURCES_SETUP_EDIT])
source_transformation = get_object_or_404(SourceTransformation, pk=transformation_id) source_transformation = get_object_or_404(SourceTransformation, pk=transformation_id)
next = request.POST.get('next', request.GET.get('next', request.META.get('HTTP_REFERER', '/'))) redirect_view = reverse('setup_source_transformation_list', args=[source_transformation.content_object.source_type, source_transformation.content_object.pk])
next = request.POST.get('next', request.GET.get('next', request.META.get('HTTP_REFERER', redirect_view)))
if request.method == 'POST': if request.method == 'POST':
form = SourceTransformationForm(instance=source_transformation, data=request.POST) form = SourceTransformationForm(instance=source_transformation, data=request.POST)
@@ -522,12 +519,10 @@ def setup_source_transformation_edit(request, transformation_id):
'form': form, 'form': form,
'source': source_transformation.content_object, 'source': source_transformation.content_object,
'transformation': source_transformation, 'transformation': source_transformation,
#'navigation_object_name_list': ['source', 'transformation'],
'navigation_object_list': [ 'navigation_object_list': [
{'object': 'source', 'name': _(u'source')}, {'object': 'source', 'name': _(u'source')},
{'object': 'transformation', 'name': _(u'transformation')} {'object': 'transformation', 'name': _(u'transformation')}
], ],
#'object_name_list': [_(u'source'), _(u'transformation')],
'next': next, 'next': next,
}, },
context_instance=RequestContext(request)) context_instance=RequestContext(request))
@@ -537,7 +532,8 @@ def setup_source_transformation_delete(request, transformation_id):
#check_permissions(request.user, [PERMISSION_DOCUMENT_TRANSFORM]) #check_permissions(request.user, [PERMISSION_DOCUMENT_TRANSFORM])
source_transformation = get_object_or_404(SourceTransformation, pk=transformation_id) source_transformation = get_object_or_404(SourceTransformation, pk=transformation_id)
next = request.POST.get('next', request.GET.get('next', request.META.get('HTTP_REFERER', '/'))) redirect_view = reverse('setup_source_transformation_list', args=[source_transformation.content_object.source_type, source_transformation.content_object.pk])
previous = request.POST.get('previous', request.GET.get('previous', request.META.get('HTTP_REFERER', redirect_view)))
if request.method == 'POST': if request.method == 'POST':
try: try:
@@ -547,12 +543,11 @@ def setup_source_transformation_delete(request, transformation_id):
messages.error(request, _(u'Error deleting transformation; %(error)s') % { messages.error(request, _(u'Error deleting transformation; %(error)s') % {
'error': e} 'error': e}
) )
return HttpResponseRedirect(next) return HttpResponseRedirect(redirect_view)
return render_to_response('generic_confirm.html', { return render_to_response('generic_confirm.html', {
'delete_view': True, 'delete_view': True,
'transformation': source_transformation, 'transformation': source_transformation,
#'object_name': _(u'document transformation'),
'source': source_transformation.content_object, 'source': source_transformation.content_object,
'navigation_object_list': [ 'navigation_object_list': [
{'object': 'source', 'name': _(u'source')}, {'object': 'source', 'name': _(u'source')},
@@ -560,38 +555,60 @@ def setup_source_transformation_delete(request, transformation_id):
], ],
'title': _(u'Are you sure you wish to delete transformation "%(transformation)s"') % { 'title': _(u'Are you sure you wish to delete transformation "%(transformation)s"') % {
'transformation': source_transformation.get_transformation_display(), 'transformation': source_transformation.get_transformation_display(),
#'document_page': document_page_transformation.document_page
}, },
'next': next, 'previous': previous,
'previous': next,
'form_icon': u'shape_square_delete.png', 'form_icon': u'shape_square_delete.png',
}, },
context_instance=RequestContext(request)) context_instance=RequestContext(request))
'''
def document_page_transformation_create(request, document_page_id):
check_permissions(request.user, [PERMISSION_DOCUMENT_TRANSFORM])
document_page = get_object_or_404(DocumentPage, pk=document_page_id) def setup_source_transformation_create(request, source_type, source_id):
#check_permissions(request.user, [PERMISSION_DOCUMENT_TRANSFORM])
if source_type == SOURCE_CHOICE_WEB_FORM:
cls = WebForm
elif source_type == SOURCE_CHOICE_STAGING:
cls = StagingFolder
source = get_object_or_404(cls, pk=source_id)
context = {
'object_list': SourceTransformation.objects.get_for_object(source),
'title': _(u'transformations for: %s') % source.fullname(),
'source': source,
'object_name': _(u'source'),
'navigation_object_name': 'source',
'list_object_variable_name': 'transformation',
'extra_columns': [
{'name': _(u'order'), 'attribute': 'order'},
{'name': _(u'transformation'), 'attribute': lambda x: x.get_transformation_display()},
{'name': _(u'arguments'), 'attribute': 'arguments'}
],
'hide_link': True,
'hide_object': True,
}
redirect_view = reverse('setup_source_transformation_list', args=[source.source_type, source.pk])
previous = request.POST.get('previous', request.GET.get('previous', request.META.get('HTTP_REFERER', redirect_view)))
if request.method == 'POST': if request.method == 'POST':
form = DocumentPageTransformationForm(request.POST, initial={'document_page': document_page}) form = SourceTransformationForm_create(request.POST)
if form.is_valid(): if form.is_valid():
form.save() try:
return HttpResponseRedirect(reverse('document_page_view', args=[document_page_id])) source_tranformation = form.save(commit=False)
source_tranformation.content_object = source
source_tranformation.save()
messages.success(request, _(u'Source transformation created successfully'))
return HttpResponseRedirect(redirect_view)
except Exception, e:
messages.error(request, _(u'Error creating source transformation; %s') % e)
else: else:
form = DocumentPageTransformationForm(initial={'document_page': document_page}) form = SourceTransformationForm_create()
return render_to_response('generic_form.html', { return render_to_response('generic_form.html', {
'form': form, 'form': form,
'object': document_page, 'source': source,
'title': _(u'Create new transformation for page: %(page)s of document: %(document)s') % { 'object_name': _(u'source'),
'page': document_page.page_number, 'document': document_page.document}, 'navigation_object_name': 'source',
'web_theme_hide_menus': True, 'title': _(u'Create new transformation for source: %s') % source,
}, context_instance=RequestContext(request)) }, context_instance=RequestContext(request))
'''