Changes for page Home
Last modified by Benjamin Fischer on 2025/06/04 14:20
From version 72.20
edited by Benjamin Fischer
on 2024/11/06 12:17
on 2024/11/06 12:17
Change comment:
There is no comment for this version
To version 72.30
edited by Benjamin Fischer
on 2024/11/06 14:21
on 2024/11/06 14:21
Change comment:
There is no comment for this version
Summary
-
Page properties (1 modified, 0 added, 0 removed)
-
Objects (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -20,9 +20,8 @@ 20 20 21 21 {{velocity output="false"}} 22 22 $xwiki.ssx.use("Calendar.FullCalendar") 23 -$xwiki.ssx.use("MoccaCalendar.Code.Macro") 24 24 $xwiki.jsx.use("Calendar.FullCalendar", {'defer': false}) 25 -$xwiki.jsx.use("M occaCalendar.Code.Macro", {'defer': false})24 +$xwiki.jsx.use("Main.WebHome", {'defer': false, 'minify': false}) 26 26 {{/velocity}} 27 27 28 28 (% id="calendarCustom" %)
- XWiki.JavaScriptExtension[0]
-
- Code
-
... ... @@ -1,6 +1,42 @@ 1 -require(["jquery", "fullcalendar"], function ($) { 1 +require(["jquery", "fullcalendar"], function (jq) { 2 + const FC = jq.fullCalendar; 3 + const E = (tag, attrs, ...childs) => { 4 + if (typeof attrs === "string") attrs = [attrs]; 5 + if (attrs instanceof Array) { 6 + childs = attrs.concat(childs); 7 + attrs = {}; 8 + } 9 + const ret = Element(tag, attrs); 10 + ret.append(...childs.flat()); 11 + return ret; 12 + }; 13 + FC.defineView('monthCols', { 14 + class: FC.View.extend({ 15 + renderSkeleton() { 16 + const chf = this.opt("columnFormat") ?? "MMM"; 17 + const months = Array(12).fill().map((_, month) => this.start.add({month})); 18 + 19 + this.el.addClass("fc-month-cols-view").html( 20 + E( 21 + "table", 22 + E("thead", {class: "fc-head"}, 23 + E("tr", {} 24 + months.map(m => E("td", m.format(chf))))), 25 + E("tbody", {class: "fc-body"}, 26 + Array(31).fill().map((_, day) => 27 + months.map(m => m.add({day})).map(d => 28 + E("td", {class: this.getDayClasses(d).join(" ")}, [d.toISOString()]))) 29 + ), 30 + ) 31 + ); 32 + debugger; 33 + }, 34 + }), 35 + duration: { year: 1 }, 36 + }); 37 + 2 2 const init = () => { 3 - $("#calendarCustom").fullCalendar({39 + jq("#calendarCustom").fullCalendar({ 4 4 views: { 5 5 month: { 6 6 columnFormat: "ddd", ... ... @@ -31,6 +31,10 @@ 31 31 maxTime: "23:00", 32 32 defaultDate: "2024-11-06", 33 33 editable: false, 70 + eventDataTransform: event => { 71 + if (event.url.split("/")[4] === "Holidays") event.rendering = "background"; 72 + return event; 73 + }, 34 34 eventRender: function (event, element) { 35 35 // Render augmentation hook, use: event.html 36 36 }, ... ... @@ -37,6 +37,6 @@ 37 37 }); 38 38 }; 39 39 40 - $(document).ready(init);80 + jq(document).ready(init); 41 41 }); 42 42 - Use this extension
-
... ... @@ -1,1 +1,1 @@ 1 - currentPage1 +onDemand