provide generation of meeting minutes Word document
This commit is contained in:
parent
59bb401b8f
commit
4447ea04ef
5 changed files with 47 additions and 0 deletions
Binary file not shown.
|
@ -293,6 +293,9 @@ msgstr "Besprechungsprotokoll anzeigen..."
|
|||
msgid "Show meeting minutes for this object."
|
||||
msgstr "Besprechungsprotokoll für dieses Objekt anzeigen."
|
||||
|
||||
msgid "Download Meeting Minutes"
|
||||
msgstr "Besprechungsprotokoll generieren"
|
||||
|
||||
msgid "Task/Action"
|
||||
msgstr "Aufgabe"
|
||||
|
||||
|
|
|
@ -103,6 +103,12 @@
|
|||
class="loops.organize.work.meeting.MeetingMinutes"
|
||||
permission="zope.View" />
|
||||
|
||||
<browser:page
|
||||
name="meeting_minutes.doc"
|
||||
for="loops.interfaces.IConceptSchema"
|
||||
class="loops.organize.work.meeting.MeetingMinutesDocument"
|
||||
permission="zope.View" />
|
||||
|
||||
<!-- setup -->
|
||||
|
||||
<zope:adapter factory="loops.organize.work.setup.SetupManager"
|
||||
|
|
|
@ -8,6 +8,20 @@
|
|||
<metal:block use-macro="view/concept_macros/concepttitle" />
|
||||
<metal:block use-macro="view/concept_macros/conceptfields" />
|
||||
</div><br />
|
||||
<span class="button"
|
||||
tal:condition="item/reportDownload">
|
||||
<a target="_blank"
|
||||
tal:attributes="href string:${item/targetUrl}/${item/reportDownload}"
|
||||
i18n:translate="">Download Meeting Minutes</a></span>
|
||||
<br />
|
||||
<div metal:use-macro="reportView/resultsRenderer" />
|
||||
</div>
|
||||
|
||||
|
||||
<div metal:define-macro="document"
|
||||
tal:define="item nocall:view;
|
||||
report item/reportInstance;
|
||||
reportView nocall:item">
|
||||
<div metal:use-macro="reportView/resultsRenderer" />
|
||||
</div>
|
||||
|
||||
|
|
|
@ -24,6 +24,7 @@ from zope.app.pagetemplate import ViewPageTemplateFile
|
|||
from zope.cachedescriptors.property import Lazy
|
||||
|
||||
from cybertools.browser.action import actions
|
||||
from cybertools.docgen.base import WordDocument
|
||||
from loops.browser.action import TargetAction
|
||||
from loops.expert.browser.report import ResultsConceptView
|
||||
from loops.util import _
|
||||
|
@ -41,6 +42,7 @@ actions.register('meeting_minutes', 'portlet', TargetAction,
|
|||
class MeetingMinutes(ResultsConceptView):
|
||||
|
||||
reportName = 'meeting_minutes'
|
||||
reportDownload = 'meeting_minutes.doc'
|
||||
|
||||
@Lazy
|
||||
def meeting_macros(self):
|
||||
|
@ -59,3 +61,25 @@ class MeetingMinutes(ResultsConceptView):
|
|||
if renderer == 'subreport':
|
||||
return self.meeting_macros[renderer]
|
||||
return self.result_macros[renderer]
|
||||
|
||||
|
||||
class MeetingMinutesDocument(WordDocument, MeetingMinutes):
|
||||
|
||||
isToplevel = True
|
||||
|
||||
def __init__(self, context, request):
|
||||
MeetingMinutes.__init__(self, context, request)
|
||||
|
||||
@Lazy
|
||||
def macros(self):
|
||||
return meeting_template.macros
|
||||
|
||||
@Lazy
|
||||
def reportRenderer(self):
|
||||
return self.macros['document']
|
||||
|
||||
@Lazy
|
||||
def content(self):
|
||||
return self.reportRenderer
|
||||
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue