Files
galaxy/static/scripts/mvc/visualization/chart/components/model.js
T
2018-05-23 15:37:14 -04:00

1 line
2.5 KiB
JavaScript

define("mvc/visualization/chart/components/model",["exports","backbone","utils/utils","mvc/visualization/visualization-model"],function(t,i,e,s){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var a=function(t){if(t&&t.__esModule)return t;var i={};if(null!=t)for(var e in t)Object.prototype.hasOwnProperty.call(t,e)&&(i[e]=t[e]);return i.default=t,i}(i),o=function(t){return t&&t.__esModule?t:{default:t}}(e);t.default=a.Model.extend({defaults:{title:"",type:"",date:null,state:"",state_info:"",modified:!0,dataset_id:"",dataset_id_job:null},initialize:function(t,i){this.groups=new a.Collection,this.settings=new a.Model,this.visualization_id=i.visualization_id,this.visualization_name=i.visualization_name,this.dataset_id=i.dataset_id,this.chart_dict=i.chart_dict,console.debug("model::initialize() - Initialized with configuration:"),console.debug(i)},reset:function(){this.clear().set({title:"New Chart",dataset_id:this.dataset_id}),this.settings.clear(),this.groups.reset(),this.groups.add({id:o.default.uid()})},state:function(t,i){this.set({state:t,state_info:i}),this.trigger("set:state"),console.debug("model::state() - "+i+" ("+t+")")},serialize:function(){var t={attributes:this.attributes,settings:this.settings.attributes,groups:[]};return this.groups.each(function(i){t.groups.push(i.attributes)}),t},save:function(t){var i=this;t=t||{},this.chart_dict=this.serialize(),new s.Visualization({id:this.visualization_id||void 0,type:this.visualization_name,title:this.get("title")||"",config:{dataset_id:this.dataset_id,chart_dict:this.chart_dict}}).save().then(function(e){e&&e.id?(i.visualization_id=e.id,t.success&&t.success(),console.debug("model::save() - Received visualization id: "+e.id)):(t.error&&t.error(),console.debug("model::save() - Unrecognized response. Saving may have failed."))}).fail(function(i){t.error&&t.error(),console.debug("model::save() - Saving failed.")}),console.debug("model::save() - Saving with configuration.")},load:function(t){var i=t||this.chart_dict;return i&&(console.debug("model::load() - Attempting to load with configuration:"),console.debug(i)),this.reset(),i&&i.attributes?(this.set(i.attributes),this.state("ok","Loading saved visualization..."),this.settings.set(i.settings),this.groups.reset(),this.groups.add(i.groups),this.set("modified",!1),this.trigger("load"),console.debug("model::load() - Loading chart model "+i.attributes.type+"."),!0):(this.set("modified",!0),this.trigger("load"),console.debug("model::load() - Visualization attributes unavailable."),!1)}})});