Changes for page Macros

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

From version 2.27
edited by Jip-jan Alunkel
on March 25, 00:05
Change comment: There is no comment for this version
To version 2.28
edited by Jip-jan Alunkel
on March 26, 00:03
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -1,36 +1,70 @@
1 1  {{velocity}}
2 2  #macro(createFormElement $elementDataObj)
3 3   #set($elementType = $elementDataObj.type)
4 + #set($elementGroupName = "")
5 + #set($requiredAttributes = 'aria-required="false"')
6 + #set($requiredCSSClass = '')
7 + #set($addedCSSClass = '')
8 + #if($O_elementData.required == true)
9 + #set($requiredAttributes = 'aria-required="true" required="required" data-error-response-type="${O_elementData.data-error-response-type}"')
10 + #set($requiredCSSClass = ' class="required"')
11 + #end
4 4   #if($elementType == "select")
5 - #createSelectElement($elementDataObj)
6 - #elseif($elementType == "text")
7 - #createTextElement($elementDataObj)
8 - #elseif($elementType == "number")
9 - #elseif($elementType == "email")
10 - #elseif($elementType == "range")
11 - #elseif($elementType == "checkbox")
12 - #elseif($elementType == "radio")
13 + #set($addedCSSClass = " select-wrap")
14 + #set($elementGroupName = "select")
15 + #elseif($elementType == "text" || $elementType == "number" || $elementType == "range" || $elementType == "email")
16 + #set($elementGroupName = "input")
17 + #elseif($elementType == "checkbox" || $elementType == "radio")
18 + #set($elementGroupName = "checkradio")
13 13   #elseif($elementType == "textarea")
20 + #set($elementGroupName = "textarea")
14 14   #else
15 15   #set($hint = "This type of element does not exist, read the manual for more information about element types.")
16 16   #end
24 + #if($elementGroupName == "select" || $elementGroupName == "input" || $elementGroupName == "textarea")
25 + <p${requiredCSSClass}>
26 + <label for="${elementDataObj.id}_${elementGroupName}">
27 + $elementDataObj.label
28 + <span class="input-wrap${addedCSSClass}">
29 + #if($elementGroupName == "select")
30 + #createSelectElement($elementDataObj $elementGroupName $requiredAttributes)
31 + #elseif($elementGroupName == "textarea")
32 + #else
33 + #if($elementType == "text")
34 + #createTextElement($elementDataObj $elementGroupName)
35 + #elseif($elementType == "number")
36 + #elseif($elementType == "email")
37 + #elseif($elementType == "range")
38 + #end
39 + #end
40 + #if($elementDataObj.help-block != "")
41 + <span id="${elementDataObj.id}_helpBlock" class="help-block">${elementDataObj.help-block}</span>
42 + #end
43 + #if($elementDataObj.required == true)
44 + <span class="required-input-field" title="Required input"></span>
45 + <span role="alert" class="form-not-valid-tip"></span>
46 + #end
47 + </span>
48 + </label>
49 + </p>
50 + #end
51 + #if($elementGroupName == "checkradio")
52 + #if($elementType == "checkbox")
53 + #elseif($elementType == "radio")
54 + #end
55 + #end
56 + #if($hint != "")
57 + <p class="box errormessage">${hint}</p>
58 + #end
17 17  #end
18 18  
19 -#macro(createSelectElement $O_elementData)
61 +#macro(createSelectElement $O_elementData $O_groupName $O_requiredAttributes)
20 20  {{html}}
21 - #set($requiredAttributes = 'aria-required="false"')
22 - #if($O_elementData.required == true)
23 - #set($requiredAttributes = 'aria-required="true" required="required"')
24 - <p class="required">
25 - #end
26 - <label for="${O_elementData.id}_select">
27 - $O_elementData.label
28 - <span class="input-wrap select-wrap">
29 - <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">
63 + <select class="form-select form-control" aria-label="${O_elementData.aria-label}" aria-describedby="${O_elementData.id}_helpBlock" ${O_requiredAttributes}data-set-space="${O_elementData.data-set-space}" name="${O_elementData.id}_${groupName}" id="${O_elementData.id}_${groupName}">
30 30   <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 ($spaceLikeRef = $O_elementData.space-reference.replaceAll('([%_!])', '!$1').concat('.%'))
33 - #set ($spaceExcludeRef = $O_elementData.space-reference.replaceAll('([%_!])', '!$1').concat('.Code'))
66 + #set($spaceLikeRef = $O_elementData.space-reference.replaceAll('([%_!])', '!$1').concat('.%'))
67 + #set($spaceExcludeRef = $O_elementData.space-reference.replaceAll('([%_!])', '!$1').concat('.Code'))
34 34   #set($query = $query.bindValue('space', $spaceLikeRef))
35 35   #set($query = $query.bindValue('spaceExclude', $spaceExcludeRef))
36 36   #set($results = $query.addFilter('unique').execute())
... ... @@ -39,31 +39,21 @@
39 39   <option value="$document.space">$document.getTitle()</option>
40 40   #end
41 41   </select>
42 - <span id="${O_elementData.id}_helpBlock" class="help-block">${O_elementData.help-block}</span>
43 - #if($O_elementData.required == true)
44 - <span class="required-input-field" title="Required input"></span>
45 - <span role="alert" class="form-not-valid-tip"></span>
46 - #end
47 - </span>
48 - </label>
49 - #if($O_elementData.required == true)
50 - </p>
51 - #end
52 52  {{/html}}
53 53  #end
54 -#macro(createTextElement $O_elementData)
78 +#macro(createTextElement $O_elementData $O_groupName $O_requiredAttributes)
79 +#set($dataAttributes = '')
80 +#if($O_elementData.data-query-type) #set($dataAttributes = '${dataAttributes} data-query-type="${O_elementData.data-query-type}"')#end
81 +#if($O_elementData.data-query-list-type) #set($dataAttributes = '${dataAttributes} data-query-list-type="${O_elementData.data-query-list-type}"')#end
82 +#if($O_elementData.data-query-list-contents) #set($dataAttributes = '${dataAttributes} data-query-list-contents="${O_elementData.data-query-list-contents}"')#end
83 +#if($O_elementData.data-create-page) #set($dataAttributes = '${dataAttributes} data-create-page="${O_elementData.data-create-page}"')#end
84 +#if($O_elementData.data-query-scope) #set($dataAttributes = '${dataAttributes} data-query-scope="${O_elementData.data-query-scope}"')#end
85 +#if($O_elementData.data-create-xobj) #set($dataAttributes = '${dataAttributes} data-create-xobj="${O_elementData.data-create-xobj}"')#end
86 +#if($O_elementData.data-xobj-classname) #set($dataAttributes = '${dataAttributes} data-xobj-classname="${O_elementData.data-xobj-classname}"')#end
87 +#if($O_elementData.data-xobj-fieldname) #set($dataAttributes = '${dataAttributes} data-xobj-fieldname="${O_elementData.data-xobj-fieldname}"')#end
88 +#if($O_elementData.data-query-list-editable) #set($dataAttributes = '${dataAttributes} data-query-list-editable="${O_elementData.data-query-list-editable}"')#end
55 55  {{html}}
56 - <p class="required" contenteditable="true">
57 - <label for="main_complaint_textinput">
58 - Main complaint
59 - <span class="input-wrap">
60 - <input type="text" class="form-control full" name="main_complaint_textinput" id="main_complaint_textinput" placeholder="${services.localization.render('cases.wordgroup.main_complaint.placeholder')}" aria-describedby="main_complaint_helpBlock" aria-required="true" aria-label="Enter the main complaint" required="required" data-error-response-type="use_label_defined_1" data-query-type="XWQL.matchTitle" data-query-list-type="suggest-negate" data-query-list-contents="value" data-create-page="true" data-query-scope="cases" autocomplete="off">
61 - <span id="main_complaint_helpBlock" class="help-block">Please be as concise as possible when you describe the main complaint. For example: "chronic headache", "intermittend fever" or "diarrhea"</span>
62 - <span class="required-input-field" title="Required input"></span>
63 - <span role="alert" class="form-not-valid-tip"></span>
64 - </span>
65 - </label>
66 - </p>
90 + <input type="text" class="form-control full" name="${O_elementData.id}_${O_groupName}" id="${O_elementData.id}_${O_groupName}" autocomplete="off" placeholder="$services.localization.render(${O_elementData.placeholder})" aria-describedby="${O_elementData.id}_helpBlock"${O_requiredAttributes} aria-label="${O_elementData.aria-label}"${dataAttributes}>
67 67  {{/html}}
68 68  #end
69 69