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
-
... ... @@ -14,6 +14,9 @@ 14 14 #if("$!request.outputSyntax" != '') 15 15 $response.setContentType('application/json') 16 16 #end 17 +##set($MyJsonData = {'greeting': 'Hello', 'location': 'World'}) 18 +##$jsontool.serialize($collabs) 19 + 17 17 [ 18 18 #foreach($collab of $collabs) 19 19 #set($highlight = $xwiki.getDocument($collab)) ... ... @@ -20,19 +20,19 @@ 20 20 #set($collabId = $highlight.getValue('collab_id')) 21 21 #set($collabURL = '/bin/view/Collabs/'+$collabId) 22 22 #set($hasPicture = $highlight.getAttachment('highlight.png').isImage()) 23 - #if($hasPicture) 24 - #set($picture = $highlight.getAttachmentURL('highlight.png')) 25 - #else 26 - #set($picture = "") 27 - #end 28 28 { 29 - "name"" "$highlight.getValue('collab_id')" 30 - "title": "$highlight.getTitle()", 31 - "description": "$highlight.getContent().replace('"', '\"')", 32 - "image": "$picture", 33 - "isPublic": true 34 - }#if( $foreach.hasNext ), #end 27 + "title": "$highlight.getTitle()" 28 + }, 35 35 #end 36 36 ] 37 37 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) 40 + 38 38 {{/velocity}}