Changes for page Nice Display
Last modified by Benjamin Fischer on 2025/03/26 13:19
From version 45.21
edited by Benjamin Fischer
on 2025/03/26 12:25
on 2025/03/26 12:25
Change comment:
There is no comment for this version
To version 45.30
edited by Benjamin Fischer
on 2025/03/26 13:18
on 2025/03/26 13:18
Change comment:
There is no comment for this version
Summary
-
Page properties (1 modified, 0 added, 0 removed)
-
Objects (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -4,7 +4,8 @@ 4 4 #if ( $ntrg_tagCols == $null ) 5 5 #set( $ntrg_tagCols = [["Tags", true]] ) 6 6 #end 7 -#set ($discard = $xwiki.jsx.use('Research Groups.Nice Display.WebHome', {"minify": false})) 7 +#set ($shouldMinify = !$hasProgramming ) 8 +#set ($discard = $xwiki.jsx.use('Research Groups.Nice Display.WebHome', {"minify": $shouldMinify})) 8 8 9 9 #set ($columnsProperties = { 10 10 'affiliation': {"filterable":true, "sortable":true, "html":true}, ... ... @@ -11,7 +11,7 @@ 11 11 'URL': {"type": "hidden"}, 12 12 "content": {"type": "hidden"}, 13 13 "coopDetails": {"type": "hidden"}, 14 - "coop": {}, 15 + "coop": {"html": true}, 15 15 "tags": {"sortable": false, "filterable": false, "html": true, "headerClass": "tagsCol", "aux": $ntrg_tagCols}, 16 16 "doc.date": {"filterable": false, "displayName": "Last Updated"}, 17 17 '_actions': {"actions":["view","edit"]}
- XWiki.JavaScriptExtension[0]
-
- Code
-
... ... @@ -1,5 +1,19 @@ 1 1 (()=>{ 2 2 const tabName = "research_groups"; 3 + const coopDetailsLabel = "Cooperation Details"; 4 + const colTT = { 5 + "Community": [ 6 + "KAT - Astroparticle Physics", 7 + "KET - Elementary Particles Physics", 8 + "KfB - Accelerator Physics", 9 + "KFN - Research with neutrons", 10 + "KFN - Research with synchrotron radiation", 11 + "KFSI - Research with nuclear probes and ion beams", 12 + "KHuK - Hadron and nuclear physics", 13 + "RDS - German Observatory Council" 14 + ].join("\n"), 15 + "Cooperation": "...", 16 + }; 3 3 let tagCols; 4 4 5 5 document.observe('xwiki:livetable:loading', () => { ... ... @@ -26,6 +26,20 @@ 26 26 (v, i) => v.textContent = tagCols[i][0] 27 27 ); 28 28 43 + // column tooltips 44 + mats.querySelectorAll(".xwiki-livetable-display-header-text").forEach( 45 + el => { 46 + const t = el.textContent.trim(); 47 + const c = colTT[t] 48 + if (c) { 49 + el.title = t; 50 + el.dataset.content = c; 51 + el.dataset.toggle = "popover"; 52 + el.dataset.placement = "top"; 53 + } 54 + } 55 + ) 56 + 29 29 // handle clicks for tags 30 30 document.getElementById(`${tabName}-display`).addEventListener("click", ev => { 31 31 if (ev.button) return; // only left click ... ... @@ -49,12 +49,24 @@ 49 49 a.innerHTML = row.affiliation_value.split("\n").map((a, i) => i ? a : `<b class="wikiexternallink">${a}</b>`).join("<br/>"); 50 50 a.title = row.doc_title; 51 51 if (row.content !== "-") { 52 - a.dataset.content = row.content; 80 + let c = row.content; 81 + if (row.coopDetails !== "-") 82 + c = `${c}<br/><b>${coopDetailsLabel}:</b> ${row.coopDetails}`; 83 + a.dataset.content = c; 53 53 a.dataset.toggle = "popover"; 54 54 } 55 - 56 56 row.affiliation = a.outerHTML; 57 57 88 + row.coop = row.coop.replace(/\b \.\.\. \b/g, " ...<br/>"); 89 + if (row.coopDetails !== "-") { 90 + const d = new Element("div"); 91 + d.innerHTML = row.coop; 92 + d.title = coopDetailsLabel; 93 + d.dataset.content = row.coopDetails; 94 + d.dataset.toggle = "popover"; 95 + row.coop = d.outerHTML; 96 + } 97 + 58 58 row.doc_date = row.doc_date.split(" ")[0].split("/").slice(0, 2).join("/"); 59 59 60 60 // tags