Merge branch '5.2' into 5.3
[GitHub/WoltLab/WCF.git] / wcfsetup / install / files / acp / templates / __form.tpl
1 <script data-relocate="true">
2 {* register form with dependency manager before any form field-related JavaScript code is executed below *}
3 require([
4 'WoltLabSuite/Core/Form/Builder/Field/Dependency/Manager'
5 {if $form->isAjax()}
6 , 'WoltLabSuite/Core/Form/Builder/Manager'
7 {/if}
8 ], function(
9 FormBuilderFieldDependencyManager
10 {if $form->isAjax()}
11 , FormBuilderManager
12 {/if}
13 ) {
14 FormBuilderFieldDependencyManager.register('{@$form->getId()}');
15
16 {if $form->isAjax()}
17 FormBuilderManager.registerForm('{@$form->getId()}');
18 {/if}
19 });
20 </script>
21
22 {if $form->hasValidationErrors() && $form->showsErrorMessage()}
23 <p class="error" role="alert">{@$form->getErrorMessage()}</p>
24 {/if}
25
26 {if $form->showsSuccessMessage()}
27 <p class="success">
28 <span>{@$form->getSuccessMessage()}</span>
29 {if !$objectEditLink|empty}
30 <span>{lang}wcf.global.success.add.editCreatedObject{/lang}</span>
31 {/if}
32 </p>
33 {/if}
34
35 {if $form->isAjax()}
36 <section id="{@$form->getId()}"{*
37 *}{if !$form->getClasses()|empty} class="{implode from=$form->getClasses() item='class' glue=' '}{$class}{/implode}"{/if}{*
38 *}{foreach from=$form->getAttributes() key='attributeName' item='attributeValue'} {$attributeName}="{$attributeValue}"{/foreach}{*
39 *}>
40 {else}
41 <form method="{@$form->getMethod()}" {*
42 *}action="{$form->getAction()}" {*
43 *}id="{@$form->getId()}"{*
44 *}{if !$form->getClasses()|empty} class="{implode from=$form->getClasses() item='class' glue=' '}{$class}{/implode}"{/if}{*
45 *}{foreach from=$form->getAttributes() key='attributeName' item='attributeValue'} {$attributeName}="{$attributeValue}"{/foreach}{*
46 *}>
47 {/if}
48 {foreach from=$form item='child'}
49 {if $child->isAvailable()}
50 {@$child->getHtml()}
51 {/if}
52 {/foreach}
53
54 {if !$form->getButtons()|empty}
55 <div class="formSubmit">
56 {foreach from=$form->getButtons() item=button}
57 {@$button->getHtml()}
58 {/foreach}
59 </div>
60 {/if}
61
62 {if $form->isAjax()}
63 </section>
64 {else}
65 {@SECURITY_TOKEN_INPUT_TAG}
66 </form>
67 {/if}
68
69 {if $form->needsRequiredFieldsInfo()}
70 <div class="section requiredFieldsInfo">
71 <p><span class="formFieldRequired">*</span> {lang}wcf.global.form.required{/lang}</p>
72
73 {event name='requiredFieldsInfo'}
74 </div>
75 {/if}
76
77 <script data-relocate="true">
78 {* after all dependencies have been added, check them *}
79 require(['WoltLabSuite/Core/Form/Builder/Field/Dependency/Manager'], function(FormBuilderFieldDependencyManager) {
80 FormBuilderFieldDependencyManager.checkDependencies();
81 });
82 </script>