Wiki broncode van Macros

Version 2.91 by Jip-jan Alunkel on april 11, 16:46

Show last authors
1 {{velocity}}
2 #macro(createFormStart $id $product)
3 <form action="" id="${id}" method="post" class="formMaker" data-form-product="${product}" novalidate="novalidate">
4 #end
5 #macro(createFormEnd)
6 <div role="alert" class="form-response-output form-validation-errors" style="display: none">
7 <p>
8 $services.localization.render('formMaker.line.global_error_msg')
9 </p>
10 </div>
11 <div role="alert" class="form-response-output form-validation-ok" style="display: none">
12 <p>
13 $services.localization.render('formMaker.line.global_ok_msg')
14 </p>
15 </div>
16 </form>
17 #end
18 #macro(createFormElement $elementDataObj)
19 #set($elementType = $elementDataObj.type)
20 #set($elementTagName = '')
21 #set($requiredAttributes = 'aria-required="false"')
22 #set($requiredCSSClass = '')
23 #set($addedCSSClass = '')
24 #set($hint = '')
25 #if($elementDataObj.required == "true")
26 #set($requiredCSSClass = ' class="required"')
27 #end
28 #if($elementType == "select")
29 #set($addedCSSClass = " select-wrap")
30 #set($elementTagName = "select")
31 #elseif($elementType == "text" || $elementType == "number" || $elementType == "range" || $elementType == "email")
32 #set($elementTagName = "input")
33 #elseif($elementType == "checkbox" || $elementType == "radio")
34 #set($addedCSSClass = " checkradio")
35 #set($elementTagName = "checkradio")
36 #elseif($elementType == "textarea")
37 #set($elementTagName = "textarea")
38 #else
39 #set($hint = "This type of element does not exist, read the manual for more information about element types.")
40 #end
41 #if($elementTagName == "select" || $elementTagName == "input" || $elementTagName == "textarea")
42 <p${requiredCSSClass}>
43 <label for="${elementDataObj.id}_${elementTagName}">
44 $elementDataObj.label
45 <span class="input-wrap${addedCSSClass}">
46 #if($elementTagName == "select")
47 #createSelectElement($elementDataObj $elementTagName $requiredAttributes)
48 #elseif($elementTagName == "textarea")
49 #else
50 #if($elementType == "text")
51 #createTextElement($elementDataObj $elementType $requiredAttributes)
52 #elseif($elementType == "number")
53 #if(!$elementDataObj.data-decimals)#set($elementDataObj.data-decimals = 0)#end
54 #if(!$elementDataObj.decimals-step)#set($elementDataObj.decimals-step = 0.5)#end
55 #createNumberElement($elementDataObj $elementType $requiredAttributes)
56 #elseif($elementType == "email")
57 #elseif($elementType == "range")
58 #end
59 #end
60 #if($elementDataObj.help-block && $elementDataObj.help-block != "")
61 <span id="${elementDataObj.id}_helpBlock" class="help-block">${elementDataObj.help-block}</span>
62 #end
63 #if($elementDataObj.required == "true")
64 <span class="required-input-field" title="Required input"></span>
65 <span role="alert" class="form-not-valid-tip"></span>
66 #end
67 </span>
68 </label>
69 </p>
70 #end
71 #if($elementTagName == "checkradio")
72 <p${requiredCSSClass}>
73 <span class="input-wrap${addedCSSClass}">
74 <span class="fieldset no-fieldset-border">
75 <label for="${elementDataObj.id}" class="strong">
76 #if($elementType == "checkbox")
77
78 #createCheckboxElement($elementDataObj)
79
80 #elseif($elementType == "radio")
81 #end
82 </label>
83 </span>
84 </span>
85 </p>
86 #end
87 #if($hint != "")
88 <p class="box errormessage">${hint}</p>
89 #end
90 #end
91 #macro(createSelectElement $O_elementData $O_tagName)
92 <select class="form-select form-control"#if($O_elementData.aria-label) aria-label="${O_elementData.aria-label}"#end aria-describedby="${O_elementData.id}_helpBlock"#if($O_elementData.required == "true") aria-required="true" required="required" data-error-response-type="${O_elementData.data-error-response-type}"#else aria-required="false"#end data-set-space="${O_elementData.data-set-space}" name="${O_elementData.id}_${O_tagName}" id="${O_elementData.id}_${O_tagName}">
93 #if($O_elementData.placeholder)
94 <option value="" disabled="" selected="" hidden="hidden">${O_elementData.placeholder}</option>
95 #end
96 #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"))
97 #set($spaceLikeRef = $O_elementData.space-reference.replaceAll('([%_!])', '!$1').concat('.%'))
98 #set($spaceExcludeRef = $O_elementData.space-reference.replaceAll('([%_!])', '!$1').concat('.Code'))
99 #set($query = $query.bindValue('space', $spaceLikeRef))
100 #set($query = $query.bindValue('spaceExclude', $spaceExcludeRef))
101 #set($results = $query.addFilter('unique').execute())
102 #foreach ($item in $results)
103 #set ($document = $xwiki.getDocument($item))
104 <option value="$document.space">$document.getTitle()</option>
105 #end
106 </select>
107 #end
108 #macro(createTextElement $O_elementData $O_tagName)
109 <input type="text" class="form-control full" name="${O_elementData.id}_${O_tagName}" id="${O_elementData.id}_${O_tagName}" autocomplete="off"#if($O_elementData.placeholder) placeholder="${O_elementData.placeholder}"#end aria-describedby="${O_elementData.id}_helpBlock"#if($O_elementData.required == "true") aria-required="true" required="required" data-error-response-type="${O_elementData.data-error-response-type}"#else aria-required="false"#end#if($O_elementData.aria-label) aria-label="${O_elementData.aria-label}"#end#if($O_elementData.data-query-type) data-query-type="${O_elementData.data-query-type}"#end#if($O_elementData.data-query-list-type) data-query-list-type="${O_elementData.data-query-list-type}"')#end#if($O_elementData.data-query-list-header) data-query-list-header="${O_elementData.data-query-list-header}"')#end#if($O_elementData.data-query-list-contents) data-query-list-contents="${O_elementData.data-query-list-contents}"')#end#if($O_elementData.data-create-page) data-create-page="${O_elementData.data-create-page}"')#end#if($O_elementData.data-query-scope) data-query-scope="${O_elementData.data-query-scope}"')#end#if($O_elementData.data-create-xobj) data-create-xobj="${O_elementData.data-create-xobj}"')#end#if($O_elementData.data-xobj-classname) data-xobj-classname="${O_elementData.data-xobj-classname}"')#end#if($O_elementData.data-xobj-fieldname) data-xobj-fieldname="${O_elementData.data-xobj-fieldname}"')#end#if($O_elementData.data-query-list-editable) data-query-list-editable="${O_elementData.data-query-list-editable}"')#end>
110 #end
111 #macro(createNumberElement $O_elementData $O_tagName)
112 <input type="number" class="form-control full" name="${O_elementData.id}_${O_tagName}" id="${O_elementData.id}_${O_tagName}" autocomplete="off" min="0" pattern="[0-9]*[.,]?[0-9]+" data-decimals="${O_elementData.data-decimals}" step="${O_elementData.decimal-step}"#if($O_elementData.placeholder) placeholder="${O_elementData.placeholder}"#end aria-describedby="${O_elementData.id}_helpBlock"#if($O_elementData.required == "true") aria-required="true" required="required" data-error-response-type="${O_elementData.data-error-response-type}"#else aria-required="false"#end#if($O_elementData.aria-label) aria-label="${O_elementData.aria-label}"#end#if($O_elementData.data-query-type) data-query-type="${O_elementData.data-query-type}"#end#if($O_elementData.data-query-list-type) data-query-list-type="${O_elementData.data-query-list-type}"')#end#if($O_elementData.data-query-list-header) data-query-list-header="${O_elementData.data-query-list-header}"')#end#if($O_elementData.data-query-list-contents) data-query-list-contents="${O_elementData.data-query-list-contents}"')#end#if($O_elementData.data-create-page) data-create-page="${O_elementData.data-create-page}"')#end#if($O_elementData.data-query-scope) data-query-scope="${O_elementData.data-query-scope}"')#end#if($O_elementData.data-create-xobj) data-create-xobj="${O_elementData.data-create-xobj}"')#end#if($O_elementData.data-xobj-classname) data-xobj-classname="${O_elementData.data-xobj-classname}"')#end#if($O_elementData.data-xobj-fieldname) data-xobj-fieldname="${O_elementData.data-xobj-fieldname}"')#end#if($O_elementData.data-query-list-editable) data-query-list-editable="${O_elementData.data-query-list-editable}"')#end>
113 #end
114 #macro(createCheckboxElement $O_elementData)
115 <input type="checkbox" name="${O_elementData.id}" id="${O_elementData.id}" data-mod-display="${O_elementData.id}_checkradio" value="${O_elementData.value}"#if($O_elementData.required == "true") aria-required="true" required="required" data-error-response-type="${O_elementData.data-error-response-type}"#else aria-required="false"#end#if($O_elementData.aria-label) aria-label="${O_elementData.aria-label}"#end>$O_elementData.label
116 #end
117 #macro(createExpandStart $id $value)
118 <div id="${id}_section_${value}" class="togglee">
119 #end
120 #macro(createExpandEnd)
121 </div>
122 #end
123 #macro(createSubmit $O_submit)
124 <div class="clearfix">
125 <p class="alert alert-warning alert-button-float-right">
126 <span class="alert-button pull-right">
127 #if ($xcontext.user != 'XWiki.XWikiGuest')
128 <input type="submit" class="btn btn-primary" id="${O_submit.id}" name="${O_submit.id}" value="${O_submit.button-text}" />
129 #else
130 <a data-toggle="modal" data-target="#displayLogin" href="#" class="btn btn-primary">$services.localization.render('login')</a>
131 #end
132 </span>
133 <span class="alert-text">
134 ${O_submit.help-block}
135 </span>
136 </p>
137 </div>
138 #end
139 {{/velocity}}