Failed to execute template. Cause: [Access denied when checking [script] access to [xwiki:Collaboratory.UX.HbpSkin.WebHome] for user [xwiki:XWiki.Admin]]. Click on this message for details.

Highlighted Collabs - HBP Wiki

IAM21 instance, do not create collab nor modify a team, your changes will be lost


Changes for page Highlighted Collabs

Last modified by bougault on 2021/04/12 17:00

From version 18.1
edited by bougault
on 2021/04/12 13:21
Change comment: There is no comment for this version
To version 38.4
edited by bougault
on 2021/04/12 14:40
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -1,18 +1,38 @@
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"}}
2 2  ## If AJAX call
3 3  #if("$!request.outputSyntax" != '')
4 4   $response.setContentType('application/json')
5 5  #end
6 -#set($MyJsonData = {'greeting': 'Hello', 'location': 'World'})
7 -$jsontool.serialize($MyJsonData)
17 +[
18 +#foreach($collab of $collabs)
19 + #set($highlight = $xwiki.getDocument($collab))
20 + #set($collabId = $highlight.getValue('collab_id'))
21 + #set($collabURL = '/bin/view/Collabs/'+$collabId)
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 + {
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
35 +#end
36 +]
8 8  
9 -## In order to ensure the generated JSON is valid it is recommanded to
10 -## build the JSON in memory (using Velocity/Java maps, arrays and basic types)
11 -## and then serialize it with $jsontool.serialize method.
12 -## Usage (from Marius: http://xwiki.markmail.org/message/wsvaj4leg5atufwd):
13 -## #set($array = [1, 2, 3])
14 -## $jsontool.serialize($array)
15 -## #set($map = {'enabled': true, 'color': 'yellow', 'count': 13})
16 -## $jsontool.serialize($map)
17 -
18 18  {{/velocity}}