Changes for page Nice Display
Last modified by Benjamin Fischer on 2025/03/26 13:19
From version 45.7
edited by Benjamin Fischer
on 2025/03/26 10:11
on 2025/03/26 10:11
Change comment:
There is no comment for this version
To version 45.28
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
-
... ... @@ -1,12 +1,19 @@ 1 1 {{locationSearch width="100%;clear:both;" className="Research Groups.Code.Research GroupsClass" description="Search, including in excerpts."/}} 2 2 3 3 {{velocity}} 4 +#if ( $ntrg_tagCols == $null ) 5 +#set( $ntrg_tagCols = [["Tags", true]] ) 6 +#end 7 +#set ($shouldMinify = !$hasProgramming ) 8 +#set ($discard = $xwiki.jsx.use('Research Groups.Nice Display.WebHome', {"minify": $shouldMinify})) 9 + 4 4 #set ($columnsProperties = { 5 5 'affiliation': {"filterable":true, "sortable":true, "html":true}, 6 6 'URL': {"type": "hidden"}, 7 7 "content": {"type": "hidden"}, 8 - "coop": {}, 9 - "tags": {"sortable": false, "filterable": false, "html": true, "headerClass": "tagsCol"}, 14 + "coopDetails": {"type": "hidden"}, 15 + "coop": {"html": true}, 16 + "tags": {"sortable": false, "filterable": false, "html": true, "headerClass": "tagsCol", "aux": $ntrg_tagCols}, 10 10 "doc.date": {"filterable": false, "displayName": "Last Updated"}, 11 11 '_actions': {"actions":["view","edit"]} 12 12 }) ... ... @@ -20,8 +20,11 @@ 20 20 'selectedColumn': 'doc.date', 21 21 'defaultOrder': 'desc' 22 22 }) 23 -#set ($columns = ['affiliation', 'URL', "content", "tags", "coop", "doc.date", '_actions']) 24 -#livetable('research_groups' $columns $columnsProperties $options) 30 +#set ($columns = ['affiliation', 'URL', "content", "coop", "coopDetails", "doc.date", '_actions']) 31 +#foreach ($ntrg_tagCol in $ntrg_tagCols) 32 +#set ($discard = $columns.add(3, "tags")) 33 +#end 34 +#livetable("research_groups" $columns $columnsProperties $options) 25 25 {{/velocity}} 26 26 27 27 (% id="howto" %) ... ... @@ -45,4 +45,3 @@ 45 45 1. click {{html}}<button class="btn btn-primary">Save & View</button>{{/html}} (bottom left) 46 46 1. update the Tags (bottom left) 47 47 48 -=== Demo Video - Coming Soon ===
- XWiki.JavaScriptExtension[0]
-
- Code
-
... ... @@ -1,12 +1,7 @@ 1 -/*! 2 -#if ( $ntrg_tagCols == $null ) 3 -#set( $ntrg_tagCols = [["Tags", true]] ) 4 -#end 5 -#if ( $ntrg_tabName == $null ) 6 -#set( $ntrg_tabName = "research_groups" ) 7 -#end 8 -#[[*/ 9 -((tagCols = [["Tags", true]], tabName = "research_groups") => { 1 +(()=>{ 2 + const tabName = "research_groups"; 3 + const coopDetailsLabel = "Cooperation Details"; 4 + let tagCols; 10 10 11 11 document.observe('xwiki:livetable:loading', () => { 12 12 const mats = document.getElementById(tabName); ... ... @@ -14,6 +14,7 @@ 14 14 15 15 // coulmn data sources 16 16 const conf = JSON.parse(mats.dataset.settings); 12 + tagCols = (conf.columnDescriptors.tags ?? {aux: []}).aux ?? [["Tags", true]]; 17 17 tagCols.forEach(([name], i) => { 18 18 const cn = `tags-${i}`; 19 19 conf.columns.splice(conf.columns.indexOf("tags"), 1, cn); ... ... @@ -54,12 +54,24 @@ 54 54 a.innerHTML = row.affiliation_value.split("\n").map((a, i) => i ? a : `<b class="wikiexternallink">${a}</b>`).join("<br/>"); 55 55 a.title = row.doc_title; 56 56 if (row.content !== "-") { 57 - 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; 58 58 a.dataset.toggle = "popover"; 59 59 } 60 - 61 61 row.affiliation = a.outerHTML; 62 62 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 + d.dataset.content = row.coopDetails; 67 + d.dataset.toggle = "popover"; 68 + row.coop = d.outerHTML; 69 + } 70 + 63 63 row.doc_date = row.doc_date.split(" ")[0].split("/").slice(0, 2).join("/"); 64 64 65 65 // tags ... ... @@ -88,5 +88,4 @@ 88 88 document.observe(`xwiki:livetable:${tabName}:displayComplete`, ttApply); 89 89 ttApply(); 90 90 }); 91 -/* ]]# */ 92 -})($jsontool.serialize($ntrg_tagCols), $jsontool.serialize($ntrg_tabName)); 99 +})(); - Parse content
-
... ... @@ -1,1 +1,1 @@ 1 - Yes1 +No