improvements and fixes for meeting minutes: views, infos, creating follow-up events, ...
This commit is contained in:
parent
c2ee316927
commit
c0b68ace67
3 changed files with 33 additions and 6 deletions
|
@ -333,12 +333,13 @@ class CreateFollowUpEvent(CreateConcept, BaseFollowUpController):
|
||||||
conceptType=taskType,
|
conceptType=taskType,
|
||||||
title=source.title,
|
title=source.title,
|
||||||
description=source.description,
|
description=source.description,
|
||||||
responsible=source.start,
|
responsible=source.responsible,
|
||||||
discussion=source.discussion,
|
discussion=source.discussion,
|
||||||
consequences=source.consequences)
|
consequences=source.consequences)
|
||||||
stask.assignChild(newTask, self.followsPredicate)
|
stask.assignChild(newTask, self.followsPredicate)
|
||||||
for rel in stask.getParentRelations():
|
for rel in stask.getParentRelations():
|
||||||
if rel.predicate != self.view.typePredicate:
|
if rel.predicate not in (
|
||||||
|
self.view.typePredicate, self.followsPredicate):
|
||||||
if rel.first == bevt:
|
if rel.first == bevt:
|
||||||
parent = self.object
|
parent = self.object
|
||||||
else:
|
else:
|
||||||
|
|
|
@ -75,6 +75,10 @@ class WorkItemDetails(TrackDetails):
|
||||||
def descriptionFormatted(self):
|
def descriptionFormatted(self):
|
||||||
return format.nl2br(self.description)
|
return format.nl2br(self.description)
|
||||||
|
|
||||||
|
@Lazy
|
||||||
|
def deadline(self):
|
||||||
|
return self.formatTimeStamp(self.track.deadline, 'date')
|
||||||
|
|
||||||
@Lazy
|
@Lazy
|
||||||
def start(self):
|
def start(self):
|
||||||
return self.formatTimeStamp(self.track.start, 'time')
|
return self.formatTimeStamp(self.track.start, 'time')
|
||||||
|
@ -418,7 +422,14 @@ class CreateWorkItemForm(ObjectForm, BaseTrackView):
|
||||||
return [dict(name=util.getUidForObject(p), title=p.title)
|
return [dict(name=util.getUidForObject(p), title=p.title)
|
||||||
for p in persons]
|
for p in persons]
|
||||||
|
|
||||||
taskTypes = ['task', 'event']
|
taskTypes = ['task', 'event', 'agendaitem']
|
||||||
|
|
||||||
|
@Lazy
|
||||||
|
def followUpTask(self):
|
||||||
|
pred = self.conceptManager.get('follows')
|
||||||
|
if pred is not None and self.task is not None:
|
||||||
|
for t in self.task.getChildren([pred]):
|
||||||
|
return t
|
||||||
|
|
||||||
@Lazy
|
@Lazy
|
||||||
def x_tasks(self):
|
def x_tasks(self):
|
||||||
|
|
|
@ -88,7 +88,7 @@
|
||||||
</tal:type>
|
</tal:type>
|
||||||
<tal:type condition="not:view/showTypes">
|
<tal:type condition="not:view/showTypes">
|
||||||
<input type="hidden" name="workItemType"
|
<input type="hidden" name="workItemType"
|
||||||
tal:attributes="value python:workItemTypes[0]" />
|
tal:attributes="value python:workItemTypes[0].name" />
|
||||||
</tal:type>
|
</tal:type>
|
||||||
<label i18n:translate="" for="title">Title</label>
|
<label i18n:translate="" for="title">Title</label>
|
||||||
<div>
|
<div>
|
||||||
|
@ -125,7 +125,8 @@
|
||||||
name="party" id="input_party"
|
name="party" id="input_party"
|
||||||
store="party_search_store" />
|
store="party_search_store" />
|
||||||
</span>
|
</span>
|
||||||
<span id="target_task" style="display: none">
|
<span id="target_task" style="display: none"
|
||||||
|
tal:condition="not:view/followUpTask">
|
||||||
<label i18n:translate="move_to_task" for="input_task"
|
<label i18n:translate="move_to_task" for="input_task"
|
||||||
style="display: inline">to</label>
|
style="display: inline">to</label>
|
||||||
<span dojoType="dojox.data.QueryReadStore" jsId="task_search_store"
|
<span dojoType="dojox.data.QueryReadStore" jsId="task_search_store"
|
||||||
|
@ -138,6 +139,15 @@
|
||||||
name="task" id="input_task"
|
name="task" id="input_task"
|
||||||
store="task_search_store" />
|
store="task_search_store" />
|
||||||
</span>
|
</span>
|
||||||
|
<span id="target_task" style="display: none"
|
||||||
|
tal:condition="view/followUpTask">
|
||||||
|
<label i18n:translate="move_to_task" for="input_task"
|
||||||
|
style="display: inline">to</label>
|
||||||
|
<span tal:content="view/followUpTask/title" />
|
||||||
|
<input type="hidden" name="task" id="input_task"
|
||||||
|
tal:attributes="value python:
|
||||||
|
view.getUidForObject(view.followUpTask)" />
|
||||||
|
</span>
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
<div id="deadline"
|
<div id="deadline"
|
||||||
|
@ -219,6 +229,10 @@
|
||||||
<td><span i18n:translate="">Task</span>:</td>
|
<td><span i18n:translate="">Task</span>:</td>
|
||||||
<td tal:content="item/object/title"></td>
|
<td tal:content="item/object/title"></td>
|
||||||
</tr>
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td><span i18n:translate="">Deadline</span>:</td>
|
||||||
|
<td tal:content="item/deadline"></td>
|
||||||
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td><span i18n:translate="">Start - End</span>:</td>
|
<td><span i18n:translate="">Start - End</span>:</td>
|
||||||
<td><span tal:content="item/startDay" />
|
<td><span tal:content="item/startDay" />
|
||||||
|
@ -251,7 +265,8 @@
|
||||||
tal:attributes="href python:view.getUrlForTarget(party)"
|
tal:attributes="href python:view.getUrlForTarget(party)"
|
||||||
tal:content="party/title" /></td>
|
tal:content="party/title" /></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr tal:condition="python:state.name in ('moved', 'moved_x')">
|
<tr tal:condition="python:state.name in ('moved', 'moved_x') and
|
||||||
|
item.targetWorkItem is not None">
|
||||||
<td><span i18n:translate="">Moved To</span>:</td>
|
<td><span i18n:translate="">Moved To</span>:</td>
|
||||||
<td><a tal:define="task python:view.getObjectForUid(item.targetWorkItem.taskId)"
|
<td><a tal:define="task python:view.getObjectForUid(item.targetWorkItem.taskId)"
|
||||||
tal:attributes="href python:view.getUrlForTarget(task)"
|
tal:attributes="href python:view.getUrlForTarget(task)"
|
||||||
|
|
Loading…
Add table
Reference in a new issue