Wiki-Quellcode von TaskManagerSheet

Zuletzt geändert von Daniel Herrmann am 2026/03/08 12:48

Zeige letzte Bearbeiter
1 {{velocity output="false"}}
2 #macro(displayPropertyCol $name $icon)
3 (% class="col-xs-12 col-sm-6" %)
4 (((
5 #displayProperty($name $icon)
6 )))
7 #end
8 #macro(displayProperty $name $icon)
9 (% class="form-group" %)
10 (((
11 ; <label for="TaskManager.TaskManagerClass_0_$name">
12 $services.icon.render($icon)
13 $escapetool.xml($doc.displayPrettyName($name, false, false))
14 </label>
15 : $doc.display($name)
16 )))
17 #end
18 {{/velocity}}
19
20 {{velocity}}
21 {{html wiki="true"}}
22 #set ($discard = $doc.use('TaskManager.TaskManagerClass'))
23 #set ($discard = $xwiki.jsx.use('TaskManager.TaskManagerSheet')) ## For auto-updating Status and Progress
24 #set ($isSheet = $services.model.resolveDocument('TaskManager.TaskManagerSheet').equals($doc.documentReference))
25 #set($isEdit = ($xcontext.action == 'edit' || $xcontext.action == 'inline'))
26 #if(!$isEdit && !$isSheet)
27 (% class="xform" %)
28 (((
29 (% class="row" %)
30 (((
31 (% class="col-xs-12 col-sm-8 col-md-8" %)
32 (((
33 (% class="row" %)
34 (((
35 #displayPropertyCol('number', 'key')
36 #if ("$!doc.display('project')" != '')
37 #displayPropertyCol('project', 'folder')
38 #end
39 )))
40 (% class="row" %)
41 (((
42 #displayPropertyCol('startDate', 'calendar')
43 #displayPropertyCol('createDate', 'calendar')
44 #displayPropertyCol('duedate', 'time')
45 #if ("$!doc.display('completeDate')" != '')
46 #displayPropertyCol('completeDate', 'check')
47 #end
48 )))
49 (% class="row" %)
50 (((
51 #displayPropertyCol('reporter', 'user')
52 #if ("$!doc.getValue('assignee')" != '')
53 #displayPropertyCol('assignee', 'user')
54 #end
55 #if ("$!doc.getValue('owner')" != '')
56 #displayPropertyCol('owner', 'home')
57 #end
58 )))
59 )))
60 (% class="col-xs-12 col-sm-4 col-md-4" %)
61 (((
62 #displayProperty('severity', 'bell')
63 #displayProperty('status', 'info')
64 #displayProperty('progress', 'contrast')
65 )))
66 )))
67 (% class="row" %)
68 (((
69 (% class="col-xs-12 col-sm-12 col-md-12" %)
70 (((
71 (% class="form-group" %)
72 (((
73 #if ("$!doc.content" != '' || $xcontext.action == 'preview')
74 ; <label for="TaskManager.TaskManagerClass_0_description">
75 $services.icon.render('application_view_list')
76 $escapetool.xml($doc.displayPrettyName('description', false, false))
77 </label>
78 : #if ($xcontext.action == 'preview') $doc.getRenderedContent($request.content, $doc.syntax) #else $doc.getRenderedContent($tdoc.content, $tdoc.syntax.toIdString()) #end
79 #end
80 )))
81 )))
82 )))
83 (% class="row" %)
84 (((
85 (% class="col-xs-12 col-sm-12 col-md-12" %)
86 (((
87 #if ("$!doc.display('dependencies')" != '')
88 #displayProperty('dependencies', 'add')
89 #end
90 )))
91 )))
92 #end
93 #if($isEdit && !$isSheet)
94 (% class="xform" %)
95 (((
96 (% class="row" %)
97 (((
98 (% class="col-xs-12 col-sm-8 col-md-8" %)
99 (((
100 (% class="form-group" %)
101 (((
102 ## Automatically set task name property from the document name
103 ; <label for="TaskManager.TaskManagerClass_0_name">
104 $services.icon.render('book')
105 $escapetool.xml($doc.displayPrettyName('name', false, false))
106 </label>
107 #set($taskName = $doc.getObject('TaskManager.TaskManagerClass').getProperty('name').value)
108 #if("$!{taskName}" == '')
109 #set($taskName = $doc.documentReference.name)
110 #if($taskName == $services.model.getEntityReference('DOCUMENT', 'default').name)
111 ## we are a non-terminal page: use space name
112 #set($taskName = $doc.documentReference.parent.name)
113 #end
114 #if ($doc.space == 'TaskManager.TaskManagerTemplates')
115 ## Don't set the title for templates.
116 #set ($taskName = '')
117 #end
118 #end
119 : <input class="form-control" type="input" name="TaskManager.TaskManagerClass_0_name" id="TaskManager.TaskManagerClass_0_name" value="$!escapetool.xml($!services.rendering.escape($taskName, 'xwiki/2.1'))"/>
120 )))
121 )))
122 (% class="col-xs-12 col-sm-4 col-md-4" %)
123 (((
124 (% class="form-group" %)
125 (((
126 ; <label for="TaskManager.TaskManagerClass_0_project">
127 $services.icon.render('folder')
128 $escapetool.xml($doc.displayPrettyName('project', false, false))
129 </label>
130 : $doc.display('project')
131 )))
132 )))
133 )))
134 (% class="row" %)
135 (((
136 (% class="col-xs-12 col-sm-8 col-md-8" %)
137 (((
138 (% class="row" %)
139 (((
140 #displayPropertyCol('startDate', 'calendar')
141 #displayPropertyCol('createDate', 'calendar')
142 #displayPropertyCol('duedate', 'time')
143 (% class="col-xs-12 col-sm-6" %)
144 (((
145 )))
146 #displayPropertyCol('completeDate', 'check')
147 )))
148 (% class="row" %)
149 (((
150 (% class="col-xs-12 col-sm-6" %)
151 (((
152 (% class="form-group" %)
153 (((
154 ; <label for="TaskManager.TaskManagerClass_0_reporter">
155 $services.icon.render('user')
156 $escapetool.xml($doc.displayPrettyName('reporter', false, false))
157 </label>
158 : #if($doc.isNew())
159 #set($discard = $doc.getObject('TaskManager.TaskManagerClass').set('reporter', $xcontext.user))
160 #end
161 $doc.display('reporter', 'hidden')
162 $doc.display('reporter', 'view')
163 )))
164 )))
165 #displayPropertyCol('assignee', 'user')
166 )))
167 )))
168 (% class="col-xs-12 col-sm-4 col-md-4" %)
169 (((
170 #displayProperty('severity', 'bell')
171 #displayProperty('status', 'info')
172 #displayProperty('progress', 'contrast')
173 )))
174 )))
175 (% class="row" %)
176 (((
177 (% class="form-group col-xs-12 col-sm-12 col-md-12" %)
178 (((
179 #set($type = 'edit')
180 ; <label for="TaskManager.TaskManagerClass_0_description">
181 $services.icon.render('application_view_list')
182 $escapetool.xml($doc.displayPrettyName('description', false, false))
183 </label>
184 : {{include reference="AppWithinMinutes.Content"/}}
185 )))
186 (% class="form-group col-xs-12 col-sm-12 col-md-12" %)
187 (((
188 ; <label for="TaskManager.TaskManagerClass_0_dependencies">
189 $services.icon.render('add')
190 $escapetool.xml($doc.displayPrettyName('dependencies', false, false))
191 </label>
192 : $doc.display('dependencies')
193 )))
194 )))
195 )))
196 #end
197 {{/html}}
198 {{/velocity}}