diff --git a/client/galaxy/scripts/mvc/library/library-librarytoolbar-view.js b/client/galaxy/scripts/mvc/library/library-librarytoolbar-view.js index 794b95fe809..7f34e167ff0 100644 --- a/client/galaxy/scripts/mvc/library/library-librarytoolbar-view.js +++ b/client/galaxy/scripts/mvc/library/library-librarytoolbar-view.js @@ -5,7 +5,7 @@ function(mod_toastr, mod_library_model) { /** * This view represents the top part of the library page. - * It contains the tool bar with buttons. + * It contains the tool bar with controls. */ var LibraryToolbarView = Backbone.View.extend({ el: '#center', @@ -37,93 +37,109 @@ var LibraryToolbarView = Backbone.View.extend({ }, /** - * Called from LibraryListView when needed. - * @param {object} options common options + * Renders the element that shows pages into its div within the toolbar. */ renderPaginator: function( options ){ this.options = _.extend( this.options, options ); var paginator_template = this.templatePaginator(); this.$el.find( '#library_paginator' ).html( paginator_template({ - show_page: parseInt( this.options.show_page ), - page_count: parseInt( this.options.page_count ), - total_libraries_count: this.options.total_libraries_count, - libraries_shown: this.options.libraries_shown + show_page: parseInt( this.options.show_page ), + page_count: parseInt( this.options.page_count ), + total_libraries_count: this.options.total_libraries_count, + libraries_shown: this.options.libraries_shown })); }, + /** + * User clicked on 'New library' button. Show modal to + * satisfy the wish. + */ showLibraryModal : function (event){ - event.preventDefault(); - event.stopPropagation(); - var self = this; - this.modal = Galaxy.modal; - this.modal.show({ - closing_events : true, - title : 'Create New Library', - body : this.templateNewLibraryInModal(), - buttons : { - 'Create' : function() { self.createNewLibrary(); }, - 'Close' : function() { self.modal.hide(); } - } - }); - }, - - createNewLibrary: function(){ - var libraryDetails = this.serializeNewLibrary(); - if (this.valdiateNewLibrary(libraryDetails)){ - var library = new mod_library_model.Library(); - var self = this; - library.save(libraryDetails, { - success: function (library) { - Galaxy.libraries.libraryListView.collection.add(library); - self.modal.hide(); - self.clearLibraryModal(); - Galaxy.libraries.libraryListView.render(); - mod_toastr.success('Library created.'); - }, - error: function(model, response){ - if (typeof response.responseJSON !== "undefined"){ - mod_toastr.error(response.responseJSON.err_msg); - } else { - mod_toastr.error('An error occured.'); - } - } - }); - } else { - mod_toastr.error('Library\'s name is missing.'); + event.preventDefault(); + event.stopPropagation(); + var self = this; + this.modal = Galaxy.modal; + this.modal.show({ + closing_events : true, + title : 'Create New Library', + body : this.templateNewLibraryInModal(), + buttons : { + 'Create' : function() { self.createNewLibrary(); }, + 'Close' : function() { self.modal.hide(); } } - return false; + }); }, + /** + * Create the new library using the API asynchronously. + */ + createNewLibrary: function(){ + var libraryDetails = this.serializeNewLibrary(); + if (this.validateNewLibrary(libraryDetails)){ + var library = new mod_library_model.Library(); + var self = this; + library.save(libraryDetails, { + success: function (library) { + Galaxy.libraries.libraryListView.collection.add(library); + self.modal.hide(); + self.clearLibraryModal(); + Galaxy.libraries.libraryListView.render(); + mod_toastr.success('Library created.'); + }, + error: function(model, response){ + if (typeof response.responseJSON !== "undefined"){ + mod_toastr.error(response.responseJSON.err_msg); + } else { + mod_toastr.error('An error occured.'); + } + } + }); + } else { + mod_toastr.error('Library\'s name is missing.'); + } + return false; + }, + + /** + * Show user the propmpt to change the number of libs shown on page. + */ showPageSizePrompt: function(){ var library_page_size = prompt( 'How many libraries per page do you want to see?', Galaxy.libraries.preferences.get( 'library_page_size' ) ); if ( ( library_page_size != null ) && ( library_page_size == parseInt( library_page_size ) ) ) { - Galaxy.libraries.preferences.set( { 'library_page_size': parseInt( library_page_size ) } ); - Galaxy.libraries.libraryListView.render( { show_page: 1 } ); + Galaxy.libraries.preferences.set( { 'library_page_size': parseInt( library_page_size ) } ); + Galaxy.libraries.libraryListView.render( { show_page: 1 } ); } }, - // clear the library modal once saved + /** + * Clear the library modal once it is saved. + */ clearLibraryModal : function(){ - $("input[name='Name']").val(''); - $("input[name='Description']").val(''); - $("input[name='Synopsis']").val(''); + $("input[name='Name']").val(''); + $("input[name='Description']").val(''); + $("input[name='Synopsis']").val(''); }, + /** + * Prepare new library variables to be submitted to API. + */ serializeNewLibrary : function(){ - return { - name: $("input[name='Name']").val(), - description: $("input[name='Description']").val(), - synopsis: $("input[name='Synopsis']").val() - }; + return { + name: $("input[name='Name']").val(), + description: $("input[name='Description']").val(), + synopsis: $("input[name='Synopsis']").val() + }; }, - valdiateNewLibrary: function( libraryDetails ){ + /** + * Check whether entered values are valid. + */ + validateNewLibrary: function( libraryDetails ){ return libraryDetails.name !== ''; }, /** * Include or exclude deleted libraries in the view. - * @param {object} event common event */ includeDeletedChecked: function( event ){ if (event.target.checked){ @@ -135,6 +151,10 @@ var LibraryToolbarView = Backbone.View.extend({ } }, + /** + * Take the contents of the search field and send it to the list view + * to query the collection of libraries. + */ searchLibraries: function(event){ var search_term = $(".library-search-input").val(); Galaxy.libraries.libraryListView.searchLibraries(search_term); @@ -180,56 +200,52 @@ var LibraryToolbarView = Backbone.View.extend({ }, templatePaginator: function(){ - tmpl_array = []; - - tmpl_array.push(' '); - tmpl_array.push(' '); - tmpl_array.push(' showing <%- libraries_shown %> of <%- total_libraries_count %> libraries'); - tmpl_array.push(' '); - - return _.template(tmpl_array.join('')); + return _.template([ + '', + '', + 'showing <%- libraries_shown %> of <%- total_libraries_count %> libraries', + '' + ].join('')); }, templateNewLibraryInModal: function(){ - tmpl_array = []; - - tmpl_array.push('
'); - tmpl_array.push('
'); - tmpl_array.push(' '); - tmpl_array.push(' '); - tmpl_array.push(' '); - tmpl_array.push('
'); - tmpl_array.push('
'); - - return tmpl_array.join(''); + return _.template([ + '
', + '
', + '', + '', + '', + '
', + '
' + ].join('')); } }); return { - LibraryToolbarView: LibraryToolbarView + LibraryToolbarView: LibraryToolbarView }; }); diff --git a/static/maps/mvc/library/library-librarytoolbar-view.js.map b/static/maps/mvc/library/library-librarytoolbar-view.js.map index 0073fb0c8e5..6f23a550973 100644 --- a/static/maps/mvc/library/library-librarytoolbar-view.js.map +++ b/static/maps/mvc/library/library-librarytoolbar-view.js.map @@ -1 +1 @@ -{"version":3,"file":"library-librarytoolbar-view.js","sources":["../../../src/mvc/library/library-librarytoolbar-view.js"],"names":["define","mod_toastr","mod_library_model","LibraryToolbarView","Backbone","View","extend","el","events","click #create_new_library_btn","click #include_deleted_chk","click #page_size_prompt","keyup .library-search-input","initialize","options","this","_","defaults","render","toolbar_template","templateToolBar","is_admin","is_anonym","Galaxy","currUser","isAdmin","isAnonymous","$el","html","admin_user","anon_user","find","checked","libraries","preferences","get","renderPaginator","paginator_template","templatePaginator","show_page","parseInt","page_count","total_libraries_count","libraries_shown","showLibraryModal","event","preventDefault","stopPropagation","self","modal","show","closing_events","title","body","templateNewLibraryInModal","buttons","Create","createNewLibrary","Close","hide","libraryDetails","serializeNewLibrary","valdiateNewLibrary","library","Library","save","success","libraryListView","collection","add","clearLibraryModal","error","model","response","responseJSON","err_msg","showPageSizePrompt","library_page_size","prompt","set","$","val","name","description","synopsis","includeDeletedChecked","target","with_deleted","searchLibraries","search_term","template","join","tmpl_array","push"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"library-librarytoolbar-view.js","sources":["../../../src/mvc/library/library-librarytoolbar-view.js"],"names":["define","mod_toastr","mod_library_model","LibraryToolbarView","Backbone","View","extend","el","events","click #create_new_library_btn","click #include_deleted_chk","click #page_size_prompt","keyup .library-search-input","initialize","options","this","_","defaults","render","toolbar_template","templateToolBar","is_admin","is_anonym","Galaxy","currUser","isAdmin","isAnonymous","$el","html","admin_user","anon_user","find","checked","libraries","preferences","get","renderPaginator","paginator_template","templatePaginator","show_page","parseInt","page_count","total_libraries_count","libraries_shown","showLibraryModal","event","preventDefault","stopPropagation","self","modal","show","closing_events","title","body","templateNewLibraryInModal","buttons","Create","createNewLibrary","Close","hide","libraryDetails","serializeNewLibrary","validateNewLibrary","library","Library","save","success","libraryListView","collection","add","clearLibraryModal","error","model","response","responseJSON","err_msg","showPageSizePrompt","library_page_size","prompt","set","$","val","name","description","synopsis","includeDeletedChecked","target","with_deleted","searchLibraries","search_term","template","join"],"mappings":"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"} \ No newline at end of file diff --git a/static/scripts/mvc/library/library-librarytoolbar-view.js b/static/scripts/mvc/library/library-librarytoolbar-view.js index 4e325801c3d..862f31ddb82 100644 --- a/static/scripts/mvc/library/library-librarytoolbar-view.js +++ b/static/scripts/mvc/library/library-librarytoolbar-view.js @@ -1,2 +1,2 @@ -define(["libs/toastr","mvc/library/library-model"],function(a,b){var c=Backbone.View.extend({el:"#center",events:{"click #create_new_library_btn":"showLibraryModal","click #include_deleted_chk":"includeDeletedChecked","click #page_size_prompt":"showPageSizePrompt","keyup .library-search-input":"searchLibraries"},initialize:function(a){this.options=_.defaults(this.options||{},a),this.render()},render:function(){var a=this.templateToolBar(),b=!1,c=!0;Galaxy.currUser&&(b=Galaxy.currUser.isAdmin(),c=Galaxy.currUser.isAnonymous()),this.$el.html(a({admin_user:b,anon_user:c})),b&&(this.$el.find("#include_deleted_chk")[0].checked=Galaxy.libraries.preferences.get("with_deleted"))},renderPaginator:function(a){this.options=_.extend(this.options,a);var b=this.templatePaginator();this.$el.find("#library_paginator").html(b({show_page:parseInt(this.options.show_page),page_count:parseInt(this.options.page_count),total_libraries_count:this.options.total_libraries_count,libraries_shown:this.options.libraries_shown}))},showLibraryModal:function(a){a.preventDefault(),a.stopPropagation();var b=this;this.modal=Galaxy.modal,this.modal.show({closing_events:!0,title:"Create New Library",body:this.templateNewLibraryInModal(),buttons:{Create:function(){b.createNewLibrary()},Close:function(){b.modal.hide()}}})},createNewLibrary:function(){var c=this.serializeNewLibrary();if(this.valdiateNewLibrary(c)){var d=new b.Library,e=this;d.save(c,{success:function(b){Galaxy.libraries.libraryListView.collection.add(b),e.modal.hide(),e.clearLibraryModal(),Galaxy.libraries.libraryListView.render(),a.success("Library created.")},error:function(b,c){a.error("undefined"!=typeof c.responseJSON?c.responseJSON.err_msg:"An error occured.")}})}else a.error("Library's name is missing.");return!1},showPageSizePrompt:function(){var a=prompt("How many libraries per page do you want to see?",Galaxy.libraries.preferences.get("library_page_size"));null!=a&&a==parseInt(a)&&(Galaxy.libraries.preferences.set({library_page_size:parseInt(a)}),Galaxy.libraries.libraryListView.render({show_page:1}))},clearLibraryModal:function(){$("input[name='Name']").val(""),$("input[name='Description']").val(""),$("input[name='Synopsis']").val("")},serializeNewLibrary:function(){return{name:$("input[name='Name']").val(),description:$("input[name='Description']").val(),synopsis:$("input[name='Synopsis']").val()}},valdiateNewLibrary:function(a){return""!==a.name},includeDeletedChecked:function(a){a.target.checked?(Galaxy.libraries.preferences.set({with_deleted:!0}),Galaxy.libraries.libraryListView.render()):(Galaxy.libraries.preferences.set({with_deleted:!1}),Galaxy.libraries.libraryListView.render())},searchLibraries:function(){var a=$(".library-search-input").val();Galaxy.libraries.libraryListView.searchLibraries(a)},templateToolBar:function(){return _.template(['
','
','
','
','DATA LIBRARIES','','','',"","",'',"",'
','',"
","<% if(admin_user === true) { %>",'
',"","
",'','',"","<% } %>","
","
","
",'
',"
","
"].join(""))},templatePaginator:function(){return tmpl_array=[],tmpl_array.push(' "),tmpl_array.push(" "),tmpl_array.push(' showing <%- libraries_shown %> of <%- total_libraries_count %> libraries'),tmpl_array.push(" "),_.template(tmpl_array.join(""))},templateNewLibraryInModal:function(){return tmpl_array=[],tmpl_array.push('
'),tmpl_array.push("
"),tmpl_array.push(' '),tmpl_array.push(' '),tmpl_array.push(' '),tmpl_array.push("
"),tmpl_array.push("
"),tmpl_array.join("")}});return{LibraryToolbarView:c}}); +define(["libs/toastr","mvc/library/library-model"],function(a,b){var c=Backbone.View.extend({el:"#center",events:{"click #create_new_library_btn":"showLibraryModal","click #include_deleted_chk":"includeDeletedChecked","click #page_size_prompt":"showPageSizePrompt","keyup .library-search-input":"searchLibraries"},initialize:function(a){this.options=_.defaults(this.options||{},a),this.render()},render:function(){var a=this.templateToolBar(),b=!1,c=!0;Galaxy.currUser&&(b=Galaxy.currUser.isAdmin(),c=Galaxy.currUser.isAnonymous()),this.$el.html(a({admin_user:b,anon_user:c})),b&&(this.$el.find("#include_deleted_chk")[0].checked=Galaxy.libraries.preferences.get("with_deleted"))},renderPaginator:function(a){this.options=_.extend(this.options,a);var b=this.templatePaginator();this.$el.find("#library_paginator").html(b({show_page:parseInt(this.options.show_page),page_count:parseInt(this.options.page_count),total_libraries_count:this.options.total_libraries_count,libraries_shown:this.options.libraries_shown}))},showLibraryModal:function(a){a.preventDefault(),a.stopPropagation();var b=this;this.modal=Galaxy.modal,this.modal.show({closing_events:!0,title:"Create New Library",body:this.templateNewLibraryInModal(),buttons:{Create:function(){b.createNewLibrary()},Close:function(){b.modal.hide()}}})},createNewLibrary:function(){var c=this.serializeNewLibrary();if(this.validateNewLibrary(c)){var d=new b.Library,e=this;d.save(c,{success:function(b){Galaxy.libraries.libraryListView.collection.add(b),e.modal.hide(),e.clearLibraryModal(),Galaxy.libraries.libraryListView.render(),a.success("Library created.")},error:function(b,c){a.error("undefined"!=typeof c.responseJSON?c.responseJSON.err_msg:"An error occured.")}})}else a.error("Library's name is missing.");return!1},showPageSizePrompt:function(){var a=prompt("How many libraries per page do you want to see?",Galaxy.libraries.preferences.get("library_page_size"));null!=a&&a==parseInt(a)&&(Galaxy.libraries.preferences.set({library_page_size:parseInt(a)}),Galaxy.libraries.libraryListView.render({show_page:1}))},clearLibraryModal:function(){$("input[name='Name']").val(""),$("input[name='Description']").val(""),$("input[name='Synopsis']").val("")},serializeNewLibrary:function(){return{name:$("input[name='Name']").val(),description:$("input[name='Description']").val(),synopsis:$("input[name='Synopsis']").val()}},validateNewLibrary:function(a){return""!==a.name},includeDeletedChecked:function(a){a.target.checked?(Galaxy.libraries.preferences.set({with_deleted:!0}),Galaxy.libraries.libraryListView.render()):(Galaxy.libraries.preferences.set({with_deleted:!1}),Galaxy.libraries.libraryListView.render())},searchLibraries:function(){var a=$(".library-search-input").val();Galaxy.libraries.libraryListView.searchLibraries(a)},templateToolBar:function(){return _.template(['
','
','
','
','DATA LIBRARIES','','','',"","",'',"",'
','',"
","<% if(admin_user === true) { %>",'
',"","
",'','',"","<% } %>","
","
","
",'
',"
","
"].join(""))},templatePaginator:function(){return _.template(['","",'showing <%- libraries_shown %> of <%- total_libraries_count %> libraries',""].join(""))},templateNewLibraryInModal:function(){return _.template(['
',"
",'','','',"
","
"].join(""))}});return{LibraryToolbarView:c}}); //# sourceMappingURL=../../../maps/mvc/library/library-librarytoolbar-view.js.map \ No newline at end of file