27 lines
790 B
JavaScript
27 lines
790 B
JavaScript
import Ember from 'ember';
|
|
|
|
import BaseFormInput from './base-form-input';
|
|
|
|
export default BaseFormInput.extend({
|
|
classNames: ['form-group'],
|
|
classNameBindings: ['hasError:has-error'],
|
|
didInsertElement() {
|
|
let me = this;
|
|
me._super(...arguments);
|
|
me.$('select.select2').select2({
|
|
placeholder: me.get('placeholder') || me.get('label')
|
|
}).on('change', function(e) {
|
|
if (e.added) {
|
|
Ember.set(me.findOption(e.added.id), 'selected', 'selected');
|
|
}
|
|
else if (e.removed) {
|
|
Ember.set(me.findOption(e.removed.id), 'selected', false);
|
|
}
|
|
});
|
|
},
|
|
findOption(value) {
|
|
return this.get('options').find(option => option.value == value);
|
|
}
|
|
});
|
|
|