| ... |
... |
@@ -1,11 +1,37 @@ |
|
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 |
+#macro(collablist $collabs) |
|
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 |
+] |
|
22 |
+#end |
|
23 |
+{{/velocity}} |
|
24 |
+ |
| 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) |
|
30 |
+##set($MyJsonData = {'greeting': 'Hello', 'location': 'World'}) |
|
31 |
+##$jsontool.serialize($collabs) |
| 8 |
8 |
|
|
33 |
+#collablist($collabs) |
|
34 |
+ |
| 9 |
9 |
## In order to ensure the generated JSON is valid it is recommanded to |
| 10 |
10 |
## build the JSON in memory (using Velocity/Java maps, arrays and basic types) |
| 11 |
11 |
## and then serialize it with $jsontool.serialize method. |