0 Votes

Wiki source code of AdminSection

Last modified by Ryan C on 2025/03/06 18:00

Show last authors
1 {{velocity output="false"}}
2 #macro (copyObject $sourceDoc $targetDoc $className)
3 #set ($sourceObj = $sourceDoc.getObject($className))
4 #set ($targetObj = $targetDoc.getObject($className, true))
5 #foreach ($propName in $sourceObj.propertyNames)
6 #set ($discard = $targetObj.set($propName, $sourceObj.getValue($propName)))
7 #end
8 #end
9
10 #macro (displayPDFExportConfigForm)
11 {{html clean="false"}}
12 #set ($configDoc = $xwiki.getDocument('XWiki.PDFExport.Configuration'))
13 <form id="pdfExportConfig" method="post" action="$configDoc.getURL('save')">
14 #displayPDFExportStatus()
15 <fieldset>
16 <legend>
17 $escapetool.xml($services.localization.render('export.pdf.admin.configuration'))
18 </legend>
19 #if ($configDoc.isNew())
20 ## Copy the configuration object from the template.
21 #set ($templateDoc = $xwiki.getDocument('XWiki.PDFExport.ConfigurationTemplate'))
22 #copyObject($templateDoc $configDoc 'XWiki.PDFExport.ConfigurationClass')
23 ## We still need to specify the template when we save because otherwise the configuration object is not added
24 ## (the save action only updates existing objects).
25 <input type="hidden" name="template" value="$templateDoc.fullName" />
26 ## Make sure the configuration page is created as hidden.
27 <input type="hidden" name="xhidden" value="1" />
28 #end
29 <input type="hidden" name="form_token" value="$!services.csrf.token" />
30 <input value="$escapetool.xml($services.localization.render('export.pdf.admin.saveComment'))"
31 type="hidden" name="comment" />
32 $services.display.content($configDoc)
33 <div>
34 <input class="btn btn-primary" type="submit" name="action_saveandcontinue"
35 value="$escapetool.xml($services.localization.render('admin.save'))" />
36 #set ($resetURL = $configDoc.getURL('delete', $escapetool.url({
37 'confirm': 1,
38 'form_token': $services.csrf.token,
39 'xredirect': "$request.requestURI?$!request.queryString"
40 })))
41 <a class="btn btn-default" href="$resetURL"
42 title="$escapetool.xml($services.localization.render('export.pdf.admin.reset.hint'))"
43 data-confirmation="$escapetool.xml($services.localization.render('export.pdf.admin.reset.confirmation'))">
44 $escapetool.xml($services.localization.render('export.pdf.admin.reset'))
45 </a>
46 </div>
47 </fieldset>
48 </form>
49 {{/html}}
50 #end
51
52 #macro (spinner)
53 #if ($services.icon.currentIconSetName == 'Font Awesome')
54 <span class="fa fa-spinner fa-spin"></span>
55 #else
56 <img src="$escapetool.xml($xwiki.getSkinFile('icons/xwiki/spinner.gif'))" />
57 #end
58 #end
59
60 #macro (displayPDFExportStatus)
61 <fieldset class="xform">
62 <legend>
63 $escapetool.xml($services.localization.render('export.pdf.admin.status'))
64 </legend>
65 <dl>
66 <dt>
67 <label>
68 $escapetool.xml($services.localization.render('export.pdf.generator.label'))
69 </label>
70 <span class="xHint">
71 $escapetool.xml($services.localization.render('export.pdf.generator.hint'))
72 </span>
73 </dt>
74 <dd class="pdfGeneratorStatus pdfGeneratorStatus-checking">
75 <div class="pdfGeneratorStatus-checking-message">
76 #spinner()
77 $escapetool.xml($services.localization.render('export.pdf.generator.checking'))
78 </div>
79 <div class="pdfGeneratorStatus-checkFailed-message">
80 $services.icon.renderHTML('error')
81 $escapetool.xml($services.localization.render('export.pdf.generator.checkFailed'))
82 </div>
83 <div class="pdfGeneratorStatus-available-message">
84 $services.icon.renderHTML('check')
85 $escapetool.xml($services.localization.render('export.pdf.generator.available'))
86 </div>
87 <div class="pdfGeneratorStatus-unavailable-message">
88 $services.icon.renderHTML('warning')
89 $escapetool.xml($services.localization.render('export.pdf.generator.unavailable'))
90 </div>
91 </dd>
92 </dl>
93 </fieldset>
94 #end
95 {{/velocity}}
96
97 {{velocity}}
98 #if ($xcontext.action == 'admin')
99 #displayPDFExportConfigForm()
100 #end
101 {{/velocity}}