Changes for page Helpers

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

From version 2.12
edited by Benjamin Fischer
on 2025/05/27 13:10
Change comment: There is no comment for this version
To version 2.25
edited by Benjamin Fischer
on 2025/06/17 11:57
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
... ... @@ -80,8 +80,6 @@
80 80   lt.clearCache();
81 81   lt.showRows(1, lt.limit);
82 82   });
83 -
84 - debugger;
85 85  
86 86   }
87 87   });
... ... @@ -108,8 +108,15 @@
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 of row.topicGroup_value.slice(1, -1).split(", "))
115 + tgItems.push(`<span title="${tgWords.slice(o, o += abbr.length).join(" ")}">${abbr}</span>`);
116 + row.topicGroup = tgItems.join(", ");
117 +
111 111   row.doc_date = new Date(row.doc_date)?.toLocaleDateString() ?? row.doc_date.split(" ")[0];
112 - row.valid = new Date(row.valid_value)?.toLocaleDateString() ?? row.valid;
119 + row.valid = row.valid_value ? new Date(row.valid_value)?.toLocaleDateString() ?? row.valid : "N/A";
113 113   };
114 114  
115 115   livetableRowHook.materials = row => {
... ... @@ -199,5 +199,25 @@
199 199   for (const tab of document.querySelectorAll(".xwiki-livetable"))
200 200   ttApply({ memo: { tableId: tab.id }});
201 201   });
209 +
210 + document.observe('xwiki:dom:loaded', () => {
211 + for (
212 + let e = document.querySelector(`#leftPanels a[href="${location.pathname.replace(/^(\/bin\/)[^\/]+(\/.+)/, "$1view$2")}"]`);
213 + e;
214 + e = e.parentElement
215 + ) switch(e.tagName) {
216 + case "UL":
217 + e = e.previousElementSibling;
218 + if (!e) return;
219 + case "SPAN":
220 + e.style.textDecoration = "underline";
221 + break;
222 + case "LI":
223 + e.classList.add("open");
224 + break;
225 + case "DIV":
226 + return;
227 + }
228 + });
202 202  })());
203 203