Wiki-Quellcode von form-elements
Version 2.37 von Jip-jan Alunkel am März 28, 15:18
Verstecke letzte Bearbeiter
author | version | line-number | content |
---|---|---|---|
![]() |
1.2 | 1 | {{velocity}} |
![]() |
2.23 | 2 | #macro(createFormElement $elementDataObj) |
3 | #set($elementType = $elementDataObj.type) | ||
![]() |
2.33 | 4 | #set($elementTagName = '') |
![]() |
2.28 | 5 | #set($requiredAttributes = 'aria-required="false"') |
6 | #set($requiredCSSClass = '') | ||
7 | #set($addedCSSClass = '') | ||
![]() |
2.30 | 8 | #set($hint = '') |
![]() |
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 | ||
![]() |
2.23 | 13 | #if($elementType == "select") |
![]() |
2.28 | 14 | #set($addedCSSClass = " select-wrap") |
![]() |
2.32 | 15 | #set($elementTagName = "select") |
![]() |
2.28 | 16 | #elseif($elementType == "text" || $elementType == "number" || $elementType == "range" || $elementType == "email") |
![]() |
2.32 | 17 | #set($elementTagName = "input") |
![]() |
2.28 | 18 | #elseif($elementType == "checkbox" || $elementType == "radio") |
![]() |
2.32 | 19 | #set($elementTagName = "checkradio") |
![]() |
2.27 | 20 | #elseif($elementType == "textarea") |
![]() |
2.32 | 21 | #set($elementTagName = "textarea") |
![]() |
2.27 | 22 | #else |
23 | #set($hint = "This type of element does not exist, read the manual for more information about element types.") | ||
![]() |
2.23 | 24 | #end |
![]() |
2.29 | 25 | {{html}} |
![]() |
2.32 | 26 | #if($elementTagName == "select" || $elementTagName == "input" || $elementTagName == "textarea") |
![]() |
2.28 | 27 | <p${requiredCSSClass}> |
![]() |
2.32 | 28 | <label for="${elementDataObj.id}_${elementTagName}"> |
![]() |
2.28 | 29 | $elementDataObj.label |
30 | <span class="input-wrap${addedCSSClass}"> | ||
![]() |
2.32 | 31 | #if($elementTagName == "select") |
32 | #createSelectElement($elementDataObj $elementTagName $requiredAttributes) | ||
33 | #elseif($elementTagName == "textarea") | ||
![]() |
2.28 | 34 | #else |
35 | #if($elementType == "text") | ||
![]() |
2.33 | 36 | #createTextElement($elementDataObj $elementTagName $requiredAttributes) |
![]() |
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 | ||
![]() |
2.32 | 53 | #if($elementTagName == "checkradio") |
![]() |
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 | ||
![]() |
2.29 | 61 | {{/html}} |
![]() |
2.23 | 62 | #end |
![]() |
1.3 | 63 | |
![]() |
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}"> | ||
![]() |
2.23 | 66 | <option value="" disabled="" selected="" hidden="hidden">$services.localization.render(${O_elementData.placeholder})</option> |
![]() |
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")) |
![]() |
2.28 | 68 | #set($spaceLikeRef = $O_elementData.space-reference.replaceAll('([%_!])', '!$1').concat('.%')) |
69 | #set($spaceExcludeRef = $O_elementData.space-reference.replaceAll('([%_!])', '!$1').concat('.Code')) | ||
![]() |
2.16 | 70 | #set($query = $query.bindValue('space', $spaceLikeRef)) |
![]() |
2.20 | 71 | #set($query = $query.bindValue('spaceExclude', $spaceExcludeRef)) |
![]() |
2.13 | 72 | #set($results = $query.addFilter('unique').execute()) |
![]() |
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 | ||
![]() |
2.32 | 79 | #macro(createTextElement $O_elementData $O_tagName $O_requiredAttributes) |
![]() |
2.36 | 80 | $O_elementData |
![]() |
2.28 | 81 | #set($dataAttributes = '') |
![]() |
2.33 | 82 | #if($O_elementData.data-query-type) #set($dataAttributes = ' data-query-type="${O_elementData.data-query-type}"')#end |
![]() |
2.35 | 83 | #if($O_elementData.data-query-list-type) #set($dataAttributes = $dataAttributes' data-query-list-type="${O_elementData.data-query-list-type}"')#end |
84 | #if($O_elementData.data-query-list-contents) #set($dataAttributes = $dataAttributes' data-query-list-contents="${O_elementData.data-query-list-contents}"')#end | ||
85 | #if($O_elementData.data-create-page) #set($dataAttributes = $dataAttributes' data-create-page="${O_elementData.data-create-page}"')#end | ||
86 | #if($O_elementData.data-query-scope) #set($dataAttributes = $dataAttributes' data-query-scope="${O_elementData.data-query-scope}"')#end | ||
87 | #if($O_elementData.data-create-xobj) #set($dataAttributes = $dataAttributes' data-create-xobj="${O_elementData.data-create-xobj}"')#end | ||
88 | #if($O_elementData.data-xobj-classname) #set($dataAttributes = $dataAttributes' data-xobj-classname="${O_elementData.data-xobj-classname}"')#end | ||
89 | #if($O_elementData.data-xobj-fieldname) #set($dataAttributes = $dataAttributes' data-xobj-fieldname="${O_elementData.data-xobj-fieldname}"')#end | ||
90 | #if($O_elementData.data-query-list-editable) #set($dataAttributes = $dataAttributes' data-query-list-editable="${O_elementData.data-query-list-editable}"')#end | ||
![]() |
2.37 | 91 | ## <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}> |
![]() |
2.27 | 92 | #end |
![]() |
1.4 | 93 | |
![]() |
2.33 | 94 | id |
95 | |||
96 | |||
![]() |
1.2 | 97 | {{/velocity}} |
98 |