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


Wiki source code of Highlighted Collabs

Version 24.1 by bougault on 2021/04/12 13:32

Hide last authors
bougault 19.1 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())
bougault 22.1 10 #macro(collablist $collabs)
bougault 21.1 11 [
12 #foreach($collab of $collabs)
13 #set($highlight = $xwiki.getDocument($collab))
14 #set($collabId = $highlight.getValue('collab_id'))
15 #set($collabURL = '/bin/view/Collabs/'+$collabId)
16 #set($hasPicture = $highlight.getAttachment('highlight.png').isImage())
17 {
18 "title": "$highlight.getTitle()"
19 },
20 #end
21 ]
bougault 22.1 22 #end
23 {{/velocity}}
bougault 21.1 24
bougault 22.1 25 {{velocity wiki="false"}}
26 ## If AJAX call
27 #if("$!request.outputSyntax" != '')
28 $response.setContentType('application/json')
29 #end
30 ##set($MyJsonData = {'greeting': 'Hello', 'location': 'World'})
31 ##$jsontool.serialize($collabs)
32
bougault 24.1 33 $jsontool.serialize(#collablist($collabs))
bougault 22.1 34
bougault 17.1 35 ## In order to ensure the generated JSON is valid it is recommanded to
36 ## build the JSON in memory (using Velocity/Java maps, arrays and basic types)
37 ## and then serialize it with $jsontool.serialize method.
38 ## Usage (from Marius: http://xwiki.markmail.org/message/wsvaj4leg5atufwd):
39 ## #set($array = [1, 2, 3])
40 ## $jsontool.serialize($array)
41 ## #set($map = {'enabled': true, 'color': 'yellow', 'count': 13})
42 ## $jsontool.serialize($map)
bougault 8.1 43
bougault 17.1 44 {{/velocity}}