Show last authors
1 {{velocity output="false"}}
2 ### this macro shows a validation error message if it exists
3 #macro(showvalidationmessage $message $force)
4 #if($xcontext.validationStatus.errors.contains($message) || "$!force" == "true") ##
5 <span class="xErrorMsg">$escapetool.xml($services.localization.render($message))</span>
6 #else ##
7 &nbsp; ##
8 #end ##
9 #end ## end showvalidationmessage
10 ##
11 #macro(displayDate $field)
12 #if($xcontext.getAction()=="view" && $doc.getValue('allDay')==1)
13 #set($format = $!doc.getObject('MoccaCalendar.MoccaCalendarEventClass').getxWikiClass().get($field).getProperty('dateFormat').value)
14 #if($!format=="")
15 #set($format = $xwiki.getSpacePreference('dateformat', 'dd.MM.yyyy'))
16 #end
17 ## try to cut the time because this event has the all day flag
18 #set($idx=$format.indexOf("H"))
19 #if($idx>0)
20 #set($format = $format.substring(0,$idx).trim())
21 #end
22 #set($formattedValue = $escapetool.xml($datetool.format($format, $doc.getValue($field))))
23 $!formattedValue
24 #else
25 $doc.display($field)
26 #end
27 #end
28 ##
29 #set($discard=$xwiki.jsx.use("MoccaCalendar.DatePickerExtension", {'defer': false}))
30 #if($xcontext.getAction()=="edit")
31 #set($discard=$xwiki.jsx.use("MoccaCalendar.MoccaCalendarEventSheet"))
32 #end
33 #set($calendar = $parentDoc.getObject('MoccaCalendar.MoccaCalendarClass'))
34 #if($calendar)
35 #set($calendarDoc = $parentDoc)
36 #end
37 #if(!$calendar && "$!request.getParameter('parentFROM')" != "")
38 #set($calendarDoc = $xwiki.getDocument($request.getParameter('parentFROM')))
39 #set($calendar = $calendarDoc.getObject('MoccaCalendar.MoccaCalendarClass'))
40 #end
41 #set($backToCalendarDoc = $xwiki.getDocument($request.getParameter('calendarDoc')))
42 #if(!$!backToCalendarDoc || $backToCalendarDoc.isNew())
43 #set($backToCalendarDoc = $calendarDoc)
44 #end
45 #if($xcontext.getAction()=="edit")
46 #if($request.xpage=="plain")
47 ## we are in modal dialog edit view - no separate parent page widget
48 #set($parentParamName="parent")
49 #else
50 #set($discard=$xwiki.jsx.use("MoccaCalendar.MoccaCalendarEventSheet"))
51 #set($parentParamName="_parent")
52 #end
53 #end
54 {{/velocity}}
55
56 {{velocity}}
57 {{html wiki="true"}}
58 #set($eventClass = 'MoccaCalendar.MoccaCalendarEventClass')
59 #set($eventValidationDoc = 'MoccaCalendar.MoccaCalendarEventValidation')
60 #set ($discard = $doc.use($eventClass))
61 ## add the groovy script to the validation (the xvalidation parameter in the request also works to set the groovy script validation)
62 #if($xcontext.action=='edit')
63 <input type="hidden" name="xvalidate" value="1" />
64 <input type="hidden" name="xvalidation" value="$eventValidationDoc" />
65 ## the following values must be added explicitly in "plain edit view", as used by the modal popup
66 ## because the "plain view" does not give them to us
67 #if($request.xpage=='plain')
68 <input type="hidden" name="form_token" value="$!{services.csrf.getToken()}" />
69 <input type="hidden" name="language" value="$!{escapetool.xml($tdoc.realLanguage)}" />
70 #end
71 #end
72 (% class="xform" %)
73 (((
74 #if($xcontext.action=='view' && $calendar)
75 ; <label for="calendar">$escapetool.xml($services.localization.render('MoccaCalendar.calendar'))</label>
76 : [[$calendarDoc.getDisplayTitle()>>$calendarDoc.fullName]]
77 #elseif($xcontext.action=='edit')
78 #set($hql =", BaseObject as obj where doc.fullName=obj.name and doc.name!='MoccaCalendarTemplate' and obj.className='MoccaCalendar.MoccaCalendarClass' order by doc.title, doc.name")
79 ; <label for="calendar">$escapetool.xml($services.localization.render('MoccaCalendar.calendar'))</label>
80 : <select id="calendarParent" name="$parentParamName">
81 #foreach($item in $services.query.hql($hql).execute())
82 #set($itemdoc = $xwiki.getDocument($item))
83 #if($!{itemdoc} && ${itemdoc.hasAccessLevel("edit")})
84 #set($selected="")
85 #if($itemdoc.getId() == $calendarDoc.getId())
86 #set($selected=" selected='selected'")
87 #end
88 <option value="$escapetool.html($itemdoc.getFullName())"$selected>$itemdoc.getDisplayTitle()</option>
89 #end
90 #end
91 </select>
92 #end
93 ; <label for="MoccaCalendarEvent.MoccaCalendarEventClass_0_title">$escapetool.xml($doc.displayPrettyName('title', false, false))<span class="xRequired"></span></label>
94 : #if($xcontext.action=='edit')<input id="MoccaCalendarEvent.MoccaCalendarEventClass_0_title" type="text" name="title" value="$!{escapetool.xml($doc.getTitle())}" class="required" /> #showvalidationmessage("val_title_already_exists") <span class="val_title_notempty xErrorMsg" style="display:none;">$escapetool.xml($services.localization.render('val_title_notempty'))</span> <span class="val_title_notvalid xErrorMsg" style="display:none;">$escapetool.xml($services.localization.render('val_title_notvalid'))</span>
95 #else $doc.getDisplayTitle()
96 #end
97 ; <label for="MoccaCalendarEvent.MoccaCalendarEventClass_0_startDate">$escapetool.xml($doc.displayPrettyName('startDate', false, false))<span class="xRequired"></span></label>
98 : #displayDate('startDate')
99 ; <label for="MoccaCalendarEvent.MoccaCalendarEventClass_0_endDate">$escapetool.xml($doc.displayPrettyName('endDate', false, false))</label>
100 : #displayDate('endDate')#showvalidationmessage("val_endDate")
101
102 ; <label for="MoccaCalendarEvent.MoccaCalendarEventClass_0_allDay">$escapetool.xml($doc.displayPrettyName('allDay', false, false))</label>
103 : $doc.display('allDay')
104 ; <label for="MoccaCalendarEvent.MoccaCalendarEventClass_0_description">$escapetool.xml($doc.displayPrettyName('description', false, false))</label>
105 : $doc.display('description')
106 )))
107 #if($!{request.xpage}!="plain")
108 ----
109
110 #if($xcontext.action=='view')
111 #if($backToCalendarDoc)
112 [[$services.localization.render('MoccaCalendar.calendarevent.backlink', [ $backToCalendarDoc.getDisplayTitle()])>>$backToCalendarDoc]]
113 #end
114 #end
115 #end
116 {{/html}}
117 ## please do not add linebreaks here, or the "save"-button will jump if there are validation errors
118 #if(($xcontext.validationStatus.errors&&$xcontext.validationStatus.errors.size()>0))$response.setStatus(400)#end
119 {{/velocity}}

Tips

Jump to any page in the wiki with Ctrl+G or Meta+G.
See more shortcuts.

My Recent Modifications

Need help?

If you need help with XWiki you can contact: