provide variant of report view that shows results only after query parameters have been entered

This commit is contained in:
Helmut Merz 2014-09-15 19:36:50 +02:00
parent acbb1aa944
commit 8fff0330d3
2 changed files with 29 additions and 2 deletions

View file

@ -5,8 +5,28 @@
<div tal:define="report item/reportInstance;
reportView nocall:item"
tal:attributes="class string:content-$level;">
<div metal:use-macro="item/report_macros/header" />
<div metal:use-macro="item/resultsRenderer" />
</div>
</div>
<div metal:define-macro="main_params">
<div tal:define="report item/reportInstance;
reportView nocall:item"
tal:attributes="class string:content-$level;">
<div metal:use-macro="item/report_macros/header" />
<tal:results condition="request/show_results|nothing">
<div metal:use-macro="item/resultsRenderer" />
</tal:results>
</div>
</div>
<div metal:define-macro="header">
<metal:block use-macro="view/concept_macros/concepttitle" />
<form method="post" name="report_data" class="report-meta">
<input type="hidden" name="show_results" value="True" />
<tal:hidden define="params item/dynamicParams"
tal:condition="nothing">
<input type="hidden"
@ -26,8 +46,6 @@
</div>
<br />
</form>
<div metal:use-macro="item/resultsRenderer" />
</div>
</div>

View file

@ -226,3 +226,12 @@ class ReportConceptView(ResultsConceptView, ReportView):
if ri.userSettings:
return [f for f in qf if f in ri.userSettings]
return qf
class ReportParamsView(ReportConceptView):
""" Report view allowing to enter parameters before executing the report.
"""
@Lazy
def macro(self):
return self.report_macros['main_params']