Allgemeine Aktionen:
Anmelden
Registrieren
Start
▼
:
Wiki Verzeichnis
»
Bereich:
XWiki
»
Seite:
XWikiServerClassSheet
default
Aktionen:
Exportieren
▼
:
Als PDF exportieren
Als RTF exportieren
Als HTML exportieren
Weitere Aktionen
▼
:
Druckvorschau
Zeige den Quellcode
Willkommen bei bytebang
»
XWiki Bereich
»
Data types
»
XWiki Server Class
»
Sheet for XWikiServerClass
Wiki-Quellcode von
Sheet for XWikiServerClass
Zuletzt geändert von
Administrator
am 2014/06/29 19:30
Inhalt
·
Anhänge
(0)
·
Information
Zeilennummern anzeigen
{{velocity}} ############################# ## GLOBALS ############################# #set ($wikiId = $doc.name.replaceAll('XWikiServer', '').toLowerCase()) #set ($wiki = $services.wiki.getById($wikiId)) #set ($descriptorObj = $doc.getObject('XWiki.XWikiServerClass')) #set ($templateObj = $doc.getObject('WikiManager.WikiTemplateClass')) #set ($aliases = $doc.getObjects('XWiki.XWikiServerClass')) ############################# ## CONTROLLER ############################# #controller() #macro(controller) #if ($doc.fullName == "XWiki.XWikiServerClassSheet" || $doc.fullName == "XWiki.XWikiServerClassTemplate") = Document "$doc.name" = #elseif ($request.action == 'create' && "$!request.domain" != '' && $request.domain.trim().length() > 0) #createAlias() #elseif ($request.action == 'delete' && "$!request.domain" != '' && $request.domain.trim().length() > 0) #deleteAlias() #elseif ($xcontext.action == 'edit') #edit() #else #view() #end #end ############################# ## VIEW ############################# #macro(view) #set($adminPageRef = $services.model.createDocumentReference($wiki.id, 'XWiki', 'XWikiPreferences')) #set($adminPageLink = "[[$services.localization.render('platform.wiki.sheet.descriptor.admin')>>$adminPageRef]]") {{translation key="platform.wiki.sheet.descriptor" parameters="${wiki.id},${adminPageLink}"/}} $adminPageLink {{toc /}} #displaySettings() #displayAliases() #createAliasForm() #end ############################# ## EDIT ############################# #macro(edit) {{toc /}} #displaySettings() #displayAliases() #end ############################# ## CREATE ALIAS ############################# #macro(createAlias) #if (!${services.csrf.isTokenValid("$!{request.getParameter('form_token')}")}) {{error}}{{translation key="notallowed"/}}{{/error}} #elseif (!$wiki.aliases.contains($request.domain)) #set ($alias = $doc.newObject("XWiki.XWikiServerClass")) #set ($discard = $alias.set("server", $request.domain)) #set ($discard = $alias.set("homepage", "Main.WebHome")) #set ($discard = $doc.save()) $response.sendRedirect($doc.getURL()) #else {{error}}{{translation key="platform.wiki.sheet.erroraliasalreadynotexists" parameters="$request.domain"/}}{{/error}} #end #end ############################# ## DELETE ALIAS ############################# #macro(deleteAlias) #if (!${services.csrf.isTokenValid("$!{request.getParameter('form_token')}")}) {{error}}{{translation key="notallowed"/}}{{/error}} #elseif ($wiki.aliases.contains($request.domain)) #set ($alias = $doc.getObject('XWiki.XWikiServerClass', 'server', $request.domain)) #set ($removed = $doc.removeObject($alias)) #set ($discard = $doc.save()) $response.sendRedirect($doc.getURL()) #else {{error}}{{translation key="platform.wiki.sheet.erroraliasdoesnotexists" parameters="$request.domain"/}}{{/error}} #end #end ############################# ## DISPLAY SETTINGS ############################# #macro(displaySettings) = {{translation key="platform.wiki.sheet.title.settings"/}} = {{html wiki="true" clean="false"}} <div class="xform"> <dl> #displayField('wikiprettyname', $descriptorObj) #displayField('owner', $descriptorObj) #displayField('secure', $descriptorObj) #displayField('iswikitemplate', $templateObj) #displayField('server', $descriptorObj) #displayField('description', $descriptorObj) #displayField('homepage', $descriptorObj) </dl> </div> {{/html}} #end ############################# ## DISPLAY FIELD ############################# #macro(displayField $fieldName $object) #if ("$!object" != '') <dt> #if ($xcontext.action=='edit') <label for="${object.xWikiClass.name}_${object.number}_${fieldName}"> #else <label> #end {{translation key="platform.wiki.sheet.prop.${fieldName}" /}}: </label> <span class="xHint">{{translation key="platform.wiki.sheet.desc.${fieldName}" /}}</span> </dt> <dd>$object.get($fieldName)</dd> #end #end ############################# ## DISPLAY ALIASES ############################# #macro(displayAliases) = {{translation key="platform.wiki.sheet.title.viewaliases"/}} = {{translation key="platform.wiki.sheet.aliases"/}} #if ($aliases.size() > 1) #foreach ($alias in $aliases) #if ($velocityCount > 1) == $alias.display('server', 'view') == {{html wiki="true" clean="false"}} <div class="xform"> <dl> #displayField('description', $alias) #displayField('homepage', $alias) </dl> </div> {{/html}} #if ($xcontext.action == 'view') #deleteButton($alias) #end #end #end #end #end ############################# ## DELETE ALIAS BUTTON ############################# #macro(deleteButton $alias) #if($xcontext.action == 'view') {{html}} <form method="get" action="$doc.getURL('view')"> <fieldset> <input type="hidden" name="form_token" value="$!{services.csrf.getToken()}" /> <input type="hidden" name="action" value="delete"/> <input type="hidden" name="domain" value="$alias.server"/> <input type="submit" class="button" value="$services.localization.render('delete')"/> </fieldset> </form> {{/html}} #end #end ############################# ## CREATE ALIAS FORM ############################# #macro(createAliasForm) = {{translation key="platform.wiki.sheet.title.createnewalias"/}} = {{html}} <form method="get" action="$doc.getURL('view')"> <fieldset> <input type="hidden" name="form_token" value="$!{services.csrf.getToken()}" /> <input type="hidden" name="action" value="create"/> <label for="inputdomain">$services.localization.render('platform.wiki.sheet.prop.server')</label>: <input id="inputdomain" type="text" name="domain" class="wikialiasinput"/> <input type="submit" class="button" value="$services.localization.render('create')"/> </fieldset> </form> {{/html}} #end {{/velocity}}