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 verstecken
1: {{velocity}} 2: ############################# 3: ## GLOBALS 4: ############################# 5: #set ($wikiId = $doc.name.replaceAll('XWikiServer', '').toLowerCase()) 6: #set ($wiki = $services.wiki.getById($wikiId)) 7: #set ($descriptorObj = $doc.getObject('XWiki.XWikiServerClass')) 8: #set ($templateObj = $doc.getObject('WikiManager.WikiTemplateClass')) 9: #set ($aliases = $doc.getObjects('XWiki.XWikiServerClass')) 10: ############################# 11: ## CONTROLLER 12: ############################# 13: #controller() 14: #macro(controller) 15: #if ($doc.fullName == "XWiki.XWikiServerClassSheet" || $doc.fullName == "XWiki.XWikiServerClassTemplate") 16: = Document "$doc.name" = 17: #elseif ($request.action == 'create' && "$!request.domain" != '' && $request.domain.trim().length() > 0) 18: #createAlias() 19: #elseif ($request.action == 'delete' && "$!request.domain" != '' && $request.domain.trim().length() > 0) 20: #deleteAlias() 21: #elseif ($xcontext.action == 'edit') 22: #edit() 23: #else 24: #view() 25: #end 26: #end 27: ############################# 28: ## VIEW 29: ############################# 30: #macro(view) 31: #set($adminPageRef = $services.model.createDocumentReference($wiki.id, 'XWiki', 'XWikiPreferences')) 32: #set($adminPageLink = "[[$services.localization.render('platform.wiki.sheet.descriptor.admin')>>$adminPageRef]]") 33: {{translation key="platform.wiki.sheet.descriptor" parameters="${wiki.id},${adminPageLink}"/}} $adminPageLink 34: 35: {{toc /}} 36: #displaySettings() 37: #displayAliases() 38: #createAliasForm() 39: #end 40: ############################# 41: ## EDIT 42: ############################# 43: #macro(edit) 44: {{toc /}} 45: #displaySettings() 46: #displayAliases() 47: #end 48: ############################# 49: ## CREATE ALIAS 50: ############################# 51: #macro(createAlias) 52: #if (!${services.csrf.isTokenValid("$!{request.getParameter('form_token')}")}) 53: 54: {{error}}{{translation key="notallowed"/}}{{/error}} 55: 56: #elseif (!$wiki.aliases.contains($request.domain)) 57: #set ($alias = $doc.newObject("XWiki.XWikiServerClass")) 58: #set ($discard = $alias.set("server", $request.domain)) 59: #set ($discard = $alias.set("homepage", "Main.WebHome")) 60: #set ($discard = $doc.save()) 61: $response.sendRedirect($doc.getURL()) 62: #else 63: 64: {{error}}{{translation key="platform.wiki.sheet.erroraliasalreadynotexists" parameters="$request.domain"/}}{{/error}} 65: 66: #end 67: #end 68: ############################# 69: ## DELETE ALIAS 70: ############################# 71: #macro(deleteAlias) 72: #if (!${services.csrf.isTokenValid("$!{request.getParameter('form_token')}")}) 73: 74: {{error}}{{translation key="notallowed"/}}{{/error}} 75: 76: #elseif ($wiki.aliases.contains($request.domain)) 77: #set ($alias = $doc.getObject('XWiki.XWikiServerClass', 'server', $request.domain)) 78: #set ($removed = $doc.removeObject($alias)) 79: #set ($discard = $doc.save()) 80: $response.sendRedirect($doc.getURL()) 81: #else 82: 83: {{error}}{{translation key="platform.wiki.sheet.erroraliasdoesnotexists" parameters="$request.domain"/}}{{/error}} 84: 85: #end 86: #end 87: ############################# 88: ## DISPLAY SETTINGS 89: ############################# 90: #macro(displaySettings) 91: = {{translation key="platform.wiki.sheet.title.settings"/}} = 92: {{html wiki="true" clean="false"}} 93: <div class="xform"> 94: <dl> 95: #displayField('wikiprettyname', $descriptorObj) 96: #displayField('owner', $descriptorObj) 97: #displayField('secure', $descriptorObj) 98: #displayField('iswikitemplate', $templateObj) 99: #displayField('server', $descriptorObj) 100: #displayField('description', $descriptorObj) 101: #displayField('homepage', $descriptorObj) 102: </dl> 103: </div> 104: {{/html}} 105: #end 106: ############################# 107: ## DISPLAY FIELD 108: ############################# 109: #macro(displayField $fieldName $object) 110: #if ("$!object" != '') 111: <dt> 112: #if ($xcontext.action=='edit') 113: <label for="${object.xWikiClass.name}_${object.number}_${fieldName}"> 114: #else 115: <label> 116: #end 117: {{translation key="platform.wiki.sheet.prop.${fieldName}" /}}: 118: </label> 119: <span class="xHint">{{translation key="platform.wiki.sheet.desc.${fieldName}" /}}</span> 120: </dt> 121: <dd>$object.get($fieldName)</dd> 122: #end 123: #end 124: ############################# 125: ## DISPLAY ALIASES 126: ############################# 127: #macro(displayAliases) 128: = {{translation key="platform.wiki.sheet.title.viewaliases"/}} = 129: {{translation key="platform.wiki.sheet.aliases"/}} 130: #if ($aliases.size() > 1) 131: #foreach ($alias in $aliases) 132: #if ($velocityCount > 1) 133: == $alias.display('server', 'view') == 134: {{html wiki="true" clean="false"}} 135: <div class="xform"> 136: <dl> 137: #displayField('description', $alias) 138: #displayField('homepage', $alias) 139: </dl> 140: </div> 141: {{/html}} 142: #if ($xcontext.action == 'view') 143: #deleteButton($alias) 144: #end 145: #end 146: #end 147: #end 148: #end 149: ############################# 150: ## DELETE ALIAS BUTTON 151: ############################# 152: #macro(deleteButton $alias) 153: #if($xcontext.action == 'view') 154: 155: {{html}} 156: <form method="get" action="$doc.getURL('view')"> 157: <fieldset> 158: <input type="hidden" name="form_token" value="$!{services.csrf.getToken()}" /> 159: <input type="hidden" name="action" value="delete"/> 160: <input type="hidden" name="domain" value="$alias.server"/> 161: <input type="submit" class="button" value="$services.localization.render('delete')"/> 162: </fieldset> 163: </form> 164: {{/html}} 165: 166: #end 167: #end 168: ############################# 169: ## CREATE ALIAS FORM 170: ############################# 171: #macro(createAliasForm) 172: = {{translation key="platform.wiki.sheet.title.createnewalias"/}} = 173: 174: {{html}} 175: <form method="get" action="$doc.getURL('view')"> 176: <fieldset> 177: <input type="hidden" name="form_token" value="$!{services.csrf.getToken()}" /> 178: <input type="hidden" name="action" value="create"/> 179: <label for="inputdomain">$services.localization.render('platform.wiki.sheet.prop.server')</label>: 180: <input id="inputdomain" type="text" name="domain" class="wikialiasinput"/> 181: <input type="submit" class="button" value="$services.localization.render('create')"/> 182: </fieldset> 183: </form> 184: {{/html}} 185: 186: #end 187: {{/velocity}}