diff options
author | Étienne Loks <etienne.loks@peacefrogs.net> | 2013-12-23 16:28:14 +0100 |
---|---|---|
committer | Étienne Loks <etienne.loks@peacefrogs.net> | 2013-12-23 16:28:14 +0100 |
commit | a9cdecea56b07729496d08abe96f28112fadc151 (patch) | |
tree | 8f5293c76bd7a4f2cf916f58ce654bb09f1bd6dd | |
parent | d5ef58137407b12c91fcf4db479dcd9662efd88d (diff) | |
download | Ishtar-a9cdecea56b07729496d08abe96f28112fadc151.tar.bz2 Ishtar-a9cdecea56b07729496d08abe96f28112fadc151.zip |
Document generation for files (refs #1576)
-rw-r--r-- | archaeological_files/urls.py | 7 | ||||
-rw-r--r-- | archaeological_operations/forms.py | 6 | ||||
-rw-r--r-- | archaeological_operations/models.py | 3 | ||||
-rw-r--r-- | archaeological_operations/urls.py | 2 | ||||
-rw-r--r-- | archaeological_operations/views.py | 8 |
5 files changed, 18 insertions, 8 deletions
diff --git a/archaeological_files/urls.py b/archaeological_files/urls.py index bbac3a052..2640aec1d 100644 --- a/archaeological_files/urls.py +++ b/archaeological_files/urls.py @@ -60,7 +60,10 @@ urlpatterns += patterns('archaeological_files.views', url(r'revert-file/(?P<pk>.+)/(?P<date>.+)$', 'revert_file', name='revert-file'), url(r'dashboard_file/$', 'dashboard_file', name='dashboard-file'), +) + +urlpatterns += patterns('archaeological_operations.views', url(r'file_administrativeact_document/$', - 'file_administrativeactfile_document', - name='file-administrativeact-document'), + 'administrativeactfile_document', + name='file-administrativeact-document', kwargs={'operation':False}), ) diff --git a/archaeological_operations/forms.py b/archaeological_operations/forms.py index e52fef927..d9f5ece9b 100644 --- a/archaeological_operations/forms.py +++ b/archaeological_operations/forms.py @@ -620,10 +620,14 @@ class DocumentGenerationAdminActForm(forms.Form): document_template = forms.ChoiceField(label=_("Template"), choices=[]) def __init__(self, *args, **kwargs): + document_type = 'O' + if 'operation' in kwargs: + document_type = 'O' if kwargs.pop('operation') else 'F' super(DocumentGenerationAdminActForm, self).__init__(*args, **kwargs) self.fields['document_template'].choices = DocumentTemplate.get_tuples( dct={'associated_object_name': - 'archaeological_operations.models.AdministrativeAct'}) + 'archaeological_operations.models.AdministrativeAct', + 'acttypes__intented_to':document_type}) def save(self, object_pk): try: diff --git a/archaeological_operations/models.py b/archaeological_operations/models.py index be09f9923..59cb46589 100644 --- a/archaeological_operations/models.py +++ b/archaeological_operations/models.py @@ -355,7 +355,8 @@ class ActType(GeneralType): choices=TYPE) code = models.CharField(_(u"Code"), max_length=10, blank=True, null=True) associated_template = models.ManyToManyField(DocumentTemplate, blank=True, - null=True, verbose_name=_(u"Associated template")) + null=True, verbose_name=_(u"Associated template"), + related_name='acttypes') class Meta: verbose_name = _(u"Act type") verbose_name_plural = _(u"Act types") diff --git a/archaeological_operations/urls.py b/archaeological_operations/urls.py index c85c05c88..5efc61dab 100644 --- a/archaeological_operations/urls.py +++ b/archaeological_operations/urls.py @@ -81,6 +81,6 @@ urlpatterns += patterns('archaeological_operations.views', url(r'autocomplete-patriarche/$', 'autocomplete_patriarche', name='autocomplete-patriarche'), url(r'operation_administrativeact_document/$', - 'operation_administrativeactfile_document', + 'administrativeactfile_document', name='operation-administrativeact-document'), ) diff --git a/archaeological_operations/views.py b/archaeological_operations/views.py index 1ba994a86..d6e97b1d9 100644 --- a/archaeological_operations/views.py +++ b/archaeological_operations/views.py @@ -285,18 +285,20 @@ def generatedoc_administrativeactop(request, pk, template_pk=None): return response return HttpResponse(mimetype='text/plain') -def operation_administrativeactfile_document(request): +def administrativeactfile_document(request, operation=True): dct = {} if request.POST: dct['search_form'] = AdministrativeActOperationFormSelection( request.POST) - dct['template_form'] = DocumentGenerationAdminActForm(request.POST) + dct['template_form'] = DocumentGenerationAdminActForm(request.POST, + operation=operation) if dct['search_form'].is_valid() and dct['template_form'].is_valid(): return generatedoc_administrativeactop(request, dct['search_form'].cleaned_data.get('pk'), dct['template_form'].cleaned_data.get('document_template')) else: dct['search_form'] = AdministrativeActOpeFormSelection() - dct['template_form'] = DocumentGenerationAdminActForm() + dct['template_form'] = DocumentGenerationAdminActForm( + operation=operation) return render_to_response('ishtar/administrativeact_document.html', dct, context_instance=RequestContext(request)) |