import Ember from 'ember'; import BaseFormInput from './base-form-input'; export default BaseFormInput.extend({ classNames: ['form-group'], type: 'text', isHidden: Ember.computed.equal('type', 'hidden'), classNameBindings: ['isHidden:hidden'], rows: 8, setFilename(filename) { let me = this; Ember.set(me.get('model'), me.get('name'), filename); }, didReceiveAttrs() { let me = this; me._super(...arguments); let isFile = me.get('type') === 'file'; !me.get('input-class') && me.set('input-class', isFile ? 'col-xs-3' : 'col-xs-12 col-sm-5'); let image = me.get('image'); if (isFile && image) { me.set('imageUrl', me.get('model.' + image)); } }, didInsertElement() { let me = this; me._super(...arguments); me.get('type') === 'file' && me.$('input[type=file]').ace_file_input({ no_file: 'No File Choosed...', btn_choose: 'Choose', btn_change: 'Change', droppable: true, before_change: function() { let filename = Ember.$(this).val(); Ember.Logger.info('Before File [' + filename + '] Changed.'); me.setFilename(filename); return true; }, before_remove: function() { let filename = Ember.$(this).val(); Ember.Logger.info('Before File [' + filename + '] Removed.'); me.setFilename(null); return true; }, thumbnail: false, //| true | large blacklist: 'exe|php|jsp' }); } });