CSV download improvements: button, file name, ...
This commit is contained in:
parent
e16f3e5ccf
commit
d05b3cd544
7 changed files with 27 additions and 8 deletions
|
@ -24,12 +24,13 @@ import csv
|
|||
from cStringIO import StringIO
|
||||
from zope.i18n import translate
|
||||
|
||||
from loops.expert.browser.report import ReportConceptView
|
||||
from loops.common import normalizeName
|
||||
from loops.expert.browser.report import ResultsConceptView
|
||||
from loops.interfaces import ILoopsObject
|
||||
from loops.util import _
|
||||
|
||||
|
||||
class ReportConceptCSVExport(ReportConceptView):
|
||||
class ResultsConceptCSVExport(ResultsConceptView):
|
||||
|
||||
isToplevel = True
|
||||
reportMode = 'export'
|
||||
|
@ -38,7 +39,7 @@ class ReportConceptCSVExport(ReportConceptView):
|
|||
encoding = 'UTF-8'
|
||||
|
||||
def getFileName(self):
|
||||
return 'output'
|
||||
return normalizeName(self.context.title)
|
||||
|
||||
def getColumnTitle(self, field):
|
||||
lang = self.languageInfo.language
|
||||
|
|
|
@ -190,6 +190,12 @@ class ResultsConceptView(ConceptView):
|
|||
def getColumnRenderer(self, col):
|
||||
return self.result_macros[col.renderer]
|
||||
|
||||
@Lazy
|
||||
def downloadLink(self, format='csv'):
|
||||
opt = self.options('download_' + format)
|
||||
if opt:
|
||||
return opt[0]
|
||||
|
||||
|
||||
class EmbeddedResultsConceptView(ResultsConceptView):
|
||||
|
||||
|
|
|
@ -37,6 +37,13 @@
|
|||
|
||||
<div metal:define-macro="results">
|
||||
<br />
|
||||
<tal:download condition="item/downloadLink">
|
||||
<div class="button">
|
||||
<a i18n:translate=""
|
||||
tal:attributes="href item/downloadLink">Download Data</a>
|
||||
</div>
|
||||
<br />
|
||||
</tal:download>
|
||||
<table class="report"
|
||||
tal:define="results reportView/results">
|
||||
<tr>
|
||||
|
|
|
@ -26,7 +26,7 @@ from zope.app.pagetemplate import ViewPageTemplateFile
|
|||
from zope.cachedescriptors.property import Lazy
|
||||
|
||||
from loops.browser.concept import ConceptView
|
||||
from loops.expert.browser.export import ReportConceptCSVExport
|
||||
from loops.expert.browser.export import ResultsConceptCSVExport
|
||||
from loops.expert.browser.report import ResultsConceptView
|
||||
from loops.organize.party import getPersonForUser
|
||||
from loops.util import _
|
||||
|
@ -37,7 +37,7 @@ class Qualifications(ResultsConceptView):
|
|||
reportName = 'qualification_overview'
|
||||
|
||||
|
||||
class QualificationsCSVExport(ReportConceptCSVExport):
|
||||
class QualificationsCSVExport(ResultsConceptCSVExport):
|
||||
|
||||
reportName = 'qualification_overview'
|
||||
|
||||
|
|
Binary file not shown.
|
@ -3,7 +3,7 @@ msgstr ""
|
|||
|
||||
"Project-Id-Version: 0.13.1\n"
|
||||
"POT-Creation-Date: 2007-05-22 12:00 CET\n"
|
||||
"PO-Revision-Date: 2014-08-08 12:00 CET\n"
|
||||
"PO-Revision-Date: 2015-03-13 12:00 CET\n"
|
||||
"Last-Translator: Helmut Merz <helmutm@cy55.de>\n"
|
||||
"Language-Team: loops developers <helmutm@cy55.de>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
|
@ -89,6 +89,11 @@ msgstr "Thema ändern"
|
|||
msgid "Please correct the indicated errors."
|
||||
msgstr "Bitte berichtigen Sie die angezeigten Fehler."
|
||||
|
||||
# expert (reporting)
|
||||
|
||||
msgid "Download Data"
|
||||
msgstr "Download als Excel-Datei"
|
||||
|
||||
# blog
|
||||
|
||||
msgid "Edit Blog Post..."
|
||||
|
|
|
@ -32,7 +32,7 @@ from cybertools.organize.interfaces import IWorkItems
|
|||
from cybertools.util.date import timeStamp2Date, timeStamp2ISO
|
||||
from cybertools.util.jeep import Jeep
|
||||
from loops.common import adapted, baseObject
|
||||
from loops.expert.browser.export import ReportConceptCSVExport
|
||||
from loops.expert.browser.export import ResultsConceptCSVExport
|
||||
from loops.expert.browser.report import ReportConceptView
|
||||
from loops.expert.field import Field, TargetField, DateField, StateField, \
|
||||
TextField, HtmlTextField, UrlField
|
||||
|
@ -50,7 +50,7 @@ class WorkStatementView(ReportConceptView):
|
|||
reportName = 'work_statement'
|
||||
|
||||
|
||||
class WorkStatementCSVExport(ReportConceptCSVExport):
|
||||
class WorkStatementCSVExport(ResultsConceptCSVExport):
|
||||
|
||||
reportName = 'work_statement'
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue