Wiki source code of AppsLiveTableResults


Show last authors
1 {{include reference="XWiki.LiveTableResultsMacros" /}}
2
3 {{velocity wiki="false"}}
4 #if($xcontext.action == 'get' && "$!{request.outputSyntax}" == 'plain')
5 $response.setContentType('application/json')
6 #set($map = {})
7 #gridresult_buildJSON("$!request.classname" $request.collist.split(',') $map)
8 ## Change the URL and permission for the edit and delete actions:
9 ## * edit action must trigger the AppWithinMinutes wizard.
10 ## * delete action must delete the application space.
11 #foreach($row in $map.get('rows'))
12 #set($rowDocRef = $services.model.resolveDocument($row.get('doc_fullName')))
13 #set($rowDoc = $xwiki.getDocument($rowDocRef))
14 #set($classFullName = $rowDoc.getObject('AppWithinMinutes.LiveTableClass').getProperty('class').value)
15 #set($classRef = $services.model.resolveDocument($classFullName))
16 ## Edit action
17 #if($row.get('doc_hasedit'))
18 ## Make sure to test edit rights on the application's class and not its homepage.
19 #set($discard = $row.put('doc_hasedit', $services.security.authorization.hasAccess('edit', $classRef)))
20 #end
21 #set($appQueryString = "appName=$escapetool.url($row.get('doc_space'))&resolve=true")
22 #set($discard = $row.put('doc_edit_url', $xwiki.getURL('AppWithinMinutes.CreateApplication', 'view',
23 $appQueryString)))
24 ## Delete action
25 #if($row.get('doc_hasdelete'))
26 ## Deleting an application requires space administration rights on both data and code spaces.
27 #set($hasDeleteData = $services.security.authorization.hasAccess('admin', $rowDocRef.lastSpaceReference))
28 #set($hasDeleteCode = $services.security.authorization.hasAccess('admin', $classRef.lastSpaceReference))
29 #set($hasDeleteApplication = $hasDeleteData && $hasDeleteCode)
30 #set($discard = $row.put('doc_hasdelete', $hasDeleteApplication))
31 #end
32 #set($discard = $row.put('doc_delete_url', $xwiki.getURL('AppWithinMinutes.DeleteApplication', 'view',
33 $appQueryString)))
34 #end
35 $jsontool.serialize($map)
36 #end
37 {{/velocity}}
This wiki is licensed under a Creative Commons 2.0 license
XWiki Enterprise 13.10.5 - Documentation