Wiki-Quellcode von form-elements

Version 2.48 von Jip-jan Alunkel am März 28, 15:42

Verstecke letzte Bearbeiter
Jip-jan Alunkel 1.2 1 {{velocity}}
Jip-jan Alunkel 2.23 2 #macro(createFormElement $elementDataObj)
3 #set($elementType = $elementDataObj.type)
Jip-jan Alunkel 2.33 4 #set($elementTagName = '')
Jip-jan Alunkel 2.28 5 #set($requiredAttributes = 'aria-required="false"')
6 #set($requiredCSSClass = '')
7 #set($addedCSSClass = '')
Jip-jan Alunkel 2.30 8 #set($hint = '')
Jip-jan Alunkel 2.28 9 #if($O_elementData.required == true)
10 #set($requiredAttributes = 'aria-required="true" required="required" data-error-response-type="${O_elementData.data-error-response-type}"')
11 #set($requiredCSSClass = ' class="required"')
12 #end
Jip-jan Alunkel 2.23 13 #if($elementType == "select")
Jip-jan Alunkel 2.28 14 #set($addedCSSClass = " select-wrap")
Jip-jan Alunkel 2.32 15 #set($elementTagName = "select")
Jip-jan Alunkel 2.28 16 #elseif($elementType == "text" || $elementType == "number" || $elementType == "range" || $elementType == "email")
Jip-jan Alunkel 2.32 17 #set($elementTagName = "input")
Jip-jan Alunkel 2.28 18 #elseif($elementType == "checkbox" || $elementType == "radio")
Jip-jan Alunkel 2.32 19 #set($elementTagName = "checkradio")
Jip-jan Alunkel 2.27 20 #elseif($elementType == "textarea")
Jip-jan Alunkel 2.32 21 #set($elementTagName = "textarea")
Jip-jan Alunkel 2.27 22 #else
23 #set($hint = "This type of element does not exist, read the manual for more information about element types.")
Jip-jan Alunkel 2.23 24 #end
Jip-jan Alunkel 2.29 25 {{html}}
Jip-jan Alunkel 2.32 26 #if($elementTagName == "select" || $elementTagName == "input" || $elementTagName == "textarea")
Jip-jan Alunkel 2.28 27 <p${requiredCSSClass}>
Jip-jan Alunkel 2.32 28 <label for="${elementDataObj.id}_${elementTagName}">
Jip-jan Alunkel 2.28 29 $elementDataObj.label
30 <span class="input-wrap${addedCSSClass}">
Jip-jan Alunkel 2.32 31 #if($elementTagName == "select")
32 #createSelectElement($elementDataObj $elementTagName $requiredAttributes)
33 #elseif($elementTagName == "textarea")
Jip-jan Alunkel 2.28 34 #else
35 #if($elementType == "text")
Jip-jan Alunkel 2.33 36 #createTextElement($elementDataObj $elementTagName $requiredAttributes)
Jip-jan Alunkel 2.28 37 #elseif($elementType == "number")
38 #elseif($elementType == "email")
39 #elseif($elementType == "range")
40 #end
41 #end
42 #if($elementDataObj.help-block != "")
43 <span id="${elementDataObj.id}_helpBlock" class="help-block">${elementDataObj.help-block}</span>
44 #end
45 #if($elementDataObj.required == true)
46 <span class="required-input-field" title="Required input"></span>
47 <span role="alert" class="form-not-valid-tip"></span>
48 #end
49 </span>
50 </label>
51 </p>
52 #end
Jip-jan Alunkel 2.32 53 #if($elementTagName == "checkradio")
Jip-jan Alunkel 2.28 54 #if($elementType == "checkbox")
55 #elseif($elementType == "radio")
56 #end
57 #end
58 #if($hint != "")
59 <p class="box errormessage">${hint}</p>
60 #end
Jip-jan Alunkel 2.29 61 {{/html}}
Jip-jan Alunkel 2.23 62 #end
Jip-jan Alunkel 1.3 63
Jip-jan Alunkel 2.32 64 #macro(createSelectElement $O_elementData $O_tagName $O_requiredAttributes)
65 <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}_${O_tagName}" id="${O_elementData.id}_${O_tagName}">
Jip-jan Alunkel 2.23 66 <option value="" disabled="" selected="" hidden="hidden">$services.localization.render(${O_elementData.placeholder})</option>
Jip-jan Alunkel 2.16 67 #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"))
Jip-jan Alunkel 2.28 68 #set($spaceLikeRef = $O_elementData.space-reference.replaceAll('([%_!])', '!$1').concat('.%'))
69 #set($spaceExcludeRef = $O_elementData.space-reference.replaceAll('([%_!])', '!$1').concat('.Code'))
Jip-jan Alunkel 2.16 70 #set($query = $query.bindValue('space', $spaceLikeRef))
Jip-jan Alunkel 2.20 71 #set($query = $query.bindValue('spaceExclude', $spaceExcludeRef))
Jip-jan Alunkel 2.13 72 #set($results = $query.addFilter('unique').execute())
Jip-jan Alunkel 1.2 73 #foreach ($item in $results)
74 #set ($document = $xwiki.getDocument($item))
75 <option value="$document.space">$document.getTitle()</option>
76 #end
77 </select>
78 #end
Jip-jan Alunkel 2.32 79 #macro(createTextElement $O_elementData $O_tagName $O_requiredAttributes)
Jip-jan Alunkel 2.28 80 #set($dataAttributes = '')
Jip-jan Alunkel 2.48 81 #set($dataAttributes = ' data-query-type=\"${O_elementData.data-query-type}\"')
Jip-jan Alunkel 2.41 82 $dataAttributes
Jip-jan Alunkel 2.33 83 #if($O_elementData.data-query-type) #set($dataAttributes = ' data-query-type="${O_elementData.data-query-type}"')#end
Jip-jan Alunkel 2.39 84 #if($O_elementData.data-query-list-type) #set($dataAttributes = '${dataAttributes} data-query-list-type="${O_elementData.data-query-list-type}"')#end
85 #if($O_elementData.data-query-list-contents) #set($dataAttributes = '${dataAttributes} data-query-list-contents="${O_elementData.data-query-list-contents}"')#end
86 #if($O_elementData.data-create-page) #set($dataAttributes = '${dataAttributes} data-create-page="${O_elementData.data-create-page}"')#end
87 #if($O_elementData.data-query-scope) #set($dataAttributes = '${dataAttributes} data-query-scope="${O_elementData.data-query-scope}"')#end
88 #if($O_elementData.data-create-xobj) #set($dataAttributes = '${dataAttributes} data-create-xobj="${O_elementData.data-create-xobj}"')#end
89 #if($O_elementData.data-xobj-classname) #set($dataAttributes = '${dataAttributes} data-xobj-classname="${O_elementData.data-xobj-classname}"')#end
90 #if($O_elementData.data-xobj-fieldname) #set($dataAttributes = '${dataAttributes} data-xobj-fieldname="${O_elementData.data-xobj-fieldname}"')#end
91 #if($O_elementData.data-query-list-editable) #set($dataAttributes = '${dataAttributes} data-query-list-editable="${O_elementData.data-query-list-editable}"')#end
92 <input type="text" class="form-control full" name="${O_elementData.id}_${O_tagName}" id="${O_elementData.id}_${O_tagName}" autocomplete="off" placeholder="$services.localization.render(${O_elementData.placeholder})" aria-describedby="${O_elementData.id}_helpBlock"${O_requiredAttributes} aria-label="${O_elementData.aria-label}"${dataAttributes}>
Jip-jan Alunkel 2.27 93 #end
Jip-jan Alunkel 1.4 94
Jip-jan Alunkel 1.2 95 {{/velocity}}
96