Changes for page Nice Display
Last modified by Benjamin Fischer on 2025/03/26 13:19
From version 45.11
edited by Benjamin Fischer
on 2025/03/26 10:48
on 2025/03/26 10:48
Change comment:
There is no comment for this version
To version 45.27
edited by Benjamin Fischer
on 2025/03/26 12:43
on 2025/03/26 12:43
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,13 +4,15 @@ 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')) 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 11 'URL': {"type": "hidden"}, 12 12 "content": {"type": "hidden"}, 13 - "coop": {}, 14 + "coopDetails": {"type": "hidden"}, 15 + "coop": {"html": true}, 14 14 "tags": {"sortable": false, "filterable": false, "html": true, "headerClass": "tagsCol", "aux": $ntrg_tagCols}, 15 15 "doc.date": {"filterable": false, "displayName": "Last Updated"}, 16 16 '_actions': {"actions":["view","edit"]} ... ... @@ -25,8 +25,8 @@ 25 25 'selectedColumn': 'doc.date', 26 26 'defaultOrder': 'desc' 27 27 }) 28 -#set ($columns = ['affiliation', 'URL', "content", "coop", "doc.date", '_actions']) 29 -#foreach ($ntrg_tagCol in $ntrg_tagCol) 30 +#set ($columns = ['affiliation', 'URL', "content", "coop", "coopDetails", "doc.date", '_actions']) 31 +#foreach ($ntrg_tagCol in $ntrg_tagCols) 30 30 #set ($discard = $columns.add(3, "tags")) 31 31 #end 32 32 #livetable("research_groups" $columns $columnsProperties $options) ... ... @@ -53,4 +53,3 @@ 53 53 1. click {{html}}<button class="btn btn-primary">Save & View</button>{{/html}} (bottom left) 54 54 1. update the Tags (bottom left) 55 55 56 -=== Demo Video - Coming Soon ===
- XWiki.JavaScriptExtension[0]
-
- Code
-
... ... @@ -1,6 +1,7 @@ 1 -/*! 2 -#[[*/ 3 -((tagCols = [["Tags", true]], tabName = "research_groups") => { 1 +(()=>{ 2 + const tabName = "research_groups"; 3 + const coopDetailsLabel = "Cooperation Details"; 4 + let tagCols; 4 4 5 5 document.observe('xwiki:livetable:loading', () => { 6 6 const mats = document.getElementById(tabName); ... ... @@ -8,6 +8,7 @@ 8 8 9 9 // coulmn data sources 10 10 const conf = JSON.parse(mats.dataset.settings); 12 + tagCols = (conf.columnDescriptors.tags ?? {aux: []}).aux ?? [["Tags", true]]; 11 11 tagCols.forEach(([name], i) => { 12 12 const cn = `tags-${i}`; 13 13 conf.columns.splice(conf.columns.indexOf("tags"), 1, cn); ... ... @@ -48,12 +48,24 @@ 48 48 a.innerHTML = row.affiliation_value.split("\n").map((a, i) => i ? a : `<b class="wikiexternallink">${a}</b>`).join("<br/>"); 49 49 a.title = row.doc_title; 50 50 if (row.content !== "-") { 51 - a.dataset.content = row.content; 53 + let c = row.content; 54 + if (row.coopDetails !== "-") 55 + c = `${c}<br/><b>${coopDetailsLabel}:</b> ${row.coopDetails}`; 56 + a.dataset.content = c; 52 52 a.dataset.toggle = "popover"; 53 53 } 54 - 55 55 row.affiliation = a.outerHTML; 56 56 61 + row.coop = row.coop.replace(/\b \.\.\. \b/g, " ...<br/>"); 62 + if (row.coopDetails !== "-") { 63 + const d = new Element("div"); 64 + d.innerHTML = row.coop; 65 + d.title = coopDetailsLabel; 66 + a.dataset.content = row.coopDetails; 67 + a.dataset.toggle = "popover"; 68 + row.coop = d.outerHTML; 69 + } 70 + 57 57 row.doc_date = row.doc_date.split(" ")[0].split("/").slice(0, 2).join("/"); 58 58 59 59 // tags ... ... @@ -82,5 +82,4 @@ 82 82 document.observe(`xwiki:livetable:${tabName}:displayComplete`, ttApply); 83 83 ttApply(); 84 84 }); 85 -/* ]]# */ 86 -})($jsontool.serialize($ntrg_tagCols), $jsontool.serialize($ntrg_tabName)); 99 +})(); - Parse content
-
... ... @@ -1,1 +1,1 @@ 1 - Yes1 +No