Changes for page Highlighted Collabs
Last modified by bougault on 2021/04/12 17:00
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -1,18 +1,41 @@ 1 +{{velocity output="no"}} 2 +$xwiki.ssx.use('Collaboratory.Apps.HighlightedCollabs.Code.HighlightedCollabsMacro') 3 +#set($query = $services.query.xwql("from doc.object(Collaboratory.Apps.HighlightedCollabs.Code.HighlightedCollabsClass) as collab where collab.collab_id not like '' and collab.featured in (:featured)")) 4 +#if("$!request.featured" == "true") 5 + #set($featuredFilter = [1]) 6 +#else 7 + #set($featuredFilter = [1, 0]) 8 +#end 9 +#set($collabs = $query.bindValue('featured', $featuredFilter).execute()) 10 +{{/velocity}} 11 + 1 1 {{velocity wiki="false"}} 13 +## If AJAX call 2 2 #if("$!request.outputSyntax" != '') 3 3 $response.setContentType('application/json') 16 +#end 17 +##set($MyJsonData = {'greeting': 'Hello', 'location': 'World'}) 18 +##$jsontool.serialize($collabs) 4 4 5 -{ 6 -"greeting" : "Hello", 7 -"location": "World" 8 - 9 -} 10 -#stop 20 +[ 21 +#foreach($collab of $collabs) 22 + #set($highlight = $xwiki.getDocument($collab)) 23 + #set($collabId = $highlight.getValue('collab_id')) 24 + #set($collabURL = '/bin/view/Collabs/'+$collabId) 25 + #set($hasPicture = $highlight.getAttachment('highlight.png').isImage()) 26 + { 27 + "title": "$highlight.getTitle()" 28 + }, 11 11 #end 12 - {{/velocity}}30 +] 13 13 32 +## In order to ensure the generated JSON is valid it is recommanded to 33 +## build the JSON in memory (using Velocity/Java maps, arrays and basic types) 34 +## and then serialize it with $jsontool.serialize method. 35 +## Usage (from Marius: http://xwiki.markmail.org/message/wsvaj4leg5atufwd): 36 +## #set($array = [1, 2, 3]) 37 +## $jsontool.serialize($array) 38 +## #set($map = {'enabled': true, 'color': 'yellow', 'count': 13}) 39 +## $jsontool.serialize($map) 14 14 15 -get the list of highlighted Collabs 16 - 17 - 18 -[[/bin/get/Collabs/public-json-data/Highlighted%20Collabs/?xpage=plain&outputSyntax=plain>>https://wiki-dev.ebrains.eu/bin/get/Collabs/public-json-data/Highlighted%20Collabs/?xpage=plain&outputSyntax=plain]] 41 +{{/velocity}}