123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384 |
- define(
- function( require ) {
- "use strict";
- var Marionette = require( "marionette" ),
- Backbone = require( "backbone" ),
- _ = require( "underscore" ),
- fui = require( "app/fui" ),
- sprintf = require( "sprintf" ),
- datasetSelectorTemplate = require( "plugins/text!app/templates/dataset-selector.tpl" );
- var DatasetSelectorView = Backbone.Marionette.ItemView.extend( {
- initialize: function(){
- this.listenTo( this.model, "change", this.render, this );
- },
- template: _.template( datasetSelectorTemplate ),
- el: ".dataset-selector-container",
- ui: {
- select: ".dataset-selector select"
- },
- events: {
- "change .dataset-selector select": "onChangeDataset"
- },
-
- onRender: function() {
- var selector = $('.selectpicker');
- selector.selectpicker('refresh');
- if (selector.val()) {
- this.unHideDatasetElements();
- this.onChangeDataset();
- }
- },
-
- onChangeDataset: function( e ) {
- var newDatasetName = this.ui.select.val();
- this.model.set( "selectedDatasetName", newDatasetName );
- this.notifyDatasetName( newDatasetName );
- },
-
- unHideDatasetElements: function() {
- $(".no-dataset").addClass( "hidden" );
- $(".with-dataset").removeClass( "hidden" );
- },
-
- notifyDatasetName: function( dsName ) {
- fui.vent.trigger( "dataset.changed", dsName || this.ui.select.val() );
- }
- });
- return DatasetSelectorView;
- }
- );
|