Changes for page Helpers

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

From version 2.5
edited by Benjamin Fischer
on 2025/05/27 12:25
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,6 +21,8 @@
21 21   sortable: false,
22 22   };
23 23   });
24 + if (tableId === "jobs")
25 + conf.url += `&valid=${Date.now() - 30*24*3600e3}-`;
24 24   tab.dataset.settings = JSON.stringify(conf);
25 25  
26 26   // column headers
... ... @@ -33,13 +33,16 @@
33 33   );
34 34  
35 35   // filter fileds for tags
38 + const tagFilterHelp = document.querySelector(".xwiki-livetable-tagcloud-container > h2")?.textContent ?? "Click on tag(s) to filter.";
36 36   const filterCells = tab.querySelectorAll(".xwiki-livetable-display-header-filter");
37 37   for (let pos; (pos = tagIdxs.length - 1) >= 0;) {
38 38   while (tagIdxs[pos] === tagIdxs[pos - 1] + 1)
39 - filterCells[pos--].remove();
40 - const e = filterCells[pos];
42 + filterCells[tagIdxs[pos--]].remove();
43 + const e = filterCells[tagIdxs[pos]];
41 41   e.colSpan = span = tagIdxs.length - pos;
42 - e.textContent = "Click on tag(s) to filter."
45 + e.textContent = tagFilterHelp;
46 + e.style.verticalAlign = "middle";
47 + e.style.textAlign = "center";
43 43   tagIdxs.splice(pos);
44 44   }
45 45  
... ... @@ -148,6 +148,7 @@
148 148   a.setAttribute("href", u.href);
149 149  
150 150   row.doc_location = ol.outerHTML;
156 + row.date = new Date(row.date_value)?.toLocaleDateString(undefined, {year: "numeric", month: "numeric"}) ?? row.date;
151 151   };
152 152  
153 153   const coopDetailsLabel = "Cooperation Details";
... ... @@ -193,5 +193,24 @@
193 193   for (const tab of document.querySelectorAll(".xwiki-livetable"))
194 194   ttApply({ memo: { tableId: tab.id }});
195 195   });
202 +
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 + }
220 + });
196 196  })());
197 197  
XWiki.StyleSheetExtension[0]
Caching policy
... ... @@ -1,0 +1,1 @@
1 +default
Code
... ... @@ -1,0 +1,5 @@
1 +.xwiki-livetable-display-body > tr > td {
2 + &.date, &.doc_date, &.valid {
3 + word-break: normal;
4 + }
5 +}
Content Type
... ... @@ -1,0 +1,1 @@
1 +LESS
Name
... ... @@ -1,0 +1,1 @@
1 +Globale Styles
Parse content
... ... @@ -1,0 +1,1 @@
1 +No
Use this extension
... ... @@ -1,0 +1,1 @@
1 +always