Changes for page Home
Last modified by Benjamin Fischer on 2025/06/04 14:20
From version 72.33
edited by Benjamin Fischer
on 2024/11/06 14:26
on 2024/11/06 14:26
Change comment:
There is no comment for this version
To version 72.43
edited by Benjamin Fischer
on 2024/11/06 15:55
on 2024/11/06 15:55
Change comment:
There is no comment for this version
Summary
-
Objects (1 modified, 0 added, 0 removed)
Details
- XWiki.JavaScriptExtension[0]
-
- Code
-
... ... @@ -1,11 +1,7 @@ 1 1 require(["jquery", "fullcalendar"], function (jq) { 2 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 - } 3 + const E = (tag, ...childs) => { 4 + const attrs = childs[0]?.constructor === Object ? childs.shift() : {}; 9 9 const ret = Element(tag, attrs); 10 10 ret.append(...childs.flat()); 11 11 return ret; ... ... @@ -12,25 +12,31 @@ 12 12 }; 13 13 FC.defineView('monthCols', { 14 14 class: FC.View.extend({ 15 - renderSkeleton() { 16 - debugger; 11 + render() { 17 17 const chf = this.opt("columnFormat") ?? "MMM"; 18 - ret urn;19 - const months = Array(12).fill().map((_, month) => this.start.add({month}));13 + const start = this.start ?? FC.moment({year: FC.moment().year()}); 14 + const months = Array(12).fill().map((_, month) => start.clone().add({month})); 20 20 21 21 this.el.addClass("fc-month-cols-view").html( 22 22 E( 23 23 "table", 24 24 E("thead", {class: "fc-head"}, 25 - E("tr", months.map(m => E("t d", m.format(chf))))),20 + E("tr", E("th"), months.map(m => E("th", m.format(chf))))), 26 26 E("tbody", {class: "fc-body"}, 27 27 Array(31).fill().map((_, day) => E("tr", 28 - months.map(m => m.add({day})).map(d => E("td", {class: this.getDayClasses(d).join(" ")}, [d.toISOString()])))) 23 + E("th", {class: "fc-axis"}, `${day + 1}`), 24 + months.map(m => m.clone().add({day})).map(d => 25 + d.date() === day + 1 26 + ? E("td", {class: this.getDayClasses(d).join(" ")}, [d.format("dd")]) 27 + : E("td") 28 + ))) 29 29 ), 30 30 ) 31 31 ); 32 - 33 33 }, 33 + renderEvents(ev) { 34 + debugger; 35 + }, 34 34 }), 35 35 duration: { year: 1 }, 36 36 });