From version 1.1 >
edited by Administrator
on 2015/07/06 22:28
To version < 2.1 >
edited by Sebastian Sams
on 2015/11/04 17:28
>
Change comment: Install extension [org.xwiki.platform:xwiki-platform-appwithinminutes-ui-7.2]

Summary

Details

Page properties
Author
... ... @@ -1,1 +1,1 @@
1 -XWiki.Admin
1 +XWiki.ssams
Content
... ... @@ -22,19 +22,26 @@
22 22   {{/html}}
23 23  #end
24 24  
25 -#macro(getAppDescriptor $appName)
25 +#macro(getAppDescriptor $appReference)
26 26   #set($appDescriptorClassName = 'AppWithinMinutes.LiveTableClass')
27 27   #set($appDescriptorStatement = "from doc.object($appDescriptorClassName) as obj where doc.space = :space")
28 - #set($appDescriptors = $services.query.xwql($appDescriptorStatement).bindValue('space', $appName).execute())
28 + #set($localSpaceReference = $services.model.serialize($appReference, 'local'))
29 + #set($appDescriptors = $services.query.xwql($appDescriptorStatement).bindValue('space', $localSpaceReference).execute())
29 29   #if($appDescriptors.size() > 0)
30 30   #set($appDescriptor = $xwiki.getDocument($appDescriptors.get(0)))
31 31   #end
32 32  #end
33 33  
34 -#macro(processStep)
35 +#macro (processStep)
35 35   ## Check if the application already exists.
36 - #set($appName = $request.appName)
37 - #getAppDescriptor($appName)
37 + #if ($request.resolve == 'true')
38 + #set ($appReference = $services.model.resolveSpace($request.appName))
39 + #else
40 + #set ($appReference = $services.model.createSpaceReference($request.appName,
41 + $doc.documentReference.wikiReference))
42 + #end
43 + #set ($appName = $appReference.name)
44 + #getAppDescriptor($appReference)
38 38   #if($appDescriptor)
39 39   ## Edit an existing application. Use the configured class name.
40 40   #set($classStringRef = $appDescriptor.getObject($appDescriptorClassName).getProperty('class').value)
... ... @@ -45,21 +45,26 @@
45 45   #set($className = "#toXMLName($appName)")
46 46   #set($classRef = $services.model.createDocumentReference($doc.wiki, "${className}Code", "${className}Class"))
47 47   #end
48 - #set($queryString = 'wizard=true')
55 + #set($queryString = {'wizard': true})
49 49   #if(!$xwiki.exists($classRef))
50 - #set($classTitle = "$appName Class")
51 - #set($appHomeRef = $services.model.createDocumentReference($doc.wiki, $appName, 'WebHome'))
52 - #set($classParent = $services.model.serialize($appHomeRef))
53 - #set($queryString = "$queryString&editor=inline&template=AppWithinMinutes.ClassTemplate&parent=$escapetool.url($classParent)&title=$escapetool.url($classTitle)&AppWithinMinutes.MetadataClass_0_dataSpaceName=$escapetool.url($appName)")
57 + #set($appHomeRef = $services.model.resolveDocument('', 'default', $appReference))
58 + #set($discard = $queryString.putAll({
59 + 'editor': 'inline',
60 + 'template': 'AppWithinMinutes.ClassTemplate',
61 + 'parent': $services.model.serialize($appHomeRef),
62 + 'title': "$appName Class",
63 + 'AppWithinMinutes.MetadataClass_0_dataSpaceName': $appName
64 + }))
54 54   #end
55 - $response.sendRedirect($xwiki.getURL($classRef, 'edit', $queryString))
66 + $response.sendRedirect($xwiki.getURL($classRef, 'edit', $escapetool.url($queryString)))
56 56  #end
57 57  
58 58  #macro(validateAppName $appName)
59 - #getAppDescriptor("$!appName")
70 + #set ($appReference = $services.model.createSpaceReference($appName,
71 + $doc.documentReference.wikiReference))
72 + #getAppDescriptor($appReference)
60 60   #if($appDescriptor)
61 61   ## Edit an existing application.
62 - #set($appHomeRef = $appDescriptor.documentReference)
63 63   #set($classStringRef = $appDescriptor.getObject($appDescriptorClassName).getProperty('class').value)
64 64   ## The class string reference is relative to the document holding the application descriptor.
65 65   #set($appClassRef = $services.model.resolveDocument($classStringRef, 'explicit', $appDescriptor.documentReference))
... ... @@ -69,9 +69,9 @@
69 69   #if($className == '')
70 70   (% class="xErrorMsg" %)$services.localization.render('platform.appwithinminutes.appNameInvalidClassNameError')
71 71   #end
72 - #set($appHomeRef = $services.model.createDocumentReference($doc.wiki, $appName, 'WebHome'))
73 73   #set($appClassRef = $services.model.createDocumentReference($doc.wiki, "$!{className}Code", "$!{className}Class"))
74 74   #end
86 + #set($appHomeRef = $services.model.resolveDocument('', 'default', $appReference))
75 75   #set($appHomeURL = $stringtool.removeEnd($xwiki.getDocument($appHomeRef).getExternalURL(), 'WebHome'))
76 76   ; $services.localization.render('platform.appwithinminutes.appNamePreviewHomePageUrlLabel')
77 77   : {{{$!appHomeURL}}}
Copyright 2018 - Österreichisches Weltraum Forum. All rights reserved.