Changes for page Helpers

Last modified by Benjamin Fischer on 2025/06/17 11:57

From version 2.22
edited by Benjamin Fischer
on 2025/06/16 10:34
Change comment: There is no comment for this version
To version 2.15
edited by Benjamin Fischer
on 2025/06/03 16:19
Change comment: There is no comment for this version

Summary

Details

XWiki.JavaScriptExtension[0]
Code
... ... @@ -21,8 +21,8 @@
21 21   sortable: false,
22 22   };
23 23   });
24 - //if (tableId === "jobs")
25 - // conf.url += `&valid=${Date.now() - 30*24*3600e3}-`;
24 + if (tableId === "jobs")
25 + conf.url += `&valid=${Date.now() - 30*24*3600e3}-`;
26 26   tab.dataset.settings = JSON.stringify(conf);
27 27  
28 28   // column headers
... ... @@ -108,17 +108,8 @@
108 108   a.innerHTML = `<b class="wikiexternallink">${row.doc_title}</b>`;
109 109   row.doc_title = a.outerHTML;
110 110  
111 - const tgWords = row.topicGroup.split(" ");
112 - let o = 0;
113 - const tgItems = []
114 - for (const abbr in row.topicGroup_value.slice(1, -1).split(", ")) {
115 - tgItems.push(`<span title="${tgWords.slice(o, abbr.length).join(" ")}">${abbr}</span>`);
116 - o += abbr.length;
117 - }
118 - row.topicGroup = tgItems.join(" ");
119 -
120 120   row.doc_date = new Date(row.doc_date)?.toLocaleDateString() ?? row.doc_date.split(" ")[0];
121 - row.valid = row.valid_value ? new Date(row.valid_value)?.toLocaleDateString() ?? row.valid : "N/A";
112 + row.valid = new Date(row.valid_value)?.toLocaleDateString() ?? row.valid;
122 122   };
123 123  
124 124   livetableRowHook.materials = row => {
... ... @@ -209,24 +209,23 @@
209 209   ttApply({ memo: { tableId: tab.id }});
210 210   });
211 211  
212 - document.observe('xwiki:dom:loaded', () => {
213 - for (
214 - let e = document.querySelector(`#leftPanels a[href="${location.pathname.replace(/^(\/bin\/)[^\/]+(\/.+)/, "$1view$2")}"]`);
215 - e;
216 - e = e.parentElement
217 - ) switch(e.tagName) {
218 - case "UL":
219 - e = e.previousElementSibling;
220 - if (!e) return;
221 - case "SPAN":
222 - e.style.textDecoration = "underline";
223 - break;
224 - case "LI":
225 - e.classList.add("open");
226 - break;
227 - case "DIV":
228 - return;
229 - }
203 + document.addEventListener("load", () => {
204 + for (let e = document.querySelector(`#leftPanels a[href="${location.pathname.replace(/^(\/bin\/)[^\/]+(\/.+)/, "$1view$2")}"]`); e; e = e.parentElement)
205 + for(const c of e.classList)
206 + switch(c) {
207 + case "xDropdown":
208 + e.classList.add("open");
209 + break;
210 + case "wikilink":
211 + e.style.textDecoration = "underline";
212 + break;
213 + case "xDropdown-menu":
214 + const s = e.previousElementSibling?.firstElementChild?.style;
215 + if (s) s.textDecoration = "underline";
216 + break;
217 + case "panels":
218 + return;
219 + }
230 230   });
231 231  })());
232 232