Merge branch '3.1' into 5.2
[GitHub/WoltLab/WCF.git] / com.woltlab.wcf / templates / __suffixFormFieldContainer.tpl
1 <dl id="{@$element->getField()->getPrefixedId()}Container"{*
2 *}{if !$element->getField()->getClasses()|empty} class="{implode from=$element->getField()->getClasses() item='class' glue=' '}{$class}{/implode}"{/if}{*
3 *}{foreach from=$element->getField()->getAttributes() key='attributeName' item='attributeValue'} {$attributeName}="{$attributeValue}"{/foreach}{*
4 *}{if !$element->getField()->checkDependencies()} style="display: none;"{/if}{*
5 *}>
6 <dt>{if $element->getLabel() !== null}<label for="{@$element->getField()->getPrefixedId()}">{@$element->getLabel()}</label>{/if}</dt>
7 <dd>
8 <div class="inputAddon">
9 {@$element->getField()->getFieldHtml()}
10
11 {if $element->getSuffixField() !== null && $element->getSuffixField()->isAvailable()}
12 {if !$element->suffixHasSelectableOptions()}
13 {if $element->getSuffixLabel() !== ''}
14 <span class="inputSuffix">{@$element->getSuffixLabel()}</span>
15 {/if}
16 {else}
17 <span class="inputSuffix dropdown" id="{@$element->getSuffixField()->getPrefixedId()}_dropdown">
18 <span class="dropdownToggle">{@$element->getSelectedSuffixOption()[label]} <span class="icon icon16 fa-caret-down pointer"></span></span>
19
20 <ul class="dropdownMenu">
21 {foreach from=$element->getSuffixField()->getNestedOptions() item=__fieldNestedOption}
22 <li{if ($element->getSuffixField()->getValue() == $__fieldNestedOption[value] && $__fieldNestedOption[isSelectable]) || !$__fieldNestedOption[isSelectable]} class="{if $element->getSuffixField()->getValue() == $__fieldNestedOption[value] && $__fieldNestedOption[isSelectable]}active{if !$__fieldNestedOption[isSelectable]} disabled{/if}{else}disabled{/if}"{/if} data-value="{$__fieldNestedOption[value]}" data-label="{$__fieldNestedOption[label]}"><span>{@'&nbsp;'|str_repeat:$__fieldNestedOption[depth] * 4}{@$__fieldNestedOption[label]}</span></li>
23 {/foreach}
24 </ul>
25 <input type="hidden" id="{@$element->getSuffixField()->getPrefixedId()}" name="{@$element->getSuffixField()->getPrefixedId()}" value="{if $element->getSuffixField()->getValue() === null}{$element->getSelectedSuffixOption()[value]}{else}{$element->getSuffixField()->getValue()}{/if}" />
26 </span>
27
28 {include file='__formFieldDependencies' field=$element->getSuffixField()}
29 {include file='__formFieldDataHandler' field=$element->getSuffixField()}
30 {/if}
31 {/if}
32 </div>
33
34 {if $element->getDescription() !== null}
35 <small>{@$element->getDescription()}</small>
36 {/if}
37
38 {include file='__formFieldErrors' field=$element->getField()}
39
40 {if $element->getSuffixField() !== null && $element->getSuffixField()->isAvailable()}
41 {foreach from=$element->getSuffixField()->getValidationErrors() item='validationError'}
42 {@$validationError->getHtml()}
43 {/foreach}
44 {/if}
45
46 {include file='__formFieldDependencies' field=$element->getField()}
47 {include file='__formFieldDataHandler' field=$element->getField()}
48 </dd>
49 </dl>
50
51 {if $element->getSuffixField() !== null && $element->getSuffixField()->isAvailable() && !$element->getSuffixField()->isImmutable() && $element->suffixHasSelectableOptions()}
52 <script data-relocate="true">
53 require(['WoltLabSuite/Core/Form/Builder/Container/SuffixFormField'], function(FormBuilderSuffixFormFieldContainer) {
54 new FormBuilderSuffixFormFieldContainer('{@$element->getDocument()->getId()}', '{@$element->getSuffixField()->getPrefixedId()}');
55 });
56 </script>
57 {/if}