Changes for page Helpers
Last modified by Benjamin Fischer on 2025/06/17 11:57
From version 2.14
edited by Benjamin Fischer
on 2025/05/30 11:06
on 2025/05/30 11:06
Change comment:
There is no comment for this version
To version 1.20
edited by Benjamin Fischer
on 2025/05/15 17:17
on 2025/05/15 17:17
Change comment:
There is no comment for this version
Summary
-
Page properties (1 modified, 0 added, 0 removed)
-
Objects (1 modified, 0 added, 1 removed)
Details
- Page properties
-
- Content
-
... ... @@ -1,1 +1,0 @@ 1 -Contains JSX helpers for customized LiveTable views.
- XWiki.JavaScriptExtension[0]
-
- Code
-
... ... @@ -1,5 +1,6 @@ 1 +const livetableRowHook = {}; 2 + 1 1 ((() => { 2 - const livetableRowHook = {}; 3 3 const tagCols = {}; 4 4 5 5 document.observe('xwiki:livetable:loading', () => { ... ... @@ -21,33 +21,13 @@ 21 21 sortable: false, 22 22 }; 23 23 }); 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 29 - const tagIdxs = []; 30 30 tab.querySelectorAll(".xwiki-livetable-display-header .tagsCol").forEach( 31 - (v, i) => { 32 - v.textContent = tagCols[tableId][i][0]; 33 - tagIdxs.push(v.cellIndex); 34 - } 29 + (v, i) => v.textContent = tagCols[tableId][i][0] 35 35 ); 36 36 37 - // filter fileds for tags 38 - const tagFilterHelp = document.querySelector(".xwiki-livetable-tagcloud-container > h2")?.textContent ?? "Click on tag(s) to filter."; 39 - const filterCells = tab.querySelectorAll(".xwiki-livetable-display-header-filter"); 40 - for (let pos; (pos = tagIdxs.length - 1) >= 0;) { 41 - while (tagIdxs[pos] === tagIdxs[pos - 1] + 1) 42 - filterCells[tagIdxs[pos--]].remove(); 43 - const e = filterCells[tagIdxs[pos]]; 44 - e.colSpan = span = tagIdxs.length - pos; 45 - e.textContent = tagFilterHelp; 46 - e.style.verticalAlign = "middle"; 47 - e.style.textAlign = "center"; 48 - tagIdxs.splice(pos); 49 - } 50 - 51 51 // filter fields 52 52 tab.querySelectorAll(".xwiki-livetable-display-header-filter input[type=text]").forEach( 53 53 v => v.placeholder = "Filter ..." ... ... @@ -108,8 +108,7 @@ 108 108 a.innerHTML = `<b class="wikiexternallink">${row.doc_title}</b>`; 109 109 row.doc_title = a.outerHTML; 110 110 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; 92 + row.doc_date = row.doc_date.split(" ")[0]; 113 113 }; 114 114 115 115 livetableRowHook.materials = row => { ... ... @@ -153,41 +153,13 @@ 153 153 a.setAttribute("href", u.href); 154 154 155 155 row.doc_location = ol.outerHTML; 156 - row.date = new Date(row.date_value)?.toLocaleDateString(undefined, {year: "numeric", month: "numeric"}) ?? row.date; 157 157 }; 158 158 159 - const coopDetailsLabel = "Cooperation Details"; 160 - livetableRowHook.research_groups = row => { 161 - const a = new Element("a", { href: row.URL }); 162 - a.innerHTML = row.affiliation_value.split("\n").map((a, i) => i ? a : `<b class="wikiexternallink">${a}</b>`).join("<br/>"); 163 - a.title = row.doc_title; 164 - if (row.content !== "-") { 165 - let c = row.content; 166 - if (row.coopDetails !== "-") 167 - c = `${c}<br/><b>${coopDetailsLabel}:</b> ${row.coopDetails}`; 168 - a.dataset.content = c; 169 - a.dataset.toggle = "popover"; 170 - } 171 - row.affiliation = a.outerHTML; 172 - 173 - row.coop = row.coop.replace(/\b \.\.\. \b/g, " ...<br/>"); 174 - if (row.coopDetails !== "-") { 175 - const d = new Element("div"); 176 - d.innerHTML = row.coop; 177 - d.title = coopDetailsLabel; 178 - d.dataset.content = row.coopDetails; 179 - d.dataset.toggle = "popover"; 180 - row.coop = d.outerHTML; 181 - } 182 - 183 - row.doc_date = new Date(row.doc_date)?.toLocaleDateString(undefined, {year: "numeric", month: "numeric"}) ?? row.doc_date.split(" ")[0].split("/").slice(0, 2).join("/"); 184 - }; 185 - 186 186 require(['jquery', 'bootstrap'], function($) { 187 187 document.styleSheets[0].insertRule(`#mainContentArea .popover {max-width: 50%;}`); 188 188 189 189 const ttApply = ({ memo: { tableId } }) => { 190 - if (table Id)142 + if (tableid) 191 191 $(`#${tableId} [data-toggle="popover"]`).popover({ 192 192 html: true, 193 193 container: `#mainContentArea`,
- XWiki.StyleSheetExtension[0]
-
- Caching policy
-
... ... @@ -1,1 +1,0 @@ 1 -default - Code
-
... ... @@ -1,5 +1,0 @@ 1 -.xwiki-livetable-display-body > tr > td { 2 - &.date, &.doc_date, &.valid { 3 - word-break: normal; 4 - } 5 -} - Content Type
-
... ... @@ -1,1 +1,0 @@ 1 -LESS - Name
-
... ... @@ -1,1 +1,0 @@ 1 -Globale Styles - Parse content
-
... ... @@ -1,1 +1,0 @@ 1 -No - Use this extension
-
... ... @@ -1,1 +1,0 @@ 1 -always