Wiki-Quellcode von Add Status

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

Verstecke letzte Bearbeiter
Daniel Herrmann 1.1 1 {{velocity}}
2 #if($hasAdmin)
3 #set($status = $request.status)
4 #set($order = $request.order)
5 #if($stringtool.isNotBlank($status) && $stringtool.isNotBlank($order) && $services.csrf.isTokenValid($request.form_token))
6 #set($documentRef = $services.model.createDocumentReference($xcontext.getDatabase(), 'TaskManager', "Status_$status"))
7 #set($document = $xwiki.getDocument($documentRef))
8 #set($discard = $document.setTitle("$status"))
9 #set($discard = $document.setHidden(true))
10 #set($object = $document.getObject('TaskManager.StatusClass', true))
11 #set($discard = $object.set('status', $status))
12 #set($discard = $object.set('order', $order))
13 #set($discard = $document.save())
14 #end
15
16 {{html}}
17 <form class="xformInline" method="post">
18 <input type="hidden" name="form_token" value="$!{services.csrf.getToken()}" />
19 <label for="status">$escapetool.xml($services.localization.render('TaskManager.administration.addStatus.label'))</label>
20 <input id="status" name="status" type="text" size="20" required
21 placeholder="$escapetool.xml($services.localization.render('TaskManager.administration.addStatus.statusPlaceholder'))"/>
22 <input id="order" name="order" type="number" size="5" required
23 placeholder="$escapetool.xml($services.localization.render('TaskManager.administration.addStatus.orderPlaceholder'))"/>
24 <span class="buttonwrapper">
25 <button class="button" type="submit">$escapetool.xml($services.localization.render('TaskManager.administration.addStatus.submit'))</button>
26 </span>
27 </form>
28 {{/html}}
29 #set($columns = ['status', 'order', 'doc.date', 'doc.author', '_actions'])
30 #set($columnsProperties = {
31 'status' : { 'displayName' : $services.localization.render('taskmanager.livetable.status'), 'type' : 'text' , 'size' : 30, 'link' : 'view', 'filterable' : false },
32 'order' : { 'type' : 'number'},
33 'doc.date' : { 'type' : 'date', 'filterable' : false },
34 'doc.author': { 'type' : 'text', 'link' : 'author', 'filterable' : false },
35 '_actions' : { 'actions' : ['delete'] }
36 })
37 #set($options = {
38 'translationPrefix' : 'TaskManager.administration.livetable.',
39 'rowCount' : 15,
40 'description' : 'This table lists all the statuses that a task can have.',
41 'className' : 'TaskManager.StatusClass',
42 'queryFilters': 'currentlanguage'
43 })
44 #livetable("statusTable" $columns $columnsProperties $options)
45 #else
46 {{info}}{{translation key="TaskManager.administration.noRights"/}}{{/info}}
47 #end
48 {{/velocity}}