var vent = require('vent'); var Marionette = require('marionette'); var Profiles = require('../../Profile/ProfileCollection'); var AsModelBoundView = require('../../Mixins/AsModelBoundView'); var AsValidatedView = require('../../Mixins/AsValidatedView'); var AsEditModalView = require('../../Mixins/AsEditModalView'); require('../../Mixins/TagInput'); require('../../Mixins/FileBrowser'); module.exports = (function(){ var view = Marionette.ItemView.extend({ template : 'Series/Edit/EditSeriesViewTemplate', ui : { profile : '.x-profile', path : '.x-path', tags : '.x-tags' }, events : {"click .x-remove" : '_removeSeries'}, initialize : function(){ this.model.set('profiles', Profiles); }, onRender : function(){ this.ui.path.fileBrowser(); this.ui.tags.tagInput({ model : this.model, property : 'tags' }); }, _onBeforeSave : function(){ var profileId = this.ui.profile.val(); this.model.set({profileId : profileId}); }, _onAfterSave : function(){ this.trigger('saved'); vent.trigger(vent.Commands.CloseModalCommand); }, _removeSeries : function(){ vent.trigger(vent.Commands.DeleteSeriesCommand, {series : this.model}); } }); AsModelBoundView.call(view); AsValidatedView.call(view); AsEditModalView.call(view); return view; }).call(this);