Changes for page Macros

Last modified by Jip-jan Alunkel on April 15, 18:09

From version 2.5
edited by Jip-jan Alunkel
on March 24, 15:07
Change comment: There is no comment for this version
To version 2.25
edited by Jip-jan Alunkel
on March 24, 18:03
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -1,7 +2,6 @@
1 -
2 2  {{velocity}}
3 -
4 -#set($localitySelectElement = '{
2 +#*
3 +#set($localitySelectElement = {
5 5   "id" : "locality",
6 6   "type" : "select",
7 7   "required" : true,
... ... @@ -12,25 +12,33 @@
12 12   "placeholder" : "cases.word.locality_select.placeholder",
13 13   "space-reference" : "cases",
14 14   "help-block" : "In which physiological or psychological epicenter can the main complaint be placed? Select the best fitting option from this list."
15 -}')
14 +})
15 +*#
16 +halloo
17 +#macro(createFormElement $elementDataObj)
18 + #set($elementType = $elementDataObj.type)
19 + #if($elementType == "select")
20 + #createSelectElement($elementDataObj)
21 + #end
22 +#end
16 16  
17 -
18 -#macro(createSelectElement $elementDataObj)
24 +#macro(createSelectElement $O_elementData)
25 +{{html}}
19 19   #set($requiredAttributes = 'aria-required="false"')
20 - #if($elementDataObj.required == true)
27 + #if($O_elementData.required == true)
21 21   #set($requiredAttributes = 'aria-required="true" required="required"')
22 22   <p class="required">
23 23   #end
24 - <label for="${elementDataObj.id}_select">
25 - $elementDataObj.label
31 + <label for="${O_elementData.id}_select">
32 + $O_elementData.label
26 26   <span class="input-wrap select-wrap">
27 - <select class="form-select form-control" aria-label="${elementDataObj.aria-label}" aria-describedby="${elementDataObj.id}_helpBlock" $requiredAttributes data-error-response-type="${elementDataObj.data-error-response-type}" data-set-space="${elementDataObj.data-set-space}" name="${elementDataObj.id}_select" id="${elementDataObj.id}_select">
28 - <option value="" disabled="" selected="" hidden="hidden">$services.localization.render('${elementDataObj.placeholder}')</option>
29 - #set ($spaceRef = $elementDataObj.space-reference)
30 - #set ($spaceExcludeRef = "${spaceRef}.Code")
34 + <select class="form-select form-control" aria-label="${O_elementData.aria-label}" aria-describedby="${O_elementData.id}_helpBlock" $requiredAttributes data-error-response-type="${O_elementData.data-error-response-type}" data-set-space="${O_elementData.data-set-space}" name="${O_elementData.id}_select" id="${O_elementData.id}_select">
35 + <option value="" disabled="" selected="" hidden="hidden">$services.localization.render(${O_elementData.placeholder})</option>
31 31   #set($query = $services.query.xwql("from doc.object(AppWithinMinutes.MetadataClass) met where doc.space like :space and doc.space <> :spaceExclude order by met.dataSpaceName asc"))
32 - #set($query = $query.bindValue('space').literal("${spaceRef}.").anyChars())
33 - #set($query = $query.bindValue('spaceExclude').literal("${spaceExcludeRef}").query())
37 + #set ($spaceLikeRef = $O_elementData.space-reference.replaceAll('([%_!])', '!$1').concat('.%'))
38 + #set ($spaceExcludeRef = $O_elementData.space-reference.replaceAll('([%_!])', '!$1').concat('.Code'))
39 + #set($query = $query.bindValue('space', $spaceLikeRef))
40 + #set($query = $query.bindValue('spaceExclude', $spaceExcludeRef))
34 34   #set($results = $query.addFilter('unique').execute())
35 35   #foreach ($item in $results)
36 36   #set ($document = $xwiki.getDocument($item))
... ... @@ -37,19 +37,19 @@
37 37   <option value="$document.space">$document.getTitle()</option>
38 38   #end
39 39   </select>
40 - <span id="${elementDataObj.id}_helpBlock" class="help-block">${elementDataObj.help-block}</span>
41 - #if($elementDataObj.required == true)
47 + <span id="${O_elementData.id}_helpBlock" class="help-block">${O_elementData.help-block}</span>
48 + #if($O_elementData.required == true)
42 42   <span class="required-input-field" title="Required input"></span>
43 43   <span role="alert" class="form-not-valid-tip"></span>
44 44   #end
45 45   </span>
46 46   </label>
47 - #if($elementDataObj.required == true)
54 + #if($O_elementData.required == true)
48 48   </p>
49 49   #end
57 +{{/html}}
50 50  #end
51 51  
52 -#createSelectElement($localitySelectElement)
53 -
60 +##createFormElement($localitySelectElement)
54 54  {{/velocity}}
55 55