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 33.1 by bougault on 2021/04/12 13:43

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 25.1 10 {{/velocity}}
11
12 {{velocity wiki="false"}}
13 ## If AJAX call
14 #if("$!request.outputSyntax" != '')
15 $response.setContentType('application/json')
16 #end
17 ##set($MyJsonData = {'greeting': 'Hello', 'location': 'World'})
18 ##$jsontool.serialize($collabs)
bougault 21.1 19 #foreach($collab of $collabs)
20 #set($highlight = $xwiki.getDocument($collab))
21 #set($collabId = $highlight.getValue('collab_id'))
22 #set($collabURL = '/bin/view/Collabs/'+$collabId)
23 #set($hasPicture = $highlight.getAttachment('highlight.png').isImage())
24 {
bougault 28.1 25 "title": "$highlight.getTitle()",
bougault 32.1 26 "content": "$highlight.getContent()",
bougault 33.1 27 #if($hasPicture)
bougault 32.1 28 "image": "$highlight.getAttachmentURL('highlight.png')",
bougault 33.1 29 #end
bougault 26.1 30 }#if( $foreach.hasNext ), #end
bougault 21.1 31 #end
bougault 31.1 32 ])
bougault 21.1 33
bougault 26.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}}