mirror of
https://github.com/galaxyproject/galaxy.git
synced 2026-09-24 16:30:27 +08:00
provide UI to delete and udelete lib folders; slight refactor
This commit is contained in:
@@ -263,6 +263,11 @@ var FolderListView = Backbone.View.extend({
|
||||
* Currently supports only sorting by name.
|
||||
*/
|
||||
sortFolder: function(sort_by, order){
|
||||
console.log('sorting');
|
||||
// default to asc sort by name
|
||||
if (sort_by === 'undefined' && order === 'undefined'){
|
||||
return this.collection.sortByNameAsc();
|
||||
}
|
||||
if (sort_by === 'name'){
|
||||
if (order === 'asc'){
|
||||
return this.collection.sortByNameAsc();
|
||||
|
||||
@@ -15,7 +15,8 @@ var FolderRowView = Backbone.View.extend({
|
||||
lastSelectedHistory: '',
|
||||
|
||||
events: {
|
||||
'click .undelete_dataset_btn' : 'undelete_dataset'
|
||||
'click .undelete_dataset_btn' : 'undeleteDataset',
|
||||
'click .undelete_folder_btn' : 'undeleteFolder'
|
||||
},
|
||||
|
||||
options: {
|
||||
@@ -29,16 +30,23 @@ var FolderRowView = Backbone.View.extend({
|
||||
|
||||
render: function(folder_item){
|
||||
var template = null;
|
||||
if (folder_item.get('type') === 'folder'){
|
||||
if (folder_item.get('type') === 'folder' || folder_item.get('model_class') === 'LibraryFolder'){
|
||||
this.options.type = 'folder';
|
||||
template = this.templateRowFolder();
|
||||
} else {
|
||||
if (folder_item.get('deleted')){
|
||||
template = this.templateRowDeletedFolder();
|
||||
} else{
|
||||
template = this.templateRowFolder();
|
||||
}
|
||||
} else if (folder_item.get('type') === 'file' || folder_item.get('model_class') === 'LibraryDataset'){
|
||||
this.options.type = 'file';
|
||||
if (folder_item.get('deleted')){
|
||||
template = this.templateRowDeletedFile();
|
||||
} else {
|
||||
template = this.templateRowFile();
|
||||
}
|
||||
} else {
|
||||
console.error('Unknown library item type found.');
|
||||
console.error(folder_item.get('type') || folder_item.get('model_class'));
|
||||
}
|
||||
this.setElement(template({content_item:folder_item}));
|
||||
this.$el.show();
|
||||
@@ -52,7 +60,7 @@ var FolderRowView = Backbone.View.extend({
|
||||
/**
|
||||
* Undeletes the dataset on server and renders the row again.
|
||||
*/
|
||||
undelete_dataset : function(event){
|
||||
undeleteDataset : function(event){
|
||||
$(".tooltip").hide();
|
||||
var that = this;
|
||||
var dataset_id = $(event.target).closest('tr')[0].id;
|
||||
@@ -63,6 +71,7 @@ var FolderRowView = Backbone.View.extend({
|
||||
Galaxy.libraries.folderListView.collection.remove(dataset_id);
|
||||
var updated_dataset = new mod_library_model.Item(response);
|
||||
Galaxy.libraries.folderListView.collection.add(updated_dataset);
|
||||
Galaxy.libraries.folderListView.collection.sortByNameAsc();
|
||||
mod_toastr.success('Dataset undeleted. Click this to see it.', '', {onclick: function() {
|
||||
var folder_id = that.model.get('folder_id');
|
||||
window.location='#folders/' + folder_id + '/datasets/' + that.id;
|
||||
@@ -78,6 +87,33 @@ var FolderRowView = Backbone.View.extend({
|
||||
});
|
||||
},
|
||||
|
||||
/**
|
||||
* Undeletes the folder on server and renders the row again.
|
||||
*/
|
||||
undeleteFolder : function(event){
|
||||
$(".tooltip").hide();
|
||||
var that = this;
|
||||
var folder_id = $(event.target).closest('tr')[0].id;
|
||||
var folder = Galaxy.libraries.folderListView.collection.get(folder_id);
|
||||
folder.url = folder.urlRoot + folder.id + '?undelete=true';
|
||||
folder.destroy({
|
||||
success : function(model, response){
|
||||
Galaxy.libraries.folderListView.collection.remove(folder_id);
|
||||
var updated_folder = new mod_library_model.FolderAsModel(response);
|
||||
Galaxy.libraries.folderListView.collection.add(updated_folder);
|
||||
Galaxy.libraries.folderListView.collection.sortByNameAsc();
|
||||
mod_toastr.success('Folder undeleted.');
|
||||
},
|
||||
error : function(model, response){
|
||||
if (typeof response.responseJSON !== "undefined"){
|
||||
mod_toastr.error('Folder was not undeleted. ' + response.responseJSON.err_msg);
|
||||
} else {
|
||||
mod_toastr.error('An error occured! Folder was not undeleted. Please try again.');
|
||||
}
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
templateRowFolder: function() {
|
||||
tmpl_array = [];
|
||||
|
||||
@@ -138,6 +174,26 @@ var FolderRowView = Backbone.View.extend({
|
||||
tmpl_array.push(' <td><span data-toggle="tooltip" data-placement="top" title="Marked deleted" style="color:grey;" class="fa fa-ban fa-lg"> </span><button data-toggle="tooltip" data-placement="top" title="Undelete <%- content_item.get("name") %>" class="primary-button btn-xs undelete_dataset_btn show_on_hover" type="button" style="display:none; margin-left:1em;"><span class="fa fa-unlock"> Undelete</span></button></td>');
|
||||
tmpl_array.push('</tr>');
|
||||
|
||||
return _.template(tmpl_array.join(''));
|
||||
},
|
||||
|
||||
templateRowDeletedFolder: function(){
|
||||
tmpl_array = [];
|
||||
|
||||
tmpl_array.push('<tr class="active folder_row light library-row" id="<%- content_item.id %>">');
|
||||
tmpl_array.push(' <td>');
|
||||
tmpl_array.push(' <span title="Folder" class="fa fa-folder-o"></span>');
|
||||
tmpl_array.push(' </td>');
|
||||
tmpl_array.push(' <td></td>');
|
||||
tmpl_array.push(' <td style="color:grey;">');
|
||||
tmpl_array.push(' <%- content_item.get("name") %>');
|
||||
tmpl_array.push(' </td>');
|
||||
tmpl_array.push(' <td>folder</td>');
|
||||
tmpl_array.push(' <td></td>');
|
||||
tmpl_array.push(' <td><%= _.escape(content_item.get("update_time")) %></td>'); // time updated
|
||||
tmpl_array.push(' <td><span data-toggle="tooltip" data-placement="top" title="Marked deleted" style="color:grey;" class="fa fa-ban fa-lg"> </span><button data-toggle="tooltip" data-placement="top" title="Undelete <%- content_item.get("name") %>" class="primary-button btn-xs undelete_folder_btn show_on_hover" type="button" style="display:none; margin-left:1em;"><span class="fa fa-unlock"> Undelete</span></button></td>');
|
||||
tmpl_array.push('</tr>');
|
||||
|
||||
return _.template(tmpl_array.join(''));
|
||||
}
|
||||
|
||||
|
||||
@@ -863,37 +863,45 @@ var FolderToolbarView = Backbone.View.extend({
|
||||
* call them in chain. Update progress bar in between each.
|
||||
* @param {array} lddas_set array of lddas to delete
|
||||
*/
|
||||
chainCallDeletingHdas: function( lddas_set ){
|
||||
chainCallDeletingItems: function( items_to_delete ){
|
||||
var self = this;
|
||||
this.deleted_lddas = new mod_library_model.Folder();
|
||||
var popped_item = lddas_set.pop();
|
||||
this.deleted_items = new mod_library_model.Folder();
|
||||
var popped_item = items_to_delete.pop();
|
||||
if ( typeof popped_item === "undefined" ) {
|
||||
if ( this.options.chain_call_control.failed_number === 0 ){
|
||||
mod_toastr.success( 'Selected datasets were deleted.' );
|
||||
mod_toastr.success( 'Selected items were deleted.' );
|
||||
} else if ( this.options.chain_call_control.failed_number === this.options.chain_call_control.total_number ){
|
||||
mod_toastr.error( 'There was an error and no datasets were deleted. Please make sure you have sufficient permissions.' );
|
||||
mod_toastr.error( 'There was an error and no items were deleted. Please make sure you have sufficient permissions.' );
|
||||
} else if ( this.options.chain_call_control.failed_number < this.options.chain_call_control.total_number ){
|
||||
mod_toastr.warning( 'Some of the datasets could not be deleted. Please make sure you have sufficient permissions.' );
|
||||
mod_toastr.warning( 'Some of the items could not be deleted. Please make sure you have sufficient permissions.' );
|
||||
}
|
||||
Galaxy.modal.hide();
|
||||
return this.deleted_lddas;
|
||||
return this.deleted_items;
|
||||
}
|
||||
var promise = $.when( popped_item.destroy() );
|
||||
|
||||
promise.done( function( dataset ){
|
||||
promise.done( function( item ){
|
||||
Galaxy.libraries.folderListView.collection.remove( popped_item.id );
|
||||
self.updateProgress();
|
||||
// add the deleted dataset to collection, triggers rendering
|
||||
// add the deleted item to collection, triggers rendering
|
||||
if ( Galaxy.libraries.folderListView.options.include_deleted ){
|
||||
var updated_dataset = new mod_library_model.Item( dataset );
|
||||
Galaxy.libraries.folderListView.collection.add( updated_dataset );
|
||||
var updated_item = null;
|
||||
if (item.type === 'folder' || item.model_class === 'LibraryFolder'){
|
||||
updated_item = new mod_library_model.FolderAsModel( item );
|
||||
} else if (item.type === 'file' || item.model_class === 'LibraryDataset'){
|
||||
updated_item = new mod_library_model.Item( item );
|
||||
} else {
|
||||
console.error('Unknown library item type found.');
|
||||
console.error(item.type || item.model_class);
|
||||
}
|
||||
Galaxy.libraries.folderListView.collection.add( updated_item );
|
||||
}
|
||||
self.chainCallDeletingHdas( lddas_set );
|
||||
self.chainCallDeletingItems( items_to_delete );
|
||||
})
|
||||
.fail( function(){
|
||||
self.options.chain_call_control.failed_number += 1;
|
||||
self.updateProgress();
|
||||
self.chainCallDeletingHdas( lddas_set );
|
||||
self.chainCallDeletingItems( items_to_delete );
|
||||
});
|
||||
},
|
||||
|
||||
@@ -931,29 +939,35 @@ var FolderToolbarView = Backbone.View.extend({
|
||||
this.options.chain_call_control.failed_number = 0;
|
||||
|
||||
var dataset_ids = [];
|
||||
var folder_ids = [];
|
||||
checkedValues.each(function(){
|
||||
if (this.parentElement.parentElement.id !== '') {
|
||||
if (this.parentElement.parentElement.id.substring(0,1) == 'F'){
|
||||
mod_toastr.error('Deleting folders is not implemented yet');
|
||||
folder_ids.push(this.parentElement.parentElement.id);
|
||||
} else {
|
||||
dataset_ids.push(this.parentElement.parentElement.id);
|
||||
}
|
||||
}
|
||||
});
|
||||
// init the progress bar
|
||||
this.progressStep = 100 / dataset_ids.length;
|
||||
var items_total = dataset_ids.length + folder_ids.length
|
||||
this.progressStep = 100 / items_total;
|
||||
this.progress = 0;
|
||||
|
||||
// prepare the dataset items to be added
|
||||
var lddas_to_delete = [];
|
||||
var items_to_delete = [];
|
||||
for (var i = dataset_ids.length - 1; i >= 0; i--) {
|
||||
var dataset = new mod_library_model.Item({id:dataset_ids[i]});
|
||||
lddas_to_delete.push(dataset);
|
||||
items_to_delete.push(dataset);
|
||||
}
|
||||
for (var i = folder_ids.length - 1; i >= 0; i--) {
|
||||
var folder = new mod_library_model.FolderAsModel({id:folder_ids[i]});
|
||||
items_to_delete.push(folder);
|
||||
}
|
||||
|
||||
this.options.chain_call_control.total_number = dataset_ids.length;
|
||||
this.options.chain_call_control.total_number = items_total.length;
|
||||
// call the recursive function to call ajax one after each other (request FIFO queue)
|
||||
this.chainCallDeletingHdas(lddas_to_delete);
|
||||
this.chainCallDeletingItems(items_to_delete);
|
||||
}
|
||||
},
|
||||
|
||||
|
||||
@@ -83,20 +83,19 @@ define([], function() {
|
||||
// ============================================================================
|
||||
// FOLDER RELATED MODELS
|
||||
|
||||
var Item = Backbone.Model.extend({
|
||||
var LibraryItem = Backbone.Model.extend({
|
||||
});
|
||||
|
||||
var Ldda = LibraryItem.extend({
|
||||
urlRoot : ( window.galaxy_config ? galaxy_config.root : '/' ) + 'api/libraries/datasets/'
|
||||
});
|
||||
|
||||
var Ldda = Backbone.Model.extend({
|
||||
urlRoot : ( window.galaxy_config ? galaxy_config.root : '/' ) + 'api/libraries/datasets/'
|
||||
});
|
||||
|
||||
var FolderAsModel = Backbone.Model.extend({
|
||||
urlRoot: ( window.galaxy_config ? galaxy_config.root : '/' ) + 'api/folders'
|
||||
var FolderAsModel = LibraryItem.extend({
|
||||
urlRoot: ( window.galaxy_config ? galaxy_config.root : '/' ) + 'api/folders/'
|
||||
});
|
||||
|
||||
var Folder = Backbone.Collection.extend({
|
||||
model: Item,
|
||||
model: LibraryItem,
|
||||
|
||||
/** Sort collection by item name (ascending) and return the sorted
|
||||
* collection. Folders go before datasets.
|
||||
@@ -150,16 +149,28 @@ define([], function() {
|
||||
});
|
||||
|
||||
var FolderContainer = Backbone.Model.extend({
|
||||
defaults : {
|
||||
folder : new Folder(),
|
||||
urlRoot : ( window.galaxy_config ? galaxy_config.root : '/' ) + 'api/folders/',
|
||||
id : "unknown"
|
||||
},
|
||||
parse : function(obj) {
|
||||
// response is not a simple array, it contains metadata
|
||||
// this will update the inner collection
|
||||
this.get("folder").reset(obj.folder_contents);
|
||||
return obj;
|
||||
defaults : {
|
||||
folder : new Folder(),
|
||||
urlRoot : ( window.galaxy_config ? galaxy_config.root : '/' ) + 'api/folders/',
|
||||
id : "unknown"
|
||||
},
|
||||
parse : function(obj) {
|
||||
// empty the collection
|
||||
this.get("folder").reset();
|
||||
// response is not a simple array, it contains metadata
|
||||
// this will update the inner collection
|
||||
for (var i = 0; i < obj.folder_contents.length; i++) {
|
||||
if (obj.folder_contents[i].type === 'folder'){
|
||||
var folder_item = new FolderAsModel(obj.folder_contents[i])
|
||||
this.get("folder").add(folder_item);
|
||||
} else if(obj.folder_contents[i].type === 'file'){
|
||||
var file_item = new Ldda(obj.folder_contents[i])
|
||||
this.get("folder").add(file_item);
|
||||
} else{
|
||||
console.error('Unknown folder item type encountered while parsing response.');
|
||||
}
|
||||
};
|
||||
return obj;
|
||||
}
|
||||
});
|
||||
|
||||
@@ -204,10 +215,10 @@ define([], function() {
|
||||
|
||||
return {
|
||||
Library: Library,
|
||||
FolderAsModel : FolderAsModel,
|
||||
Libraries : Libraries,
|
||||
Item : Item,
|
||||
Item : Ldda,
|
||||
Ldda : Ldda,
|
||||
FolderAsModel : FolderAsModel,
|
||||
Folder : Folder,
|
||||
FolderContainer : FolderContainer,
|
||||
HistoryItem : HistoryItem,
|
||||
|
||||
@@ -152,7 +152,7 @@ class FolderManager( object ):
|
||||
changed = False
|
||||
if not trans.user_is_admin():
|
||||
if not self.check_manageable( trans, folder ):
|
||||
raise InsufficientPermissionsException( "You do not have proper permission to update library folders." )
|
||||
raise InsufficientPermissionsException( "You do not have proper permission to update the library folder." )
|
||||
if folder.deleted == True:
|
||||
raise ItemAccessibilityException( "You cannot update deleted library folder. Undelete it first." )
|
||||
if name is not None and name != folder.name:
|
||||
|
||||
@@ -229,16 +229,16 @@ class FoldersController( BaseAPIController, UsesLibraryMixin, UsesLibraryMixinIt
|
||||
return self.folder_manager.get_current_roles( trans, folder )
|
||||
|
||||
@expose_api
|
||||
def delete( self, trans, id, **kwd ):
|
||||
def delete( self, trans, encoded_folder_id, **kwd ):
|
||||
"""
|
||||
delete( self, trans, id, **kwd )
|
||||
* DELETE /api/folders/{id}
|
||||
marks the folder with the given ``id`` as `deleted` (or removes the `deleted` mark if the `undelete` param is true)
|
||||
delete( self, trans, encoded_folder_id, **kwd )
|
||||
* DELETE /api/folders/{encoded_folder_id}
|
||||
marks the folder with the given ``encoded_folder_id`` as `deleted` (or removes the `deleted` mark if the `undelete` param is true)
|
||||
|
||||
.. note:: Currently, only admin users can un/delete folders.
|
||||
|
||||
:param id: the encoded id of the folder to un/delete
|
||||
:type id: an encoded id string
|
||||
:param encoded_folder_id: the encoded id of the folder to un/delete
|
||||
:type encoded_folder_id: an encoded id string
|
||||
|
||||
:param undelete: (optional) flag specifying whether the item should be deleted or undeleted, defaults to false:
|
||||
:type undelete: bool
|
||||
@@ -247,10 +247,11 @@ class FoldersController( BaseAPIController, UsesLibraryMixin, UsesLibraryMixinIt
|
||||
:rtype: dictionary
|
||||
|
||||
"""
|
||||
folder = self.folder_manager.get( trans, self.folder_manager.cut_and_decode( trans, id ), True )
|
||||
folder = self.folder_manager.get( trans, self.folder_manager.cut_and_decode( trans, encoded_folder_id ), True )
|
||||
undelete = util.string_as_bool( kwd.get( 'undelete', False ) )
|
||||
folder = self.folder_manager.delete( trans, folder, undelete )
|
||||
folder_dict = self.folder_manager.get_folder_dict( trans, folder )
|
||||
folder_dict['update_time'] = folder.update_time.strftime( "%Y-%m-%d %I:%M %p" )
|
||||
return folder_dict
|
||||
|
||||
@expose_api
|
||||
|
||||
@@ -487,6 +487,12 @@ def populate_api_routes( webapp, app ):
|
||||
action='create',
|
||||
conditions=dict( method=[ "POST" ] ) )
|
||||
|
||||
webapp.mapper.connect( 'delete_folder',
|
||||
'/api/folders/{encoded_folder_id}',
|
||||
controller='folders',
|
||||
action='delete',
|
||||
conditions=dict( method=[ "DELETE" ] ) )
|
||||
|
||||
webapp.mapper.connect( 'update_folder',
|
||||
'/api/folders/{encoded_folder_id}',
|
||||
controller='folders',
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -1 +1 @@
|
||||
{"version":3,"file":"library-folderrow-view.js","sources":["../../../src/mvc/library/library-folderrow-view.js"],"names":["define","mod_masthead","mod_utils","mod_toastr","mod_library_model","mod_library_dataset_view","FolderRowView","Backbone","View","extend","lastSelectedHistory","events","click .undelete_dataset_btn","options","type","initialize","folder_item","this","model","render","template","get","templateRowFolder","templateRowDeletedFile","templateRowFile","setElement","content_item","$el","show","showDatasetDetails","Galaxy","libraries","datasetView","LibraryDatasetView","id","undelete_dataset","event","$","hide","that","dataset_id","target","closest","dataset","folderListView","collection","url","urlRoot","destroy","success","response","remove","updated_dataset","Item","add","onclick","folder_id","window","location","error","responseJSON","err_msg","tmpl_array","push","_","join"],"mappings":"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"}
|
||||
{"version":3,"file":"library-folderrow-view.js","sources":["../../../src/mvc/library/library-folderrow-view.js"],"names":["define","mod_masthead","mod_utils","mod_toastr","mod_library_model","mod_library_dataset_view","FolderRowView","Backbone","View","extend","lastSelectedHistory","events","click .undelete_dataset_btn","click .undelete_folder_btn","options","type","initialize","folder_item","this","model","render","template","get","templateRowDeletedFolder","templateRowFolder","templateRowDeletedFile","templateRowFile","setElement","content_item","$el","show","showDatasetDetails","Galaxy","libraries","datasetView","LibraryDatasetView","id","undeleteDataset","event","$","hide","that","dataset_id","target","closest","dataset","folderListView","collection","url","urlRoot","destroy","success","response","remove","updated_dataset","Item","add","sortByNameAsc","onclick","folder_id","window","location","error","responseJSON","err_msg","undeleteFolder","folder","updated_folder","FolderAsModel","tmpl_array","push","_","join"],"mappings":"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"}
|
||||
File diff suppressed because one or more lines are too long
@@ -1 +1 @@
|
||||
{"version":3,"file":"library-model.js","sources":["../../../src/mvc/library/library-model.js"],"names":["define","Library","Backbone","Model","extend","urlRoot","window","galaxy_config","root","isVisible","show_deleted","this","get","Libraries","Collection","url","model","sort_key","sort_order","initialize","options","getVisible","filters","filteredLibraries","filter","item","sortByNameAsc","comparator","libraryA","libraryB","toLowerCase","sort","sortByNameDesc","Item","Ldda","FolderAsModel","Folder","itemA","itemB","FolderContainer","defaults","folder","id","parse","obj","reset","folder_contents","HistoryItem","HistoryContents","GalaxyHistory","GalaxyHistories","Jstree"],"mappings":"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"}
|
||||
{"version":3,"file":"library-model.js","sources":["../../../src/mvc/library/library-model.js"],"names":["define","Library","Backbone","Model","extend","urlRoot","window","galaxy_config","root","isVisible","show_deleted","this","get","Libraries","Collection","url","model","sort_key","sort_order","initialize","options","getVisible","filters","filteredLibraries","filter","item","sortByNameAsc","comparator","libraryA","libraryB","toLowerCase","sort","sortByNameDesc","LibraryItem","Ldda","FolderAsModel","Folder","itemA","itemB","FolderContainer","defaults","folder","id","parse","obj","reset","i","folder_contents","length","type","folder_item","add","file_item","HistoryItem","HistoryContents","GalaxyHistory","GalaxyHistories","Jstree","Item"],"mappings":"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"}
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1,2 +1,2 @@
|
||||
define([],function(){var a=Backbone.Model.extend({urlRoot:(window.galaxy_config?galaxy_config.root:"/")+"api/libraries/",isVisible:function(a){var b=!0;return!a&&this.get("deleted")&&(b=!1),b}}),b=Backbone.Collection.extend({url:(window.galaxy_config?galaxy_config.root:"/")+"api/libraries",model:a,sort_key:"name",sort_order:null,initialize:function(a){a=a||{}},getVisible:function(a,c){c=c||[];var d=new b(this.filter(function(b){return b.isVisible(a)}));return d},sortByNameAsc:function(){return this.comparator=function(a,b){return a.get("name").toLowerCase()>b.get("name").toLowerCase()?1:b.get("name").toLowerCase()>a.get("name").toLowerCase()?-1:0},this.sort(),this},sortByNameDesc:function(){return this.comparator=function(a,b){return a.get("name").toLowerCase()>b.get("name").toLowerCase()?-1:b.get("name").toLowerCase()>a.get("name").toLowerCase()?1:0},this.sort(),this}}),c=Backbone.Model.extend({urlRoot:(window.galaxy_config?galaxy_config.root:"/")+"api/libraries/datasets/"}),d=Backbone.Model.extend({urlRoot:(window.galaxy_config?galaxy_config.root:"/")+"api/libraries/datasets/"}),e=Backbone.Model.extend({urlRoot:(window.galaxy_config?galaxy_config.root:"/")+"api/folders"}),f=Backbone.Collection.extend({model:c,sortByNameAsc:function(){return this.comparator=function(a,b){return a.get("type")===b.get("type")?a.get("name").toLowerCase()>b.get("name").toLowerCase()?1:b.get("name").toLowerCase()>a.get("name").toLowerCase()?-1:0:"folder"===a.get("type")?-1:1},this.sort(),this},sortByNameDesc:function(){return this.comparator=function(a,b){return a.get("type")===b.get("type")?a.get("name").toLowerCase()>b.get("name").toLowerCase()?-1:b.get("name").toLowerCase()>a.get("name").toLowerCase()?1:0:"folder"===a.get("type")?-1:1},this.sort(),this}}),g=Backbone.Model.extend({defaults:{folder:new f,urlRoot:(window.galaxy_config?galaxy_config.root:"/")+"api/folders/",id:"unknown"},parse:function(a){return this.get("folder").reset(a.folder_contents),a}}),h=Backbone.Model.extend({urlRoot:(window.galaxy_config?galaxy_config.root:"/")+"api/histories/"}),i=Backbone.Collection.extend({urlRoot:(window.galaxy_config?galaxy_config.root:"/")+"api/histories/",initialize:function(a){this.id=a.id},url:function(){return this.urlRoot+this.id+"/contents"},model:h}),j=Backbone.Model.extend({urlRoot:(window.galaxy_config?galaxy_config.root:"/")+"api/histories/"}),k=Backbone.Collection.extend({url:(window.galaxy_config?galaxy_config.root:"/")+"api/histories",model:j}),l=Backbone.Model.extend({urlRoot:(window.galaxy_config?galaxy_config.root:"/")+"api/remote_files"});return{Library:a,FolderAsModel:e,Libraries:b,Item:c,Ldda:d,Folder:f,FolderContainer:g,HistoryItem:h,HistoryContents:i,GalaxyHistory:j,GalaxyHistories:k,Jstree:l}});
|
||||
define([],function(){var a=Backbone.Model.extend({urlRoot:(window.galaxy_config?galaxy_config.root:"/")+"api/libraries/",isVisible:function(a){var b=!0;return!a&&this.get("deleted")&&(b=!1),b}}),b=Backbone.Collection.extend({url:(window.galaxy_config?galaxy_config.root:"/")+"api/libraries",model:a,sort_key:"name",sort_order:null,initialize:function(a){a=a||{}},getVisible:function(a,c){c=c||[];var d=new b(this.filter(function(b){return b.isVisible(a)}));return d},sortByNameAsc:function(){return this.comparator=function(a,b){return a.get("name").toLowerCase()>b.get("name").toLowerCase()?1:b.get("name").toLowerCase()>a.get("name").toLowerCase()?-1:0},this.sort(),this},sortByNameDesc:function(){return this.comparator=function(a,b){return a.get("name").toLowerCase()>b.get("name").toLowerCase()?-1:b.get("name").toLowerCase()>a.get("name").toLowerCase()?1:0},this.sort(),this}}),c=Backbone.Model.extend({}),d=c.extend({urlRoot:(window.galaxy_config?galaxy_config.root:"/")+"api/libraries/datasets/"}),e=c.extend({urlRoot:(window.galaxy_config?galaxy_config.root:"/")+"api/folders/"}),f=Backbone.Collection.extend({model:c,sortByNameAsc:function(){return this.comparator=function(a,b){return a.get("type")===b.get("type")?a.get("name").toLowerCase()>b.get("name").toLowerCase()?1:b.get("name").toLowerCase()>a.get("name").toLowerCase()?-1:0:"folder"===a.get("type")?-1:1},this.sort(),this},sortByNameDesc:function(){return this.comparator=function(a,b){return a.get("type")===b.get("type")?a.get("name").toLowerCase()>b.get("name").toLowerCase()?-1:b.get("name").toLowerCase()>a.get("name").toLowerCase()?1:0:"folder"===a.get("type")?-1:1},this.sort(),this}}),g=Backbone.Model.extend({defaults:{folder:new f,urlRoot:(window.galaxy_config?galaxy_config.root:"/")+"api/folders/",id:"unknown"},parse:function(a){this.get("folder").reset();for(var b=0;b<a.folder_contents.length;b++)if("folder"===a.folder_contents[b].type){var c=new e(a.folder_contents[b]);this.get("folder").add(c)}else if("file"===a.folder_contents[b].type){var f=new d(a.folder_contents[b]);this.get("folder").add(f)}return a}}),h=Backbone.Model.extend({urlRoot:(window.galaxy_config?galaxy_config.root:"/")+"api/histories/"}),i=Backbone.Collection.extend({urlRoot:(window.galaxy_config?galaxy_config.root:"/")+"api/histories/",initialize:function(a){this.id=a.id},url:function(){return this.urlRoot+this.id+"/contents"},model:h}),j=Backbone.Model.extend({urlRoot:(window.galaxy_config?galaxy_config.root:"/")+"api/histories/"}),k=Backbone.Collection.extend({url:(window.galaxy_config?galaxy_config.root:"/")+"api/histories",model:j}),l=Backbone.Model.extend({urlRoot:(window.galaxy_config?galaxy_config.root:"/")+"api/remote_files"});return{Library:a,Libraries:b,Item:d,Ldda:d,FolderAsModel:e,Folder:f,FolderContainer:g,HistoryItem:h,HistoryContents:i,GalaxyHistory:j,GalaxyHistories:k,Jstree:l}});
|
||||
//# sourceMappingURL=../../../maps/mvc/library/library-model.js.map
|
||||
Reference in New Issue
Block a user