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.

MembershipJson - HBP Wiki

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


Changes for page MembershipJson

Last modified by bougault on 2022/03/18 14:34

From version 3.12
edited by bougault
on 2022/03/17 14:32
Change comment: There is no comment for this version
To version 3.28
edited by bougault
on 2022/03/18 12:43
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -1,25 +1,81 @@
1 -{{velocity wiki="false"}}
2 -##$response.setContentType('application/json')
3 -##{
4 -##"greeting" : "Hello",
5 -##"location": "World"
6 -##}
7 -
8 -##set($memberships = $services.query.xwql("select doc.title from Document doc where doc.className = 'XWiki.XWikiUsers'").execute())
1 +{{velocity output="false"}}
2 +$response.setContentType('application/json')
9 9  #set($query = $services.query.xwql("from doc.object(Collaboratory.Apps.Membership.MembershipRequest.Code.MembershipRequestClass) as requests"))
10 10  #set($memberships = $query.execute())
5 +{{/velocity}}
6 +{{velocity wiki="false"}}
11 11  {
12 - row: [
13 - #foreach($membershipDoc of $memberships)
14 - #set($m = $xwiki.getDocument($membershipDoc))
15 - {
16 - title: "$m.title",
17 - target: "$m.target",
18 - username: "$m.username.name",
19 - status: "$m.status",
20 - date: "$m.date"
21 - }#if( $foreach.hasNext ), #end
22 - #end
8 + "row": [
9 + ##foreach($membershipDoc of $memberships)
10 + ##set($m = $xwiki.getDocument($membershipDoc))
11 + ##{
12 + ##hello: "world"
13 + ##"title": "$m.title",
14 + ##"target": "$m.target",
15 + ##username: '$m.username',
16 + ##"status": "$m.status",
17 + ##"date": "$m.date"
18 + ##}#if( $foreach.hasNext ), #end
19 + ##end
23 23   ]
24 24  }
25 25  {{/velocity}}
23 +{{velocity wiki="false"}}
24 +#if("$!{request.xpage}" == 'plain')
25 + $response.setContentType('application/json')
26 +#end
27 +##==============================
28 +## Offset = item # at which to start displaying data
29 +##==============================
30 +#set($offset = $numbertool.toNumber($request.get('offset')))
31 +## offset starts from 0 in velocity and 1 in javascript
32 +#set($offset = $offset - 1)
33 +#if($offset < 0)
34 + #set($offset = 0)
35 +#end
36 +##==================
37 +## Limit = # of items to display
38 +##==================
39 +#set($limit = $numbertool.toNumber($request.get('limit')))
40 +##==================
41 +## Tag = one parameter per tag
42 +##==================
43 +#if($request.tag)
44 + #foreach($tag in $request.getParameterValues('tag'))
45 + ## TODO: Add code to filter items based on the selected tags
46 + #end
47 +#end
48 +##==========
49 +## Sort direction
50 +##==========
51 +#set($order = "$!request.sort")
52 +#if($order != '')
53 + #set($orderDirection = "$!{request.get('dir').toLowerCase()}")
54 + #if("$!orderDirection" != '' && "$!orderDirection" != 'asc')
55 + #set($orderDirection = 'desc')
56 + #end
57 +#end
58 +## ===========
59 +## Filter Data here...
60 +## ===========
61 +## TODO: Add code to filter data
62 +## Each column can be filtered and the filter for a column can be retrieved with:
63 +## #set($filterValue = "$!{request.get(<columnname>)}")
64 +
65 +## ===
66 +## JSON
67 +## ===
68 +{
69 +"totalrows": 1,
70 +"matchingtags": {},
71 +"tags" : [],
72 +"returnedrows": 1,
73 +"offset": 1,
74 +"reqNo": $util.parseInt($request.reqNo),
75 +"rows": [{
76 + "doc_viewable" : true,
77 + "user" : "vincent",
78 + "message" : "my message"
79 +}]
80 +}
81 +{{/velocity}}