Changes for page Macros

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

From version 1.1
edited by Jip-jan Alunkel
on March 08, 17:19
Change comment: There is no comment for this version
To version 2.6
edited by Jip-jan Alunkel
on March 24, 15:09
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -1,0 +1,55 @@
1 +
2 +{{velocity}}
3 +
4 +#set($localitySelectElement = '{
5 + "id" : "locality",
6 + "type" : "select",
7 + "required" : true,
8 + "label" : "Locality of the main complaint",
9 + "aria-label" : "Select the locality",
10 + "data-error-response-type" : "use_label_defined_1",
11 + "data-set-space" : "true",
12 + "placeholder" : "cases.word.locality_select.placeholder",
13 + "space-reference" : "cases",
14 + "help-block" : "In which physiological or psychological epicenter can the main complaint be placed? Select the best fitting option from this list."
15 +}')
16 +
17 +#macro(createSelectElement $elementDataObj)
18 + #set($requiredAttributes = 'aria-required="false"')
19 + #if($elementDataObj.required == true)
20 + #set($requiredAttributes = 'aria-required="true" required="required"')
21 + <p class="required">
22 + #end
23 + <label for="${elementDataObj.id}_select">
24 + $elementDataObj.label
25 + <span class="input-wrap select-wrap">
26 + <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">
27 + <option value="" disabled="" selected="" hidden="hidden">$services.localization.render('${elementDataObj.placeholder}')</option>
28 + #set ($spaceRef = $elementDataObj.space-reference)
29 + #set ($spaceExcludeRef = "${spaceRef}.Code")
30 + #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"))
31 + #set($query = $query.bindValue('space').literal("${spaceRef}.").anyChars())
32 + #set($query = $query.bindValue('spaceExclude').literal("${spaceExcludeRef}").query())
33 + #set($results = $query.addFilter('unique').execute())
34 + #foreach ($item in $results)
35 + #set ($document = $xwiki.getDocument($item))
36 + <option value="$document.space">$document.getTitle()</option>
37 + #end
38 + </select>
39 + <span id="${elementDataObj.id}_helpBlock" class="help-block">${elementDataObj.help-block}</span>
40 + #if($elementDataObj.required == true)
41 + <span class="required-input-field" title="Required input"></span>
42 + <span role="alert" class="form-not-valid-tip"></span>
43 + #end
44 + </span>
45 + </label>
46 + #if($elementDataObj.required == true)
47 + </p>
48 + #end
49 +#end
50 +
51 +#createSelectElement($localitySelectElement)
52 +$localitySelectElement.id
53 +
54 +{{/velocity}}
55 +