improvements and fixes for meeting minutes: views, infos, creating follow-up events, ...

This commit is contained in:
Helmut Merz 2012-07-31 17:55:39 +02:00
parent c2ee316927
commit c0b68ace67
3 changed files with 33 additions and 6 deletions

View file

@ -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:

View file

@ -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):

View file

@ -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">&nbsp; <span id="target_task" style="display: none"
tal:condition="not:view/followUpTask">&nbsp;
<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">&nbsp;
<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)"