Changes for page Home
Last modified by Benjamin Fischer on 2025/06/04 14:20
From version 72.12
edited by Benjamin Fischer
on 2024/11/06 11:47
on 2024/11/06 11:47
Change comment:
There is no comment for this version
To version 72.36
edited by Benjamin Fischer
on 2024/11/06 15:02
on 2024/11/06 15:02
Change comment:
There is no comment for this version
Summary
-
Page properties (1 modified, 0 added, 0 removed)
-
Objects (1 modified, 1 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -19,11 +19,15 @@ 19 19 = ErUM-Data Calendar = 20 20 21 21 {{velocity output="false"}} 22 +$xwiki.ssx.use("Calendar.FullCalendar") 22 22 $xwiki.jsx.use("Calendar.FullCalendar", {'defer': false}) 23 -$xwiki.jsx.use("M occaCalendar.Code.Macro", {'defer': false})24 +$xwiki.jsx.use("Main.WebHome", {'defer': false, 'minify': false}) 24 24 {{/velocity}} 25 25 26 -{{calendar json="/bin/get/MoccaCalendar/Code/JSONService?xpage=plain&outputSyntax=plain&calendarDoc=Main.WebHome&filter=wiki&classname=MoccaCalendar.MoccaCalendarEventClass&startfield=startDate&endfield=endDate&durationfield=" right="month,plainList" editable="false"/}} 27 +(% id="calendarCustom" %) 28 +((( 29 + 30 +))) 27 27 28 28 {{velocity}} 29 29 #set ($showcomments = false)
- XWiki.JavaScriptExtension[0]
-
- Code
-
... ... @@ -1,1 +1,78 @@ 1 -/* CUSTOM CALENDAR STUFF GOES HERE */ 1 +require(["jquery", "fullcalendar"], function (jq) { 2 + const FC = jq.fullCalendar; 3 + const E = (tag, ...childs) => { 4 + const attrs = childs[0]?.constructor === Object ? childs.shift() : {}; 5 + const ret = Element(tag, attrs); 6 + ret.append(...childs.flat()); 7 + return ret; 8 + }; 9 + FC.defineView('monthCols', { 10 + class: FC.View.extend({ 11 + render() { 12 + debugger; 13 + const chf = this.opt("columnFormat") ?? "MMM"; 14 + const start = this.start ?? FC.moment({year: FC.moment().year()}); 15 + const months = Array(12).fill().map((_, month) => start.clone().add({month})); 16 + 17 + this.el.addClass("fc-month-cols-view").html( 18 + E( 19 + "table", 20 + E("thead", {class: "fc-head"}, 21 + E("tr", months.map(m => E("td", m.format(chf))))), 22 + E("tbody", {class: "fc-body"}, 23 + Array(31).fill().map((_, day) => E("tr", 24 + months.map(m => m.clone().add({day})).map(d => E("td", {class: this.getDayClasses(d).join(" ")}, [d.toISOString()])))) 25 + ), 26 + ) 27 + ); 28 + 29 + }, 30 + }), 31 + duration: { year: 1 }, 32 + }); 33 + 34 + const init = () => { 35 + jq("#calendarCustom").fullCalendar({ 36 + views: { 37 + month: { 38 + columnFormat: "ddd", 39 + titleFormat: "MMMM YYYY", 40 + buttonText: "month", 41 + }, 42 + monthCols: { 43 + columnFormat: "MMM", 44 + titleFormat: "YYYY", 45 + buttonText: "year", 46 + }, 47 + }, 48 + timeFormat: "h(:mm)t", 49 + axisFormat: "h(:mm)t", 50 + allDayText: "All day", 51 + eventSources: [ 52 + "/bin/get/MoccaCalendar/Code/JSONService?xpage=plain&outputSyntax=plain&calendarDoc=Main.WebHome&filter=wiki&classname=MoccaCalendar.MoccaCalendarEventClass&startfield=startDate&endfield=endDate&durationfield=&xpage=plain&outputSyntax=plain&classname=&startfield=datetime&endfield=&durationfield=&extraFields=", 53 + ], 54 + header: { 55 + left: "prev,next today", 56 + center: "title", 57 + right: "month,monthCols", 58 + }, 59 + timeFormat: "H:mm", 60 + defaultView: "month", 61 + firstDay: "1", 62 + minTime: "8:00", 63 + maxTime: "23:00", 64 + defaultDate: "2024-11-06", 65 + editable: false, 66 + eventDataTransform: event => { 67 + if (event.url.split("/")[4] === "Holidays") event.rendering = "background"; 68 + return event; 69 + }, 70 + eventRender: function (event, element) { 71 + // Render augmentation hook, use: event.html 72 + }, 73 + }); 74 + }; 75 + 76 + jq(document).ready(init); 77 +}); 78 + - Use this extension
-
... ... @@ -1,1 +1,1 @@ 1 - currentPage1 +onDemand
- XWiki.StyleSheetExtension[0]
-
- Caching policy
-
... ... @@ -1,0 +1,1 @@ 1 +default - Code
-
... ... @@ -1,0 +1,5 @@ 1 +#calendarCustom { 2 + td.fc-sat, td.fc-sun { 3 + background-color: #f5f5f5; 4 + } 5 +} - Content Type
-
... ... @@ -1,0 +1,1 @@ 1 +LESS - Parse content
-
... ... @@ -1,0 +1,1 @@ 1 +No - Use this extension
-
... ... @@ -1,0 +1,1 @@ 1 +currentPage