0 Votes

Wiki source code of Panel Layout Update

Last modified by Ryan C on 2025/03/06 17:59

Show last authors
1 {{velocity}}
2 #set ($place = $request.place)
3 ##
4 ## Get the preferences document where the new layout must be saved (XWiki.XWikiPreferences or Space.WebPreferences)
5 ##
6 #if ("$!{request.prefsdoc}" != '')
7 #set ($prefsdocument = $request.prefsdoc)
8 #else
9 #set ($prefsdocument = 'XWiki.XWikiPreferences')
10 #end
11 ##
12 ## Check to see if the current user has admin rights on the current preferences document.
13 ##
14 #if (!$xwiki.hasAccessLevel('admin', $xcontext.user, $prefsdocument))
15 {{html clean="false"}}
16 #xwikimessageboxstart($services.localization.render('panelwizard.placemanager') $services.localization.render('panelwizard.notadmininplace', [$escapetool.html($place)]))
17 #xwikimessageboxend()
18 {{/html}}
19 #elseif ("$!request.xpage" == 'plain')
20 ## Set the current panel layout.
21 #if ("$!place" == '')
22 #set ($prefsdoc = $xwiki.getDocument($prefsdocument))
23 #else
24 #set ($prefsdoc = $xwiki.getDocument("${place}:${prefsdocument}"))
25 #end
26 #set ($discard = $prefsdoc.use('XWiki.XWikiPreferences'))
27 #set ($leftPanels = $request.leftPanels)
28 #set ($rightPanels = $request.rightPanels)
29 #set ($showLeftPanels = $request.showLeftPanels)
30 #set ($showRightPanels = $request.showRightPanels)
31 #set ($leftPanelsWidth = $request.leftPanelsWidth)
32 #set ($rightPanelsWidth = $request.rightPanelsWidth)
33 #if ($leftPanels)
34 #set ($discard = $prefsdoc.set('leftPanels', $leftPanels))
35 #end
36 #if ($showLeftPanels)
37 #set ($discard = $prefsdoc.set('showLeftPanels', $showLeftPanels))
38 #end
39 #if ($leftPanelsWidth)
40 #set ($discard = $prefsdoc.set('leftPanelsWidth', $leftPanelsWidth))
41 #end
42 #if ($rightPanels)
43 #set ($discard = $prefsdoc.set('rightPanels', $rightPanels))
44 #end
45 #if ($showRightPanels)
46 #set ($discard = $prefsdoc.set('showRightPanels', $showRightPanels))
47 #end
48 #if ($rightPanelsWidth)
49 #set ($discard = $prefsdoc.set('rightPanelsWidth', $rightPanelsWidth))
50 #end
51 #if (${services.csrf.isTokenValid("$!{request.getParameter('form_token')}")})
52 #set ($ok = $prefsdoc.save($services.localization.render('panelwizard.save.versionComment', true)))
53 #else
54 ## CSRF protection
55 $response.sendRedirect("$!{services.csrf.getResubmissionURL()}")
56 #end
57 SUCCESS
58 #else
59
60 = $services.localization.render('panelwizard.panellayoutupdate') =
61
62 {{warning}}$services.localization.render('panelwizard.nodirectaccess', ['[[Panel Wizard>>Panels.PanelWizard]]']){{/warning}}
63 #end
64 {{/velocity}}