Changes for page Macros
Last modified by Jip-jan Alunkel on April 15, 18:09
From version 2.226
edited by Jip-jan Alunkel
on July 14, 17:49
on July 14, 17:49
Change comment:
Update document after refactoring.
To version 2.229
edited by Jip-jan Alunkel
on July 15, 16:29
on July 15, 16:29
Change comment:
Update document after refactoring.
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -115,7 +115,7 @@ 115 115 #end 116 116 117 117 #macro(createSelectElement $O_elementData $O_tagName) 118 - <select class="form-select form-control"#if($O_elementData.aria-label) aria-label="${O_elementData.aria-label}"#end#if($O_elementData.data-opener) data-opener="${O_elementData.data-opener}"#end aria-describedby="${O_elementData.id}_helpBlock"#if($O_elementData.required == "true") aria-required="true" required="required" data-error-response-type="${O_elementData.data-error-response-type}"#else aria-required="false"#end#if(${O_elementData.data-set-space}) data-set-space="${O_elementData.data-set-space}"#end#if($O_elementData.select-spaces-json) data-select-spaces-json="t rue"#end name="${O_elementData.id}" id="${O_elementData.id}">118 + <select class="form-select form-control"#if($O_elementData.aria-label) aria-label="${O_elementData.aria-label}"#end#if($O_elementData.data-opener) data-opener="${O_elementData.data-opener}"#end aria-describedby="${O_elementData.id}_helpBlock"#if($O_elementData.required == "true") aria-required="true" required="required" data-error-response-type="${O_elementData.data-error-response-type}"#else aria-required="false"#end#if(${O_elementData.data-set-space}) data-set-space="${O_elementData.data-set-space}"#end#if($O_elementData.data-select-spaces-to-json) data-select-spaces-to-json="${O_elementData.data-select-spaces-to-json}"#end name="${O_elementData.id}" id="${O_elementData.id}"> 119 119 #if($O_elementData.placeholder) 120 120 #if($O_elementData.select-json && $O_elementData.select-json.keySet().contains($O_elementData.value)) 121 121 #else ... ... @@ -162,7 +162,7 @@ 162 162 #set($result = $query.bindValue('space', $spaceLikeRef).bindValue('spaceExclude', $spaceExcludeRef).addFilter('unique').execute()) 163 163 164 164 ## Generate the select options from all child spaces that have the 'assets.pagemaker.pagemakerClass' XClass. 165 - ## The order is still random but the JSON can be extracted from the console with the 'select-spaces-json' attribute. 165 + ## The order is still random but the JSON can be extracted from the console with the 'select-spaces-to-json' attribute. 166 166 #foreach($item in $result) 167 167 #set($doc = $xwiki.getDocument($item)) 168 168 <option value="$doc.space">$doc.getTitle()</option> ... ... @@ -177,32 +177,30 @@ 177 177 #set($json = $jsontool.parse($jsoncontent)) 178 178 #end 179 179 #foreach($key in $json.keySet()) 180 - #if($O_elementData.select-json-spaces == "true") 180 + #if(!$isGuest && $O_elementData.select-json-to-spaces == "true") 181 181 #set($spaceDocTitle = $json.get($key)) 182 - #if(!$isGuest) 183 - #set($spaceDoc = $xwiki.getDocument("${key}.WebHome")) ## Fetch doc or create one if it does not exist by this name. 184 - #set($spaceXObj = $spaceDoc.getObject("assets.pagemaker.pagemakerClass", true)) ## Get or create the needed object. 185 - #set($order_error = ($spaceXObj.getProperty('pmSpaceOrder').value != $foreach.count)) 186 - #set($title_error = ($spaceDoc.getTitle() != $spaceDocTitle)) 187 - #if($spaceDoc.isNew()) ## Doc did not exist so spaceDoc needs a title and a default locale. 188 - #set($discard = $spaceDoc.setTitle($spaceDocTitle)) ## Title. 189 - #set($discard = $spaceDoc.setDefaultLocale("en")) ## Locale. 182 + #set($spaceDoc = $xwiki.getDocument("${key}.WebHome")) ## Fetch doc or create one if it does not exist by this name. 183 + #set($spaceXObj = $spaceDoc.getObject("assets.pagemaker.pagemakerClass", true)) ## Get or create the needed object. 184 + #set($order_error = ($spaceXObj.getProperty('pmSpaceOrder').value != $foreach.count)) 185 + #set($title_error = ($spaceDoc.getTitle() != $spaceDocTitle)) 186 + #if($spaceDoc.isNew()) ## Doc did not exist so spaceDoc needs a title and a default locale. 187 + #set($discard = $spaceDoc.setTitle($spaceDocTitle)) ## Title. 188 + #set($discard = $spaceDoc.setDefaultLocale("en")) ## Locale. 189 + #set($discard = $spaceXObj.set("pmSpaceOrder", $foreach.count)) ## Set the property with the (correct) value. 190 + #set($discard = $spaceDoc.save()) 191 + #else 192 + #if($title_error) ## Doc did exist but the title did not match with the JSON value. 193 + #set($discard = $spaceDoc.setTitle($spaceDocTitle)) 194 + #end 195 + #if($order_error) ## Either the property does not exist or the value is incorrect. 190 190 #set($discard = $spaceXObj.set("pmSpaceOrder", $foreach.count)) ## Set the property with the (correct) value. 197 + #end 198 + #if($title_error || $order_error) ## Save only if changed 191 191 #set($discard = $spaceDoc.save()) 192 - #else 193 - #if($title_error) ## Doc did exist but the title did not match with the JSON value. 194 - #set($discard = $spaceDoc.setTitle($spaceDocTitle)) 195 - #end 196 - #if($order_error) ## Either the property does not exist or the value is incorrect. 197 - #set($discard = $spaceXObj.set("pmSpaceOrder", $foreach.count)) ## Set the property with the (correct) value. 198 - #end 199 - #if($title_error || $order_error) ## Save only if changed 200 - #set($discard = $spaceDoc.save()) 201 - #end 202 202 #end 203 203 #end 204 204 #end 205 - 203 + <option value="$key"#if($O_elementData.value=="$key") selected="selected"#end>$json[$key]</option> 206 206 #end 207 207 #end 208 208 </select> ... ... @@ -220,7 +220,7 @@ 220 220 <input type="email" class="form-control full" name="${O_elementData.id}" id="${O_elementData.id}"#if($O_elementData.value) value="$O_elementData.value"#end pattern="^[A-Za-z0-9._+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,63}$" autocomplete="off"#if($O_elementData.placeholder) placeholder="${O_elementData.placeholder}"#end aria-describedby="${O_elementData.id}_helpBlock"#if($O_elementData.required == "true") aria-required="true" required="required" data-error-response-type="${O_elementData.data-error-response-type}"#else aria-required="false"#end#if($O_elementData.aria-label) aria-label="${O_elementData.aria-label}"#end#if($O_elementData.data-create-xobj) data-create-xobj="${O_elementData.data-create-xobj}"#end#if($O_elementData.data-xobj-classname) data-xobj-classname="${O_elementData.data-xobj-classname}"#end#if($O_elementData.data-xobj-fieldname) data-xobj-fieldname="${O_elementData.data-xobj-fieldname}"#end> 221 221 #end 222 222 #macro(createPasswordElement $O_elementData $O_tagName) 223 - <input type="password" class="form-control full" name="${O_elementData.id}" id="${O_elementData.id}"#if($O_elementData.value) value="$O_elementData.value"#end autocomplete="off"#if($O_elementData.placeholder) placeholder="${O_elementData.placeholder}"#end aria-describedby="${O_elementData.id}_helpBlock"#if($O_elementData.required == "true") aria-required="true" required="required" data-error-response-type="${O_elementData.data-error-response-type}"#else aria-required="false"#end#if($O_elementData.aria-label) aria-label="${O_elementData.aria-label}"#end> 221 + <input type="password" class="form-control full" name="${O_elementData.id}" id="${O_elementData.id}"#if($O_elementData.value) value="$O_elementData.value"#end autocomplete="off"#if($O_elementData.placeholder) placeholder="${O_elementData.placeholder}"#end aria-describedby="${O_elementData.id}_helpBlock"#if($O_elementData.required == "true") aria-required="true" required="required" data-error-response-type="${O_elementData.data-error-response-type}"#else aria-required="false"#end#if($O_elementData.aria-label) aria-label="${O_elementData.aria-label}"#end#if($O_elementData.data-pattern) data-pattern="${O_elementData.data-pattern}"#end><span class="preview"></span> 224 224 #end 225 225 #macro(createDateElement $O_elementData $O_tagName) 226 226 <input type="date" class="form-control full" name="${O_elementData.id}" id="${O_elementData.id}"#if($O_elementData.value) value="$O_elementData.value"#end#if($O_elementData.date-min) min="${O_elementData.date-min}"#end#if($O_elementData.date-max) max="${O_elementData.date-max}"#end autocomplete="off" aria-describedby="${O_elementData.id}_helpBlock" #if($O_elementData.required == "true") aria-required="true" required="required" data-error-response-type="${O_elementData.data-error-response-type}"#else aria-required="false"#end#if($O_elementData.aria-label) aria-label="${O_elementData.aria-label}"#end#if($O_elementData.data-create-xobj) data-create-xobj="${O_elementData.data-create-xobj}"#end#if($O_elementData.data-xobj-classname) data-xobj-classname="${O_elementData.data-xobj-classname}"#end #if($O_elementData.data-xobj-fieldname) data-xobj-fieldname="${O_elementData.data-xobj-fieldname}"#end>