From 4dbb249ca62936656fbba90c2c454eb66bbd2ea3 Mon Sep 17 00:00:00 2001 From: Martin Cech Date: Tue, 16 Sep 2014 13:15:32 -0400 Subject: [PATCH] removed bug with missing return --- .../galaxy/scripts/mvc/library/library-foldertoolbar-view.js | 4 +++- static/scripts/mvc/library/library-foldertoolbar-view.js | 3 ++- static/scripts/packed/mvc/library/library-folderrow-view.js | 2 +- .../scripts/packed/mvc/library/library-foldertoolbar-view.js | 2 +- static/scripts/packed/mvc/library/library-library-view.js | 2 +- 5 files changed, 8 insertions(+), 5 deletions(-) diff --git a/client/galaxy/scripts/mvc/library/library-foldertoolbar-view.js b/client/galaxy/scripts/mvc/library/library-foldertoolbar-view.js index 415a5de258d..bcf8fc3410f 100644 --- a/client/galaxy/scripts/mvc/library/library-foldertoolbar-view.js +++ b/client/galaxy/scripts/mvc/library/library-foldertoolbar-view.js @@ -592,13 +592,15 @@ var FolderToolbarView = Backbone.View.extend({ // need to check which paths to call var that = this; var popped_item = paths.pop(); - if (typeof popped_item === "undefined") { + if (typeof popped_item == "undefined") { if (this.options.chain_call_control.failed_number === 0){ mod_toastr.success('Selected folders and their contents imported into the current folder'); Galaxy.modal.hide(); } else { + // TODO better error report mod_toastr.error('Something went wrong :('); } + return true; } var promise = $.when($.post('/api/libraries/datasets?encoded_folder_id=' + that.id + '&source=' + source + diff --git a/static/scripts/mvc/library/library-foldertoolbar-view.js b/static/scripts/mvc/library/library-foldertoolbar-view.js index 415a5de258d..06a1bb00bbf 100644 --- a/static/scripts/mvc/library/library-foldertoolbar-view.js +++ b/static/scripts/mvc/library/library-foldertoolbar-view.js @@ -592,13 +592,14 @@ var FolderToolbarView = Backbone.View.extend({ // need to check which paths to call var that = this; var popped_item = paths.pop(); - if (typeof popped_item === "undefined") { + if (typeof popped_item == "undefined") { if (this.options.chain_call_control.failed_number === 0){ mod_toastr.success('Selected folders and their contents imported into the current folder'); Galaxy.modal.hide(); } else { mod_toastr.error('Something went wrong :('); } + return true; } var promise = $.when($.post('/api/libraries/datasets?encoded_folder_id=' + that.id + '&source=' + source + diff --git a/static/scripts/packed/mvc/library/library-folderrow-view.js b/static/scripts/packed/mvc/library/library-folderrow-view.js index 04f6a9a03c6..3afa9c2280e 100644 --- a/static/scripts/packed/mvc/library/library-folderrow-view.js +++ b/static/scripts/packed/mvc/library/library-folderrow-view.js @@ -1 +1 @@ -define(["galaxy.masthead","utils/utils","libs/toastr","mvc/library/library-model","mvc/library/library-dataset-view"],function(c,e,f,d,b){var a=Backbone.View.extend({lastSelectedHistory:"",events:{"click .undelete_dataset_btn":"undelete_dataset"},options:{type:null},initialize:function(g){this.render(g)},render:function(g){var h=null;if(g.get("type")==="folder"){this.options.type="folder";h=this.templateRowFolder()}else{this.options.type="file";if(g.get("deleted")){h=this.templateRowDeletedFile()}else{h=this.templateRowFile()}}this.setElement(h({content_item:g}));this.$el.show();return this},showDatasetDetails:function(){Galaxy.libraries.datasetView=new b.LibraryDatasetView({id:this.id})},undelete_dataset:function(i){$(".tooltip").hide();var h=this;var g=$(i.target).closest("tr")[0].id;var j=Galaxy.libraries.folderListView.collection.get(g);j.url=j.urlRoot+j.id+"?undelete=true";j.destroy({success:function(l,k){Galaxy.libraries.folderListView.collection.remove(g);var m=new d.Item(k);Galaxy.libraries.folderListView.collection.add(m);f.success("Dataset undeleted. Click this to see it.","",{onclick:function(){h.showDatasetDetails()}})},error:function(l,k){if(typeof k.responseJSON!=="undefined"){f.error("Dataset was not undeleted. "+k.responseJSON.err_msg)}else{f.error("An error occured! Dataset was not undeleted. Please try again.")}}})},templateRowFolder:function(){tmpl_array=[];tmpl_array.push('');tmpl_array.push(" ");tmpl_array.push(' ');tmpl_array.push(" ");tmpl_array.push(" ");tmpl_array.push(" ");tmpl_array.push(' <%- content_item.get("name") %>');tmpl_array.push(" ");tmpl_array.push(" folder");tmpl_array.push(" ");tmpl_array.push(' <%= _.escape(content_item.get("update_time")) %>');tmpl_array.push(" ");tmpl_array.push(' <% if (content_item.get("can_manage")) { %><% } %>');tmpl_array.push(" ");tmpl_array.push("");return _.template(tmpl_array.join(""))},templateRowFile:function(){tmpl_array=[];tmpl_array.push('');tmpl_array.push(" ");tmpl_array.push(' ');tmpl_array.push(" ");tmpl_array.push(' ');tmpl_array.push(' /datasets/<%- content_item.id %>" class="library-dataset"><%- content_item.get("name") %>');tmpl_array.push(' <%= _.escape(content_item.get("file_ext")) %>');tmpl_array.push(' <%= _.escape(content_item.get("file_size")) %>');tmpl_array.push(' <%= _.escape(content_item.get("update_time")) %>');tmpl_array.push(" ");tmpl_array.push(' <% if (content_item.get("is_unrestricted")) { %><% } %>');tmpl_array.push(' <% if (content_item.get("is_private")) { %><% } %>');tmpl_array.push(' <% if ((content_item.get("is_unrestricted") === false) && (content_item.get("is_private") === false)) { %><% } %>');tmpl_array.push(' <% if (content_item.get("can_manage")) { %>/datasets/<%- content_item.id %>/permissions"><% } %>');tmpl_array.push(" ");tmpl_array.push("");return _.template(tmpl_array.join(""))},templateRowDeletedFile:function(){tmpl_array=[];tmpl_array.push('');tmpl_array.push(" ");tmpl_array.push(' ');tmpl_array.push(" ");tmpl_array.push(" ");tmpl_array.push(' <%- content_item.get("name") %>');tmpl_array.push(' <%= _.escape(content_item.get("file_ext")) %>');tmpl_array.push(' <%= _.escape(content_item.get("file_size")) %>');tmpl_array.push(' <%= _.escape(content_item.get("update_time")) %>');tmpl_array.push(' ');tmpl_array.push("");return _.template(tmpl_array.join(""))}});return{FolderRowView:a}}); \ No newline at end of file +define(["galaxy.masthead","utils/utils","libs/toastr","mvc/library/library-model","mvc/library/library-dataset-view"],function(c,e,f,d,b){var a=Backbone.View.extend({lastSelectedHistory:"",events:{"click .undelete_dataset_btn":"undelete_dataset"},options:{type:null},initialize:function(g){this.model=g;this.render(g)},render:function(g){var h=null;if(g.get("type")==="folder"){this.options.type="folder";h=this.templateRowFolder()}else{this.options.type="file";if(g.get("deleted")){h=this.templateRowDeletedFile()}else{h=this.templateRowFile()}}this.setElement(h({content_item:g}));this.$el.show();return this},showDatasetDetails:function(){Galaxy.libraries.datasetView=new b.LibraryDatasetView({id:this.id})},undelete_dataset:function(i){$(".tooltip").hide();var h=this;var g=$(i.target).closest("tr")[0].id;var j=Galaxy.libraries.folderListView.collection.get(g);j.url=j.urlRoot+j.id+"?undelete=true";j.destroy({success:function(l,k){Galaxy.libraries.folderListView.collection.remove(g);var m=new d.Item(k);Galaxy.libraries.folderListView.collection.add(m);f.success("Dataset undeleted. Click this to see it.","",{onclick:function(){var n=h.model.get("folder_id");window.location="#folders/"+n+"/datasets/"+h.id}})},error:function(l,k){if(typeof k.responseJSON!=="undefined"){f.error("Dataset was not undeleted. "+k.responseJSON.err_msg)}else{f.error("An error occured! Dataset was not undeleted. Please try again.")}}})},templateRowFolder:function(){tmpl_array=[];tmpl_array.push('');tmpl_array.push(" ");tmpl_array.push(' ');tmpl_array.push(" ");tmpl_array.push(" ");tmpl_array.push(" ");tmpl_array.push(' <%- content_item.get("name") %>');tmpl_array.push(" ");tmpl_array.push(" folder");tmpl_array.push(" ");tmpl_array.push(' <%= _.escape(content_item.get("update_time")) %>');tmpl_array.push(" ");tmpl_array.push(' <% if (content_item.get("can_manage")) { %><% } %>');tmpl_array.push(" ");tmpl_array.push("");return _.template(tmpl_array.join(""))},templateRowFile:function(){tmpl_array=[];tmpl_array.push('');tmpl_array.push(" ");tmpl_array.push(' ');tmpl_array.push(" ");tmpl_array.push(' ');tmpl_array.push(' /datasets/<%- content_item.id %>" class="library-dataset"><%- content_item.get("name") %>');tmpl_array.push(' <%= _.escape(content_item.get("file_ext")) %>');tmpl_array.push(' <%= _.escape(content_item.get("file_size")) %>');tmpl_array.push(' <%= _.escape(content_item.get("update_time")) %>');tmpl_array.push(" ");tmpl_array.push(' <% if (content_item.get("is_unrestricted")) { %><% } %>');tmpl_array.push(' <% if (content_item.get("is_private")) { %><% } %>');tmpl_array.push(' <% if ((content_item.get("is_unrestricted") === false) && (content_item.get("is_private") === false)) { %><% } %>');tmpl_array.push(' <% if (content_item.get("can_manage")) { %>/datasets/<%- content_item.id %>/permissions"><% } %>');tmpl_array.push(" ");tmpl_array.push("");return _.template(tmpl_array.join(""))},templateRowDeletedFile:function(){tmpl_array=[];tmpl_array.push('');tmpl_array.push(" ");tmpl_array.push(' ');tmpl_array.push(" ");tmpl_array.push(" ");tmpl_array.push(' <%- content_item.get("name") %>');tmpl_array.push(' <%= _.escape(content_item.get("file_ext")) %>');tmpl_array.push(' <%= _.escape(content_item.get("file_size")) %>');tmpl_array.push(' <%= _.escape(content_item.get("update_time")) %>');tmpl_array.push(' ');tmpl_array.push("");return _.template(tmpl_array.join(""))}});return{FolderRowView:a}}); \ No newline at end of file diff --git a/static/scripts/packed/mvc/library/library-foldertoolbar-view.js b/static/scripts/packed/mvc/library/library-foldertoolbar-view.js index 8e7ecd5e71f..ad1b1f4d3be 100644 --- a/static/scripts/packed/mvc/library/library-foldertoolbar-view.js +++ b/static/scripts/packed/mvc/library/library-foldertoolbar-view.js @@ -1 +1 @@ -define(["galaxy.masthead","utils/utils","libs/toastr","libs/jquery/jstree","mvc/library/library-model"],function(c,e,f,b,d){var a=Backbone.View.extend({el:"#center",events:{"click #toolbtn_create_folder":"createFolderFromModal","click #toolbtn_bulk_import":"modalBulkImport","click #include_deleted_datasets_chk":"checkIncludeDeleted","click #toolbtn_show_libinfo":"showLibInfo","click #toolbtn_bulk_delete":"deleteSelectedDatasets"},defaults:{can_add_library_item:false,contains_file:false,chain_call_control:{total_number:0,failed_number:0},disabled_jstree_element:"folders"},modal:null,jstree:null,histories:null,initialize:function(g){this.options=_.defaults(g||{},this.defaults);this.render()},render:function(g){this.options=_.extend(this.options,g);var i=this.templateToolBar();var h={id:this.options.id,is_admin:false,is_anonym:true,user_library_import_dir:Galaxy.config.user_library_import_dir,allow_library_path_paste:Galaxy.config.allow_library_path_paste,library_import_dir:Galaxy.config.library_import_dir,mutiple_add_dataset_options:false};if(Galaxy.currUser){h.is_admin=Galaxy.currUser.isAdmin();h.is_anonym=Galaxy.currUser.isAnonymous();if(h.user_library_import_dir!==null||h.allow_library_path_paste!==false||h.library_import_dir!==null){h.mutiple_add_dataset_options=true}}this.$el.html(i(h))},configureElements:function(g){this.options=_.extend(this.options,g);if(this.options.can_add_library_item===true){$(".add-library-items").show()}else{$(".add-library-items").hide()}if(this.options.contains_file===true){if(Galaxy.currUser){if(!Galaxy.currUser.isAnonymous()){$(".logged-dataset-manipulation").show();$(".dataset-manipulation").show()}else{$(".dataset-manipulation").show();$(".logged-dataset-manipulation").hide()}}else{$(".logged-dataset-manipulation").hide();$(".dataset-manipulation").hide()}}else{$(".logged-dataset-manipulation").hide();$(".dataset-manipulation").hide()}this.$el.find("[data-toggle]").tooltip()},createFolderFromModal:function(i){i.preventDefault();i.stopPropagation();var g=this;var h=this.templateNewFolderInModal();this.modal=Galaxy.modal;this.modal.show({closing_events:true,title:"Create New Folder",body:h(),buttons:{Create:function(){g.create_new_folder_event()},Close:function(){Galaxy.modal.hide()}}})},create_new_folder_event:function(){var g=this.serialize_new_folder();if(this.validate_new_folder(g)){var h=new d.FolderAsModel();url_items=Backbone.history.fragment.split("/");current_folder_id=url_items[url_items.length-1];h.url=h.urlRoot+"/"+current_folder_id;h.save(g,{success:function(i){Galaxy.modal.hide();f.success("Folder created");i.set({type:"folder"});Galaxy.libraries.folderListView.collection.add(i)},error:function(j,i){Galaxy.modal.hide();if(typeof i.responseJSON!=="undefined"){f.error(i.responseJSON.err_msg)}else{f.error("An error ocurred :(")}}})}else{f.error("Folder's name is missing")}return false},serialize_new_folder:function(){return{name:$("input[name='Name']").val(),description:$("input[name='Description']").val()}},validate_new_folder:function(g){return g.name!==""},modalBulkImport:function(){var g=$("#folder_table").find(":checked");if(g.length===0){f.info("You have to select some datasets first")}else{this.refreshUserHistoriesList(function(i){var h=i.templateBulkImportInModal();i.modal=Galaxy.modal;i.modal.show({closing_events:true,title:"Import into History",body:h({histories:i.histories.models}),buttons:{Import:function(){i.importAllIntoHistory()},Close:function(){Galaxy.modal.hide()}}})})}},refreshUserHistoriesList:function(h){var g=this;this.histories=new d.GalaxyHistories();this.histories.fetch({success:function(){h(g)},error:function(j,i){if(typeof i.responseJSON!=="undefined"){f.error(i.responseJSON.err_msg)}else{f.error("An error ocurred :(")}}})},importAllIntoHistory:function(){this.modal.disableButton("Import");this.options.chain_call_control.total_number=0;this.options.chain_call_control.failed_number=0;var k=$("select[name=dataset_import_bulk] option:selected").val();this.options.last_used_history_id=k;var n=$("select[name=dataset_import_bulk] option:selected").text();var p=[];$("#folder_table").find(":checked").each(function(){if(this.parentElement.parentElement.id!==""){p.push(this.parentElement.parentElement.id)}});var o=this.templateImportIntoHistoryProgressBar();this.modal.$el.find(".modal-body").html(o({history_name:n}));var l=100/p.length;this.initProgress(l);var g=[];for(var h=p.length-1;h>=0;h--){var j=p[h];var m=new d.HistoryItem();m.url=m.urlRoot+k+"/contents";m.content=j;m.source="library";g.push(m)}this.options.chain_call_control.total_number=g.length;jQuery.getJSON(galaxy_config.root+"history/set_as_current?id="+k);this.chainCall(g,n)},chainCall:function(h,k){var g=this;var i=h.pop();if(typeof i==="undefined"){if(this.options.chain_call_control.failed_number===0){f.success("Selected datasets imported into history. Click this to start analysing it.","",{onclick:function(){window.location="/"}})}else{if(this.options.chain_call_control.failed_number===this.options.chain_call_control.total_number){f.error("There was an error and no datasets were imported into history.")}else{if(this.options.chain_call_control.failed_number'});$('
'+g+"
").appendTo("body").submit().remove();f.info("Your download will begin soon")}else{f.error("An error occurred :(")}},addFilesFromHistoryModal:function(){this.refreshUserHistoriesList(function(g){g.modal=Galaxy.modal;var h=g.templateAddFilesFromHistory();var i=g.options.full_path[g.options.full_path.length-1][1];g.modal.show({closing_events:true,title:"Adding datasets from your history to folder "+i,body:h({histories:g.histories.models}),buttons:{Add:function(){g.addAllDatasetsFromHistory()},Close:function(){Galaxy.modal.hide()}},closing_callback:function(){Galaxy.libraries.library_router.back()}});if(g.histories.models.length>0){g.fetchAndDisplayHistoryContents(g.histories.models[0].id);$("#dataset_add_bulk").change(function(j){g.fetchAndDisplayHistoryContents(j.target.value)})}else{f.error("An error ocurred :(")}})},importFilesFromPathModal:function(){var h=this;this.modal=Galaxy.modal;var g=this.templateImportPathModal();this.modal.show({closing_events:true,title:"Enter paths relative to Galaxy root",body:g({}),buttons:{Import:function(){h.importFromPathsClicked(h)},Close:function(){Galaxy.modal.hide()}},closing_callback:function(){Galaxy.libraries.library_router.navigate("folders/"+h.id,{trigger:true})}})},importFilesFromUserdirModal:function(){var h=this;this.modal=Galaxy.modal;var g=this.templateBrowserModal();this.modal.show({closing_events:true,title:"Select folders or files to import",body:g({}),buttons:{Import:function(){h.importFromUserdirClicked(h)},Close:function(){Galaxy.modal.hide()}},closing_callback:function(){Galaxy.libraries.library_router.navigate("folders/"+h.id,{trigger:true})}});this.renderJstree({disabled_jstree_element:"folders"});$("input[type=radio]").change(function(i){if(i.target.value==="jstree-disable-folders"){h.renderJstree({disabled_jstree_element:"folders"});$(".jstree-folders-message").hide();$(".jstree-preserve-structure").hide();$(".jstree-link-files").hide();$(".jstree-files-message").show()}else{if(i.target.value==="jstree-disable-files"){$(".jstree-files-message").hide();$(".jstree-folders-message").show();$(".jstree-link-files").show();$(".jstree-preserve-structure").show();h.renderJstree({disabled_jstree_element:"files"})}}})},renderJstree:function(g){var i=this;this.options=_.extend(this.options,g);var h=this.options.disabled_jstree_element;this.jstree=new d.Jstree();this.jstree.url=this.jstree.urlRoot+"?target=userdir&format=jstree&disable="+h;this.jstree.fetch({success:function(k,j){$("#jstree_browser").jstree("destroy");var l=$("#jstree_browser").jstree({core:{data:k},plugins:["types","checkbox"],types:{folder:{icon:"jstree-folder"},file:{icon:"jstree-file"}},checkbox:{three_state:false}})},error:function(k,j){if(typeof j.responseJSON!=="undefined"){f.error(j.responseJSON.err_msg)}else{f.error("An error ocurred :(")}}})},importFromPathsClicked:function(){var g=this.modal.$el.find(".preserve-checkbox").is(":checked");var l=this.modal.$el.find(".link-checkbox").is(":checked");var k=$("textarea#import_paths").val();if(!k){f.info("Please enter a path relative to Galaxy root")}else{this.modal.disableButton("Import");k=k.split("\n");var j=[];for(var h=k.length-1;h>=0;h--){trimmed=k[h].trim();if(trimmed.length!==0){j.push(trimmed)}}this.initChainCallControl(j.length);this.chainCallImportingFolders(j,g,l,"admin_path")}},initChainCallControl:function(g){var h=this.templateAddingDatasetsProgressBar();this.modal.$el.find(".modal-body").html(h({folder_name:this.options.folder_name}));this.progress=0;this.progressStep=100/g;this.options.chain_call_control.total_number=g;this.options.chain_call_control.failed_number=0},importFromUserdirClicked:function(l){var h=$("#jstree_browser").jstree().get_selected(true);var g=this.modal.$el.find(".preserve-checkbox").is(":checked");var o=this.modal.$el.find(".link-checkbox").is(":checked");var n=[];if(h.length<1){f.info("You have to select some items first")}else{this.modal.disableButton("Import");this.options.chain_call_control.total_number=0;this.options.chain_call_control.failed_number=0;for(var j=h.length-1;j>=0;j--){if(h[j].li_attr.full_path!==undefined){n.push(h[j].li_attr.full_path)}}var m=this.templateAddingDatasetsProgressBar();this.modal.$el.find(".modal-body").html(m({folder_name:this.options.folder_name}));this.progressStep=100/n.length;this.progress=0;this.options.chain_call_control.total_number=n.length;var k=h[0].type;if(k==="folder"){this.chainCallImportingFolders(n,g,o,"userdir_folder")}else{if(k==="file"){this.chainCallImportingUserdirFiles(n)}}}},chainCallImportingUserdirFiles:function(j){var g=this;var h=j.pop();if(typeof h==="undefined"){if(this.options.chain_call_control.failed_number===0){f.success("Selected files imported into the current folder");Galaxy.modal.hide()}else{f.error("Something went wrong :(")}return true}var i=$.when($.post("/api/libraries/datasets?encoded_folder_id="+g.id+"&source=userdir_file&path="+h));i.done(function(k){g.updateProgress();g.chainCallImportingUserdirFiles(j)}).fail(function(){g.options.chain_call_control.failed_number+=1;g.updateProgress();g.chainCallImportingUserdirFiles(j)})},chainCallImportingFolders:function(l,g,m,j){var h=this;var i=l.pop();if(typeof i==="undefined"){if(this.options.chain_call_control.failed_number===0){f.success("Selected folders and their contents imported into the current folder");Galaxy.modal.hide()}else{f.error("Something went wrong :(")}}var k=$.when($.post("/api/libraries/datasets?encoded_folder_id="+h.id+"&source="+j+"&path="+i+"&preserve_dirs="+g+"&link_data="+m));k.done(function(n){h.updateProgress();h.chainCallImportingFolders(l,g,m,j)}).fail(function(){h.options.chain_call_control.failed_number+=1;h.updateProgress();h.chainCallImportingFolders(l,g,m,j)})},fetchAndDisplayHistoryContents:function(i){var h=new d.HistoryContents({id:i});var g=this;h.fetch({success:function(k){var j=g.templateHistoryContents();g.histories.get(i).set({contents:k});g.modal.$el.find("#selected_history_content").html(j({history_contents:k.models.reverse()}))},error:function(k,j){if(typeof j.responseJSON!=="undefined"){f.error(j.responseJSON.err_msg)}else{f.error("An error ocurred :(")}}})},addAllDatasetsFromHistory:function(){var l=this.modal.$el.find("#selected_history_content").find(":checked");if(l.length<1){f.info("You have to select some datasets first")}else{this.modal.disableButton("Add");this.options.chain_call_control.total_number=0;this.options.chain_call_control.failed_number=0;var g=[];l.each(function(){var i=$(this.parentElement).data("id");if(i){g.push(i)}});var m=this.templateAddingDatasetsProgressBar();this.modal.$el.find(".modal-body").html(m({folder_name:this.options.folder_name}));this.progressStep=100/g.length;this.progress=0;var k=[];for(var j=g.length-1;j>=0;j--){history_dataset_id=g[j];var h=new d.Item();h.url="/api/folders/"+this.options.id+"/contents";h.set({from_hda_id:history_dataset_id});k.push(h)}this.options.chain_call_control.total_number=k.length;this.chainCallAddingHdas(k)}},chainCallAddingHdas:function(h){var g=this;this.added_hdas=new d.Folder();var i=h.pop();if(typeof i==="undefined"){if(this.options.chain_call_control.failed_number===0){f.success("Selected datasets from history added to the folder")}else{if(this.options.chain_call_control.failed_number===this.options.chain_call_control.total_number){f.error("There was an error and no datasets were added to the folder.")}else{if(this.options.chain_call_control.failed_number=0;j--){var l=new d.Item({id:h[j]});m.push(l)}this.options.chain_call_control.total_number=h.length;this.chainCallDeletingHdas(m)}},chainCallDeletingHdas:function(h){var g=this;this.deleted_lddas=new d.Folder();var i=h.pop();if(typeof i==="undefined"){if(this.options.chain_call_control.failed_number===0){f.success("Selected datasets deleted")}else{if(this.options.chain_call_control.failed_number===this.options.chain_call_control.total_number){f.error("There was an error and no datasets were deleted.")}else{if(this.options.chain_call_control.failed_number');tmpl_array.push('
');tmpl_array.push(" DATA LIBRARIES");tmpl_array.push(' ');tmpl_array.push(' ');tmpl_array.push("<% if(mutiple_add_dataset_options) { %>");tmpl_array.push(' ");tmpl_array.push("<% } else { %>");tmpl_array.push(' ');tmpl_array.push("<% } %>");tmpl_array.push(' ');tmpl_array.push(' ");tmpl_array.push(' ');tmpl_array.push(' ');tmpl_array.push(' ');tmpl_array.push("
");tmpl_array.push('
');tmpl_array.push("
");tmpl_array.push("");return _.template(tmpl_array.join(""))},templateLibInfoInModal:function(){tmpl_array=[];tmpl_array.push('
');tmpl_array.push("

Library name:

");tmpl_array.push('

<%- library.get("name") %>

');tmpl_array.push("

Library description:

");tmpl_array.push('

<%- library.get("description") %>

');tmpl_array.push("

Library synopsis:

");tmpl_array.push('

<%- library.get("synopsis") %>

');tmpl_array.push("
");return _.template(tmpl_array.join(""))},templateNewFolderInModal:function(){tmpl_array=[];tmpl_array.push('
');tmpl_array.push("
");tmpl_array.push('');tmpl_array.push('');tmpl_array.push("
");tmpl_array.push("
");return _.template(tmpl_array.join(""))},templateBulkImportInModal:function(){var g=[];g.push('');g.push("Select history: ");g.push('");g.push("");return _.template(g.join(""))},templateImportIntoHistoryProgressBar:function(){var g=[];g.push('
');g.push("Importing selected datasets to history <%= _.escape(history_name) %>");g.push("
");g.push('
');g.push('
');g.push(' 0% Complete');g.push("
");g.push("
");g.push("");return _.template(g.join(""))},templateAddingDatasetsProgressBar:function(){var g=[];g.push('
');g.push("Adding selected datasets from history to library folder <%= _.escape(folder_name) %>");g.push("
");g.push('
');g.push('
');g.push(' 0% Complete');g.push("
");g.push("
");g.push("");return _.template(g.join(""))},templateDeletingDatasetsProgressBar:function(){var g=[];g.push('
');g.push("
");g.push('
');g.push('
');g.push(' 0% Complete');g.push("
");g.push("
");g.push("");return _.template(g.join(""))},templateBrowserModal:function(){var g=[];g.push('
');g.push('
');g.push('");g.push('");g.push('");g.push('");g.push("
");g.push('
All files you select will be imported into the current folder.
');g.push('');g.push('
');g.push("
");g.push("
");return _.template(g.join(""))},templateImportPathModal:function(){var g=[];g.push('
');g.push('");g.push('");g.push("
");g.push('
All files within the given folders and their subfolders will be imported into the current folder.
');g.push('');g.push("");return _.template(g.join(""))},templateAddFilesFromHistory:function(){var g=[];g.push('
');g.push('
');g.push("Select history: ");g.push('");g.push("
");g.push("
");g.push('
');g.push("
");g.push("
");return _.template(g.join(""))},templateHistoryContents:function(){var g=[];g.push("Choose the datasets to import:");g.push("
    ");g.push(" <% _.each(history_contents, function(history_item) { %>");g.push('
  • ">');g.push(' <%= _.escape(history_item.get("hid")) %>: <%= _.escape(history_item.get("name")) %>');g.push("
  • ");g.push(" <% }); %>");g.push("
");return _.template(g.join(""))}});return{FolderToolbarView:a}}); \ No newline at end of file +define(["galaxy.masthead","utils/utils","libs/toastr","libs/jquery/jstree","mvc/library/library-model"],function(c,e,f,b,d){var a=Backbone.View.extend({el:"#center",events:{"click #toolbtn_create_folder":"createFolderFromModal","click #toolbtn_bulk_import":"modalBulkImport","click #include_deleted_datasets_chk":"checkIncludeDeleted","click #toolbtn_show_libinfo":"showLibInfo","click #toolbtn_bulk_delete":"deleteSelectedDatasets"},defaults:{can_add_library_item:false,contains_file:false,chain_call_control:{total_number:0,failed_number:0},disabled_jstree_element:"folders"},modal:null,jstree:null,histories:null,initialize:function(g){this.options=_.defaults(g||{},this.defaults);this.render()},render:function(g){this.options=_.extend(this.options,g);var i=this.templateToolBar();var h={id:this.options.id,is_admin:false,is_anonym:true,user_library_import_dir:Galaxy.config.user_library_import_dir,allow_library_path_paste:Galaxy.config.allow_library_path_paste,library_import_dir:Galaxy.config.library_import_dir,mutiple_add_dataset_options:false};if(Galaxy.currUser){h.is_admin=Galaxy.currUser.isAdmin();h.is_anonym=Galaxy.currUser.isAnonymous();if(h.user_library_import_dir!==null||h.allow_library_path_paste!==false||h.library_import_dir!==null){h.mutiple_add_dataset_options=true}}this.$el.html(i(h))},configureElements:function(g){this.options=_.extend(this.options,g);if(this.options.can_add_library_item===true){$(".add-library-items").show()}else{$(".add-library-items").hide()}if(this.options.contains_file===true){if(Galaxy.currUser){if(!Galaxy.currUser.isAnonymous()){$(".logged-dataset-manipulation").show();$(".dataset-manipulation").show()}else{$(".dataset-manipulation").show();$(".logged-dataset-manipulation").hide()}}else{$(".logged-dataset-manipulation").hide();$(".dataset-manipulation").hide()}}else{$(".logged-dataset-manipulation").hide();$(".dataset-manipulation").hide()}this.$el.find("[data-toggle]").tooltip()},createFolderFromModal:function(i){i.preventDefault();i.stopPropagation();var g=this;var h=this.templateNewFolderInModal();this.modal=Galaxy.modal;this.modal.show({closing_events:true,title:"Create New Folder",body:h(),buttons:{Create:function(){g.create_new_folder_event()},Close:function(){Galaxy.modal.hide()}}})},create_new_folder_event:function(){var g=this.serialize_new_folder();if(this.validate_new_folder(g)){var h=new d.FolderAsModel();url_items=Backbone.history.fragment.split("/");current_folder_id=url_items[url_items.length-1];h.url=h.urlRoot+"/"+current_folder_id;h.save(g,{success:function(i){Galaxy.modal.hide();f.success("Folder created");i.set({type:"folder"});Galaxy.libraries.folderListView.collection.add(i)},error:function(j,i){Galaxy.modal.hide();if(typeof i.responseJSON!=="undefined"){f.error(i.responseJSON.err_msg)}else{f.error("An error ocurred :(")}}})}else{f.error("Folder's name is missing")}return false},serialize_new_folder:function(){return{name:$("input[name='Name']").val(),description:$("input[name='Description']").val()}},validate_new_folder:function(g){return g.name!==""},modalBulkImport:function(){var g=$("#folder_table").find(":checked");if(g.length===0){f.info("You have to select some datasets first")}else{this.refreshUserHistoriesList(function(i){var h=i.templateBulkImportInModal();i.modal=Galaxy.modal;i.modal.show({closing_events:true,title:"Import into History",body:h({histories:i.histories.models}),buttons:{Import:function(){i.importAllIntoHistory()},Close:function(){Galaxy.modal.hide()}}})})}},refreshUserHistoriesList:function(h){var g=this;this.histories=new d.GalaxyHistories();this.histories.fetch({success:function(){h(g)},error:function(j,i){if(typeof i.responseJSON!=="undefined"){f.error(i.responseJSON.err_msg)}else{f.error("An error ocurred :(")}}})},importAllIntoHistory:function(){this.modal.disableButton("Import");this.options.chain_call_control.total_number=0;this.options.chain_call_control.failed_number=0;var k=$("select[name=dataset_import_bulk] option:selected").val();this.options.last_used_history_id=k;var n=$("select[name=dataset_import_bulk] option:selected").text();var p=[];$("#folder_table").find(":checked").each(function(){if(this.parentElement.parentElement.id!==""){p.push(this.parentElement.parentElement.id)}});var o=this.templateImportIntoHistoryProgressBar();this.modal.$el.find(".modal-body").html(o({history_name:n}));var l=100/p.length;this.initProgress(l);var g=[];for(var h=p.length-1;h>=0;h--){var j=p[h];var m=new d.HistoryItem();m.url=m.urlRoot+k+"/contents";m.content=j;m.source="library";g.push(m)}this.options.chain_call_control.total_number=g.length;jQuery.getJSON(galaxy_config.root+"history/set_as_current?id="+k);this.chainCall(g,n)},chainCall:function(h,k){var g=this;var i=h.pop();if(typeof i==="undefined"){if(this.options.chain_call_control.failed_number===0){f.success("Selected datasets imported into history. Click this to start analysing it.","",{onclick:function(){window.location="/"}})}else{if(this.options.chain_call_control.failed_number===this.options.chain_call_control.total_number){f.error("There was an error and no datasets were imported into history.")}else{if(this.options.chain_call_control.failed_number'});$('
'+g+"
").appendTo("body").submit().remove();f.info("Your download will begin soon")}else{f.error("An error occurred :(")}},addFilesFromHistoryModal:function(){this.refreshUserHistoriesList(function(g){g.modal=Galaxy.modal;var h=g.templateAddFilesFromHistory();var i=g.options.full_path[g.options.full_path.length-1][1];g.modal.show({closing_events:true,title:"Adding datasets from your history to folder "+i,body:h({histories:g.histories.models}),buttons:{Add:function(){g.addAllDatasetsFromHistory()},Close:function(){Galaxy.modal.hide()}},closing_callback:function(){Galaxy.libraries.library_router.back()}});if(g.histories.models.length>0){g.fetchAndDisplayHistoryContents(g.histories.models[0].id);$("#dataset_add_bulk").change(function(j){g.fetchAndDisplayHistoryContents(j.target.value)})}else{f.error("An error ocurred :(")}})},importFilesFromPathModal:function(){var h=this;this.modal=Galaxy.modal;var g=this.templateImportPathModal();this.modal.show({closing_events:true,title:"Enter paths relative to Galaxy root",body:g({}),buttons:{Import:function(){h.importFromPathsClicked(h)},Close:function(){Galaxy.modal.hide()}},closing_callback:function(){Galaxy.libraries.library_router.navigate("folders/"+h.id,{trigger:true})}})},importFilesFromUserdirModal:function(){var h=this;this.modal=Galaxy.modal;var g=this.templateBrowserModal();this.modal.show({closing_events:true,title:"Select folders or files to import",body:g({}),buttons:{Import:function(){h.importFromUserdirClicked(h)},Close:function(){Galaxy.modal.hide()}},closing_callback:function(){Galaxy.libraries.library_router.navigate("folders/"+h.id,{trigger:true})}});this.renderJstree({disabled_jstree_element:"folders"});$("input[type=radio]").change(function(i){if(i.target.value==="jstree-disable-folders"){h.renderJstree({disabled_jstree_element:"folders"});$(".jstree-folders-message").hide();$(".jstree-preserve-structure").hide();$(".jstree-link-files").hide();$(".jstree-files-message").show()}else{if(i.target.value==="jstree-disable-files"){$(".jstree-files-message").hide();$(".jstree-folders-message").show();$(".jstree-link-files").show();$(".jstree-preserve-structure").show();h.renderJstree({disabled_jstree_element:"files"})}}})},renderJstree:function(g){var i=this;this.options=_.extend(this.options,g);var h=this.options.disabled_jstree_element;this.jstree=new d.Jstree();this.jstree.url=this.jstree.urlRoot+"?target=userdir&format=jstree&disable="+h;this.jstree.fetch({success:function(k,j){$("#jstree_browser").jstree("destroy");var l=$("#jstree_browser").jstree({core:{data:k},plugins:["types","checkbox"],types:{folder:{icon:"jstree-folder"},file:{icon:"jstree-file"}},checkbox:{three_state:false}})},error:function(k,j){if(typeof j.responseJSON!=="undefined"){f.error(j.responseJSON.err_msg)}else{f.error("An error ocurred :(")}}})},importFromPathsClicked:function(){var g=this.modal.$el.find(".preserve-checkbox").is(":checked");var l=this.modal.$el.find(".link-checkbox").is(":checked");var k=$("textarea#import_paths").val();if(!k){f.info("Please enter a path relative to Galaxy root")}else{this.modal.disableButton("Import");k=k.split("\n");var j=[];for(var h=k.length-1;h>=0;h--){trimmed=k[h].trim();if(trimmed.length!==0){j.push(trimmed)}}this.initChainCallControl(j.length);this.chainCallImportingFolders(j,g,l,"admin_path")}},initChainCallControl:function(g){var h=this.templateAddingDatasetsProgressBar();this.modal.$el.find(".modal-body").html(h({folder_name:this.options.folder_name}));this.progress=0;this.progressStep=100/g;this.options.chain_call_control.total_number=g;this.options.chain_call_control.failed_number=0},importFromUserdirClicked:function(l){var h=$("#jstree_browser").jstree().get_selected(true);var g=this.modal.$el.find(".preserve-checkbox").is(":checked");var o=this.modal.$el.find(".link-checkbox").is(":checked");var n=[];if(h.length<1){f.info("You have to select some items first")}else{this.modal.disableButton("Import");this.options.chain_call_control.total_number=0;this.options.chain_call_control.failed_number=0;for(var j=h.length-1;j>=0;j--){if(h[j].li_attr.full_path!==undefined){n.push(h[j].li_attr.full_path)}}var m=this.templateAddingDatasetsProgressBar();this.modal.$el.find(".modal-body").html(m({folder_name:this.options.folder_name}));this.progressStep=100/n.length;this.progress=0;this.options.chain_call_control.total_number=n.length;var k=h[0].type;if(k==="folder"){this.chainCallImportingFolders(n,g,o,"userdir_folder")}else{if(k==="file"){this.chainCallImportingUserdirFiles(n)}}}},chainCallImportingUserdirFiles:function(j){var g=this;var h=j.pop();if(typeof h==="undefined"){if(this.options.chain_call_control.failed_number===0){f.success("Selected files imported into the current folder");Galaxy.modal.hide()}else{f.error("Something went wrong :(")}return true}var i=$.when($.post("/api/libraries/datasets?encoded_folder_id="+g.id+"&source=userdir_file&path="+h));i.done(function(k){g.updateProgress();g.chainCallImportingUserdirFiles(j)}).fail(function(){g.options.chain_call_control.failed_number+=1;g.updateProgress();g.chainCallImportingUserdirFiles(j)})},chainCallImportingFolders:function(l,g,m,j){var h=this;var i=l.pop();if(typeof i=="undefined"){if(this.options.chain_call_control.failed_number===0){f.success("Selected folders and their contents imported into the current folder");Galaxy.modal.hide()}else{f.error("Something went wrong :(")}return true}var k=$.when($.post("/api/libraries/datasets?encoded_folder_id="+h.id+"&source="+j+"&path="+i+"&preserve_dirs="+g+"&link_data="+m));k.done(function(n){h.updateProgress();h.chainCallImportingFolders(l,g,m,j)}).fail(function(){h.options.chain_call_control.failed_number+=1;h.updateProgress();h.chainCallImportingFolders(l,g,m,j)})},fetchAndDisplayHistoryContents:function(i){var h=new d.HistoryContents({id:i});var g=this;h.fetch({success:function(k){var j=g.templateHistoryContents();g.histories.get(i).set({contents:k});g.modal.$el.find("#selected_history_content").html(j({history_contents:k.models.reverse()}))},error:function(k,j){if(typeof j.responseJSON!=="undefined"){f.error(j.responseJSON.err_msg)}else{f.error("An error ocurred :(")}}})},addAllDatasetsFromHistory:function(){var l=this.modal.$el.find("#selected_history_content").find(":checked");if(l.length<1){f.info("You have to select some datasets first")}else{this.modal.disableButton("Add");this.options.chain_call_control.total_number=0;this.options.chain_call_control.failed_number=0;var g=[];l.each(function(){var i=$(this.parentElement).data("id");if(i){g.push(i)}});var m=this.templateAddingDatasetsProgressBar();this.modal.$el.find(".modal-body").html(m({folder_name:this.options.folder_name}));this.progressStep=100/g.length;this.progress=0;var k=[];for(var j=g.length-1;j>=0;j--){history_dataset_id=g[j];var h=new d.Item();h.url="/api/folders/"+this.options.id+"/contents";h.set({from_hda_id:history_dataset_id});k.push(h)}this.options.chain_call_control.total_number=k.length;this.chainCallAddingHdas(k)}},chainCallAddingHdas:function(h){var g=this;this.added_hdas=new d.Folder();var i=h.pop();if(typeof i==="undefined"){if(this.options.chain_call_control.failed_number===0){f.success("Selected datasets from history added to the folder")}else{if(this.options.chain_call_control.failed_number===this.options.chain_call_control.total_number){f.error("There was an error and no datasets were added to the folder.")}else{if(this.options.chain_call_control.failed_number=0;j--){var l=new d.Item({id:h[j]});m.push(l)}this.options.chain_call_control.total_number=h.length;this.chainCallDeletingHdas(m)}},chainCallDeletingHdas:function(h){var g=this;this.deleted_lddas=new d.Folder();var i=h.pop();if(typeof i==="undefined"){if(this.options.chain_call_control.failed_number===0){f.success("Selected datasets deleted")}else{if(this.options.chain_call_control.failed_number===this.options.chain_call_control.total_number){f.error("There was an error and no datasets were deleted.")}else{if(this.options.chain_call_control.failed_number');tmpl_array.push('
');tmpl_array.push(" DATA LIBRARIES");tmpl_array.push(' ');tmpl_array.push(' ');tmpl_array.push("<% if(mutiple_add_dataset_options) { %>");tmpl_array.push(' ");tmpl_array.push("<% } else { %>");tmpl_array.push(' ');tmpl_array.push("<% } %>");tmpl_array.push(' ');tmpl_array.push(' ");tmpl_array.push(' ');tmpl_array.push(' ');tmpl_array.push(' ');tmpl_array.push("
");tmpl_array.push('
');tmpl_array.push("
");tmpl_array.push("");return _.template(tmpl_array.join(""))},templateLibInfoInModal:function(){tmpl_array=[];tmpl_array.push('
');tmpl_array.push("

Library name:

");tmpl_array.push('

<%- library.get("name") %>

');tmpl_array.push("

Library description:

");tmpl_array.push('

<%- library.get("description") %>

');tmpl_array.push("

Library synopsis:

");tmpl_array.push('

<%- library.get("synopsis") %>

');tmpl_array.push("
");return _.template(tmpl_array.join(""))},templateNewFolderInModal:function(){tmpl_array=[];tmpl_array.push('
');tmpl_array.push("
");tmpl_array.push('');tmpl_array.push('');tmpl_array.push("
");tmpl_array.push("
");return _.template(tmpl_array.join(""))},templateBulkImportInModal:function(){var g=[];g.push('');g.push("Select history: ");g.push('");g.push("");return _.template(g.join(""))},templateImportIntoHistoryProgressBar:function(){var g=[];g.push('
');g.push("Importing selected datasets to history <%= _.escape(history_name) %>");g.push("
");g.push('
');g.push('
');g.push(' 0% Complete');g.push("
");g.push("
");g.push("");return _.template(g.join(""))},templateAddingDatasetsProgressBar:function(){var g=[];g.push('
');g.push("Adding selected datasets from history to library folder <%= _.escape(folder_name) %>");g.push("
");g.push('
');g.push('
');g.push(' 0% Complete');g.push("
");g.push("
");g.push("");return _.template(g.join(""))},templateDeletingDatasetsProgressBar:function(){var g=[];g.push('
');g.push("
");g.push('
');g.push('
');g.push(' 0% Complete');g.push("
");g.push("
");g.push("");return _.template(g.join(""))},templateBrowserModal:function(){var g=[];g.push('
');g.push('
');g.push('");g.push('");g.push('");g.push('");g.push("
");g.push('
All files you select will be imported into the current folder.
');g.push('');g.push('
');g.push("
");g.push("
");return _.template(g.join(""))},templateImportPathModal:function(){var g=[];g.push('
');g.push('");g.push('");g.push("
");g.push('
All files within the given folders and their subfolders will be imported into the current folder.
');g.push('');g.push("");return _.template(g.join(""))},templateAddFilesFromHistory:function(){var g=[];g.push('
');g.push('
');g.push("Select history: ");g.push('");g.push("
");g.push("
");g.push('
');g.push("
");g.push("
");return _.template(g.join(""))},templateHistoryContents:function(){var g=[];g.push("Choose the datasets to import:");g.push("
    ");g.push(" <% _.each(history_contents, function(history_item) { %>");g.push('
  • ">');g.push(' <%= _.escape(history_item.get("hid")) %>: <%= _.escape(history_item.get("name")) %>');g.push("
  • ");g.push(" <% }); %>");g.push("
");return _.template(g.join(""))}});return{FolderToolbarView:a}}); \ No newline at end of file diff --git a/static/scripts/packed/mvc/library/library-library-view.js b/static/scripts/packed/mvc/library/library-library-view.js index a5d0370e4b9..7d4d58eaf0b 100644 --- a/static/scripts/packed/mvc/library/library-library-view.js +++ b/static/scripts/packed/mvc/library/library-library-view.js @@ -1 +1 @@ -define(["libs/toastr","mvc/library/library-model","mvc/ui/ui-select"],function(d,c,a){var b=Backbone.View.extend({el:"#center",model:null,options:{},events:{"click .toolbtn_save_permissions":"savePermissions"},initialize:function(e){this.options=_.extend(this.options,e);if(this.options.id){this.fetchLibrary()}},fetchLibrary:function(e){this.options=_.extend(this.options,e);this.model=new c.Library({id:this.options.id});var f=this;this.model.fetch({success:function(){if(f.options.show_permissions){f.showPermissions()}else{f.render()}},error:function(h,g){if(typeof g.responseJSON!=="undefined"){d.error(g.responseJSON.err_msg+" Click this to go back.","",{onclick:function(){Galaxy.libraries.library_router.back()}})}else{d.error("An error ocurred :(. Click this to go back.","",{onclick:function(){Galaxy.libraries.library_router.back()}})}}})},render:function(e){$(".tooltip").remove();this.options=_.extend(this.options,e);var f=this.templateLibrary();this.$el.html(f({item:this.model}));$("#center [data-toggle]").tooltip()},shareDataset:function(){d.info("Feature coming soon.")},goBack:function(){Galaxy.libraries.library_router.back()},showPermissions:function(f){this.options=_.extend(this.options,f);$(".tooltip").remove();if(this.options.fetched_permissions!==undefined){if(this.options.fetched_permissions.access_library_role_list.length===0){this.model.set({is_unrestricted:true})}else{this.model.set({is_unrestricted:false})}}var h=false;if(Galaxy.currUser){h=Galaxy.currUser.isAdmin()}var g=this.templateLibraryPermissions();this.$el.html(g({library:this.model,is_admin:h}));var e=this;if(this.options.fetched_permissions===undefined){$.get("/api/libraries/"+e.id+"/permissions?scope=current").done(function(i){e.prepareSelectBoxes({fetched_permissions:i})}).fail(function(){d.error("An error occurred while fetching library permissions. :(")})}else{this.prepareSelectBoxes({})}$("#center [data-toggle]").tooltip();$("#center").css("overflow","auto")},_serializeRoles:function(g){var e=[];for(var f=0;f=0;f--){ids_list.push(e[f].id)}return ids_list},savePermissions:function(h){var g=this;var i=this._extractIds(this.accessSelectObject.$el.select2("data"));var e=this._extractIds(this.addSelectObject.$el.select2("data"));var j=this._extractIds(this.manageSelectObject.$el.select2("data"));var f=this._extractIds(this.modifySelectObject.$el.select2("data"));$.post("/api/libraries/"+g.id+"/permissions?action=set_permissions",{"access_ids[]":i,"add_ids[]":e,"manage_ids[]":j,"modify_ids[]":f,}).done(function(k){g.showPermissions({fetched_permissions:k});d.success("Permissions saved")}).fail(function(){d.error("An error occurred while setting library permissions :(")})},templateLibrary:function(){var e=[];e.push('
');e.push('
');e.push(' ');e.push(' /datasets/<%- item.id %>/permissions">');e.push(' ');e.push("
");e.push("

");e.push(" This dataset is unrestricted so everybody can access it. Just share the URL of this page. ");e.push(' ');e.push("

");e.push('
');e.push(' ');e.push(" ");e.push(' ');e.push(' ');e.push(" ");e.push(' <% if (item.get("file_ext")) { %>');e.push(" ");e.push(' ');e.push(' ');e.push(" ");e.push(" <% } %>");e.push("
">Name<%= _.escape(item.get("name")) %>
Data type<%= _.escape(item.get("file_ext")) %>
");e.push("
");e.push("
");return _.template(e.join(""))},templateLibraryPermissions:function(){var e=[];e.push('
');e.push('
');e.push(' ');e.push("
");e.push('

Library: <%= _.escape(library.get("name")) %>

');e.push('
');e.push("<% if (is_admin) { %>");e.push("You are logged in as an administrator therefore you can manage any library on this Galaxy instance. Please make sure you understand the consequences.");e.push("<% } else { %>");e.push("You can assign any number of roles to any of the following permission types. However please read carefully the implications of such actions.");e.push("<% }%>");e.push("
");e.push('
');e.push("

Library permissions

");e.push("

Roles that can access the library

");e.push('
');e.push('
User with any of these roles can access this library. If there are no access roles set on the library it is considered unrestricted.
');e.push("

Roles that can manage permissions on this library

");e.push('
');e.push('
User with any of these roles can manage permissions on this library (includes giving access).
');e.push("

Roles that can add items to this library

");e.push('
');e.push('
User with any of these roles can add items to this library (folders and datasets).
');e.push("

Roles that can modify this library

");e.push('
');e.push('
User with any of these roles can modify this library (name, synopsis, etc.).
');e.push('');e.push("
");e.push("
");return _.template(e.join(""))}});return{LibraryView:b}}); \ No newline at end of file +define(["libs/toastr","mvc/library/library-model","mvc/ui/ui-select"],function(d,c,a){var b=Backbone.View.extend({el:"#center",model:null,options:{},events:{"click .toolbtn_save_permissions":"savePermissions"},initialize:function(e){this.options=_.extend(this.options,e);if(this.options.id){this.fetchLibrary()}},fetchLibrary:function(e){this.options=_.extend(this.options,e);this.model=new c.Library({id:this.options.id});var f=this;this.model.fetch({success:function(){if(f.options.show_permissions){f.showPermissions()}else{f.render()}},error:function(h,g){if(typeof g.responseJSON!=="undefined"){d.error(g.responseJSON.err_msg+" Click this to go back.","",{onclick:function(){Galaxy.libraries.library_router.back()}})}else{d.error("An error ocurred :(. Click this to go back.","",{onclick:function(){Galaxy.libraries.library_router.back()}})}}})},render:function(e){$(".tooltip").remove();this.options=_.extend(this.options,e);var f=this.templateLibrary();this.$el.html(f({item:this.model}));$("#center [data-toggle]").tooltip()},shareDataset:function(){d.info("Feature coming soon.")},goBack:function(){Galaxy.libraries.library_router.back()},showPermissions:function(f){this.options=_.extend(this.options,f);$(".tooltip").remove();if(this.options.fetched_permissions!==undefined){if(this.options.fetched_permissions.access_library_role_list.length===0){this.model.set({is_unrestricted:true})}else{this.model.set({is_unrestricted:false})}}var h=false;if(Galaxy.currUser){h=Galaxy.currUser.isAdmin()}var g=this.templateLibraryPermissions();this.$el.html(g({library:this.model,is_admin:h}));var e=this;if(this.options.fetched_permissions===undefined){$.get("/api/libraries/"+e.id+"/permissions?scope=current").done(function(i){e.prepareSelectBoxes({fetched_permissions:i})}).fail(function(){d.error("An error occurred while fetching library permissions. :(")})}else{this.prepareSelectBoxes({})}$("#center [data-toggle]").tooltip();$("#center").css("overflow","auto")},_serializeRoles:function(g){var e=[];for(var f=0;f=0;f--){ids_list.push(e[f].id)}return ids_list},savePermissions:function(h){var g=this;var i=this._extractIds(this.accessSelectObject.$el.select2("data"));var e=this._extractIds(this.addSelectObject.$el.select2("data"));var j=this._extractIds(this.manageSelectObject.$el.select2("data"));var f=this._extractIds(this.modifySelectObject.$el.select2("data"));$.post("/api/libraries/"+g.id+"/permissions?action=set_permissions",{"access_ids[]":i,"add_ids[]":e,"manage_ids[]":j,"modify_ids[]":f,}).done(function(k){g.showPermissions({fetched_permissions:k});d.success("Permissions saved")}).fail(function(){d.error("An error occurred while setting library permissions :(")})},templateLibrary:function(){var e=[];e.push('
');e.push('
');e.push(' ');e.push(' /datasets/<%- item.id %>/permissions">');e.push(' ');e.push("
");e.push("

");e.push(" This dataset is unrestricted so everybody can access it. Just share the URL of this page. ");e.push(' ');e.push("

");e.push('
');e.push(' ');e.push(" ");e.push(' ');e.push(' ');e.push(" ");e.push(' <% if (item.get("file_ext")) { %>');e.push(" ");e.push(' ');e.push(' ');e.push(" ");e.push(" <% } %>");e.push("
">Name<%= _.escape(item.get("name")) %>
Data type<%= _.escape(item.get("file_ext")) %>
");e.push("
");e.push("
");return _.template(e.join(""))},templateLibraryPermissions:function(){var e=[];e.push('
');e.push('
');e.push(' ');e.push("
");e.push('

Library: <%= _.escape(library.get("name")) %>

');e.push('
');e.push("<% if (is_admin) { %>");e.push("You are logged in as an administrator therefore you can manage any library on this Galaxy instance. Please make sure you understand the consequences.");e.push("<% } else { %>");e.push("You can assign any number of roles to any of the following permission types. However please read carefully the implications of such actions.");e.push("<% }%>");e.push("
");e.push('
');e.push("

Library permissions

");e.push("

Roles that can access the library

");e.push('
');e.push('
User with any of these roles can access this library. If there are no access roles set on the library it is considered unrestricted.
');e.push("

Roles that can manage permissions on this library

");e.push('
');e.push('
User with any of these roles can manage permissions on this library (includes giving access).
');e.push("

Roles that can add items to this library

");e.push('
');e.push('
User with any of these roles can add items to this library (folders and datasets).
');e.push("

Roles that can modify this library

");e.push('
');e.push('
User with any of these roles can modify this library (name, synopsis, etc.).
');e.push('');e.push("
");e.push("
");return _.template(e.join(""))}});return{LibraryView:b}}); \ No newline at end of file