Changes for page Home
Last modified by Benjamin Fischer on 2025/06/04 14:20
From version 72.45
edited by Benjamin Fischer
on 2024/11/07 11:55
on 2024/11/07 11:55
Change comment:
There is no comment for this version
To version 72.58
edited by Benjamin Fischer
on 2024/11/07 12:23
on 2024/11/07 12:23
Change comment:
There is no comment for this version
Summary
-
Objects (1 modified, 0 added, 0 removed)
Details
- XWiki.JavaScriptExtension[0]
-
- Code
-
... ... @@ -9,11 +9,25 @@ 9 9 const range = num => Array(num).fill().map((_, i) => i); 10 10 FC.defineView('monthCols', { 11 11 class: FC.View.extend({ 12 - render() {}, 12 + render() { 13 + console.debug("render"); 14 + }, 15 + renderSkeleton() { 16 + console.debug("renderSkeleton"); 17 + }, 13 13 renderEvents(events) { 19 + console.debug("renderEvents", events); 20 + debugger; 21 + try { 22 + this._renderFun(events); 23 + } catch (e) { 24 + console.exception(e); 25 + } 26 + }, 27 + _renderFun(events) { 14 14 const cf = this.opt("columnFormat") ?? "MMM"; 15 - const rf = this.opt("rowFormat") ?? " dd";16 - const df = this.opt("cellFormat") ?? "dd d";29 + const rf = this.opt("rowFormat") ?? "D"; 30 + const df = this.opt("cellFormat") ?? "dd"; 17 17 const wf = this.opt("weekFormat") ?? "w"; 18 18 const colspan = (df || wf) ? (1 + !!df + !!wf) : null; 19 19 ... ... @@ -29,46 +29,46 @@ 29 29 days.forEach((arr, day) => arr.push(E("th", {class: "fc-axis"}, ys.clone().add({day}).format(rf)))); 30 30 } 31 31 32 - for (const month inArray(12).fill()){46 + for (const month of range(12)) { 33 33 const ms = ys.clone().add({month}) 34 34 const me = ms.clone().add({month: 1}); 35 35 const md = me.diff(ms, "days"); 36 - const mv = yv.filter(t => ms.isBefore(t.end) ||t.start.isBefore(me));50 + const mv = yv.filter(t => ms.isBefore(t.end) && t.start.isBefore(me)); 37 37 38 38 head.push(E("th", {colspan}, ms.format(cf))); 39 39 40 40 const bgc = new Array(md); 41 41 42 - for ( let day=0; i <31; i++) {43 - if ( i< md) {56 + for (const day of range(31)) { 57 + if (day < md) { 44 44 const ds = ms.clone().add({day}); 45 45 const de = ds.clone().add({day: 1}); 46 46 47 47 const oc = []; 48 - while(mv[0]?.isBefore(de)) { 62 + while(mv[0]?.start.isBefore(de)) { 49 49 const v = mv.shift(); 50 - const d = Math.ceil(v.end.m in(me).diff(ds, "days", true));51 - if ( t.rendering == "background")52 - if ( t.color)53 - for ( let i=0;i<d;i++)54 - bgc[day + i] = t.color;64 + const d = Math.ceil(v.end.max(me).diff(ds, "days", true)); 65 + if (v.rendering == "background") 66 + if (v.color) 67 + for (const i of range(d)) 68 + bgc[day + i] = v.color; 55 55 else { 56 - const e = E("div", t.title);70 + const e = E("div", v.title); 57 57 e.style.height = `${100 * d}%`; 58 - if ( t.color) e.style.borderColor = e.style.backgroundColor =t.color;59 - if ( t.textColor) e.style.color =t.textColor;72 + if (v.color) e.style.borderColor = e.style.backgroundColor = v.color; 73 + if (v.textColor) e.style.color = v.textColor; 60 60 oc.push(e); 61 61 // TODO: soft-columns 62 62 } 63 63 } 64 64 65 - const da = {class: this.getDayClasses(d).join(" ")}; 66 - if (df) days[ i].push(E("td", da, ds.format(df)));79 + const da = {class: this.getDayClasses(ds).join(" ")}; 80 + if (df) days[day].push(E("td", da, ds.format(df))); 67 67 if (bgc[day]) da.style = `background-color: ${bgc[day]};`; 68 - days[ i].push(E("td", da, oc));69 - if (wf) days[ i].oush(E("td", ds.weekday() ? "" : ds.format(wf)));82 + days[day].push(E("td", da, oc)); 83 + if (wf) days[day].push(E("td", da, ds.weekday() ? "" : ds.format(wf))); 70 70 } else 71 - days[ i].push(E("td", {colspan}));85 + days[day].push(E("td", {colspan})); 72 72 } 73 73 } 74 74 ... ... @@ -80,9 +80,7 @@ 80 80 E("tbody", {class: "fc-body"}, days.map(d => E("tr", d))), 81 81 ) 82 82 ); 83 - 84 - //debugger; 85 - }, 97 + } 86 86 }), 87 87 duration: { year: 1 }, 88 88 });