4a31aaa616
ToDo: Label validation state should not be bound to validation state of first element (option) but to validation state of all elements. If any element has an error label validation state should be error. Only if all elements are fine, label validation state should also be fine.
31 lines
1.3 KiB
Handlebars
31 lines
1.3 KiB
Handlebars
{{#each options as |option index|}}
|
|
{{! show label only on first item }}
|
|
{{#bs-form-element
|
|
classNames='option'
|
|
label=(unless index (t 'create.options.options.label'))
|
|
model=option
|
|
property='title'
|
|
as |value id validationState|
|
|
}}
|
|
<div class="input-group">
|
|
{{bs-input
|
|
id=id
|
|
value=value
|
|
}}
|
|
<div class="input-group-btn">
|
|
{{! disable delete button if there is only one option }}
|
|
<button {{action 'deleteOption' option}}
|
|
class="delete btn {{if (eq validationState 'success') 'btn-success'}} {{if (eq validationState 'error') 'btn-danger'}} {{unless validationState 'btn-default'}}"
|
|
disabled={{if (gt options.length 1) false true}}>
|
|
<span class='glyphicon glyphicon-trash' aria-hidden='true'></span>
|
|
<span class='sr-only'>{{t 'create.options.button.delete.label'}}</span>
|
|
</button>
|
|
<button {{action 'addOption' option}}
|
|
class="add btn {{if (eq validationState 'success') 'btn-success'}} {{if (eq validationState 'error') 'btn-danger'}} {{unless validationState 'btn-default'}}">
|
|
<span class='glyphicon glyphicon-plus' aria-hidden='true'></span>
|
|
<span class='sr-only'>{{t 'create.options.button.add.label'}}</span>
|
|
</button>
|
|
</div>
|
|
</div>
|
|
{{/bs-form-element}}
|
|
{{/each}}
|