diff options
author | Étienne Loks <etienne.loks@peacefrogs.net> | 2013-12-14 23:52:13 +0100 |
---|---|---|
committer | Étienne Loks <etienne.loks@peacefrogs.net> | 2013-12-14 23:52:13 +0100 |
commit | dd005db8c38c1139c33a5f3b8b9e3e1556b28b38 (patch) | |
tree | e702a5e335c4366a1e27499a4db51e31b7f5c7b7 /archaeological_operations/views.py | |
parent | c6f301b76291d2f416f6a641fe92b03cd10076a7 (diff) | |
parent | b3c5ce577b925da4022f21ccdf8d138486557450 (diff) | |
download | Ishtar-dd005db8c38c1139c33a5f3b8b9e3e1556b28b38.tar.bz2 Ishtar-dd005db8c38c1139c33a5f3b8b9e3e1556b28b38.zip |
Merge branch 'master' of lysithea.proxience.net:/home/proxience/git/ishtar
Diffstat (limited to 'archaeological_operations/views.py')
-rw-r--r-- | archaeological_operations/views.py | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/archaeological_operations/views.py b/archaeological_operations/views.py index 97446b635..c899b1c4d 100644 --- a/archaeological_operations/views.py +++ b/archaeological_operations/views.py @@ -18,10 +18,12 @@ # See the file COPYING for details. import json +import os from django.db.models import Q from django.http import HttpResponse from django.shortcuts import render_to_response +from django.template.defaultfilters import slugify from django.utils.translation import ugettext_lazy as _ from ishtar_common.views import get_item, show_item, revert_item @@ -258,3 +260,27 @@ operation_administrativeactop_deletion_wizard = \ label=_(u"Operation: administrative act deletion"), url_name='operation_administrativeactop_deletion',) +def generatedoc_administrativeactop(request, pk): + if (not request.user.has_perm('ishtar_common.view_operation', + models.Operation) + and not request.user.has_perm('ishtar_common.view_own_operation', + models.Operation)): + return HttpResponse(mimetype='text/plain') + try: + act_file = models.AdministrativeAct.objects.get(pk=pk) + doc = act_file.publish() + except models.AdministrativeAct.DoesNotExist: + doc = None + if doc: + MIMES = {'odt':'application/vnd.oasis.opendocument.text', + 'ods':'application/vnd.oasis.opendocument.spreadsheet'} + ext = doc.split('.')[-1] + doc_name = act_file.get_filename() + "." + ext + mimetype = 'text/csv' + if ext in MIMES: + mimetype = MIMES[ext] + response = HttpResponse(open(doc), mimetype=mimetype) + response['Content-Disposition'] = 'attachment; filename=%s' % \ + doc_name + return response + return HttpResponse(mimetype='text/plain') |