Änderungen von Dokument Calendar Macro

Zuletzt geändert von xwikiadmin am 2025/01/07 11:32

Von Version 1.1
bearbeitet von xwikiadmin
am 2022/03/14 15:14
Änderungskommentar: Install extension [com.xwiki.mocca-calendar:application-mocca-calendar-ui/2.11]
Auf Version 5.1
bearbeitet von xwikiadmin
am 2024/06/24 14:25
Änderungskommentar: Install extension [com.xwiki.mocca-calendar:application-mocca-calendar-ui/2.13.3]

Zusammenfassung

Details

XWiki.WikiMacroClass[0]
Makro-Code
... ... @@ -10,6 +10,13 @@
10 10  #set($calcounter = $request.getAttribute('MoccaCalendar.Code.Macro:counter'))
11 11  #if(!$calcounter) #set($calcounter = 0) #else #set($calcounter = $calcounter + 1) #end
12 12  #set($discard = $request.setAttribute('MoccaCalendar.Code.Macro:counter', $calcounter))
13 +#set ($wikis = "$!xcontext.macro.params.wikis")
14 +#set ($wikiList = [])
15 +#if ($wikis != '')
16 + #foreach ($wikiId in $wikis.split(','))
17 + #set ($discard = $wikiList.add($wikiId.trim()))
18 + #end
19 +#end
13 13  #set($filter = $xcontext.macro.params.filter)
14 14  #if(!$filter)
15 15  #set($filter = 'page') ## possible values are wiki, space, page
... ... @@ -119,8 +119,6 @@
119 119  #end
120 120  {{/velocity}}
121 121  
122 -{{include reference="Licenses.Code.VelocityMacros"/}}
123 -
124 124  {{velocity}}
125 125  ## We need to check if there is a valid license because the macro is registered even if the user doesn't have view right
126 126  ## on the macro definition page. See XWIKI-14828: Rendering macros defined in wiki pages are available to users that
... ... @@ -127,7 +127,7 @@
127 127  ## don't have view right on those pages.
128 128  #set ($mainReference = $services.model.createDocumentReference('', 'MoccaCalendar', 'MoccaCalendarClass'))
129 129  #if (!$services.licensing.licensor.hasLicensureForEntity($mainReference))
130 - {{error}}#getMissingLicenseMessage('moccacalendar.extension.name'){{/error}}
135 + {{missingLicenseMessage extensionName="moccacalendar.extension.name"/}}
131 131  #else
132 132  #if($xcontext.action=='view'){{html clean="false" wiki="false"}}
133 133  #if($canCreateEvents)
... ... @@ -141,20 +141,25 @@
141 141  #end
142 142  <div id="calendar${calcounter}"></div>
143 143  <script type="text/javascript">
144 -require(['jquery', 'moccaCalendar'], function(jQuery) {
149 +require(['xwiki-meta', 'jquery', 'moccaCalendar'], function(xwikiMeta, jQuery) {
145 145   jQuery(document).ready(function() {
146 146   var defaultView = XWiki.MoccaCalendar.Helper.getCalendarView("$!escapetool.javascript($defaultView)");
147 147  
153 + var wikiList = $jsontool.serialize($wikiList);
154 + wikiList = wikiList.map(item => encodeURIComponent(item));
155 +
148 148   var defaultEventData = {
149 149   xpage: 'plain',
150 150   outputSyntax: 'plain',
151 151   calendarDoc: "$!escapetool.javascript($calendarDoc)",
160 + wikis: wikiList,
152 152   filter: "$!escapetool.javascript($filter)",
153 153   filterDoc: "$!escapetool.javascript($filterDoc)",
154 154   classname: "MoccaCalendar.MoccaCalendarEventClass",
155 155   startfield: "startDate",
156 156   endfield: "endDate",
157 - durationfield: ""
166 + durationfield: "",
167 + form_token: xwikiMeta.form_token
158 158   };
159 159  
160 160   // page is now ready, initialize the calendar...
... ... @@ -171,6 +171,7 @@
171 171   error: function() {
172 172   calendarHelper.displayError();
173 173   },
184 + traditional: true
174 174   },
175 175   eventClick: function(calEvent, jsEvent, view) {
176 176   new XWiki.MoccaCalendar.MoccaCalendarPopup({editMode: false, event: calEvent}, calendarHelper);
XWiki.WikiMacroParameterClass[10]
Parameter-Beschreibung
... ... @@ -1,0 +1,1 @@
1 +List of wiki identifiers whose events are shown, separated by a comma. If not specified, events of the current wiki are shown. If specified, the calendarDoc and filter parameters are not taken into account.
Parameter verpflichtend
... ... @@ -1,0 +1,1 @@
1 +Nein
Parameter-Name
... ... @@ -1,0 +1,1 @@
1 +wikis