From 357d5f2e44dfcf4927989d57d9464c395f207b80 Mon Sep 17 00:00:00 2001 From: Martin Cech Date: Tue, 28 Apr 2015 12:37:23 -0400 Subject: [PATCH] fix for UI duplication bug reported bo Bjorn occured when folder contents were re-sorted --- .../mvc/library/library-folderlist-view.js | 39 ++++++++++++++----- .../library/library-folderlist-view.js.map | 2 +- .../mvc/library/library-folderlist-view.js | 2 +- 3 files changed, 32 insertions(+), 11 deletions(-) diff --git a/client/galaxy/scripts/mvc/library/library-folderlist-view.js b/client/galaxy/scripts/mvc/library/library-folderlist-view.js index 8ea1fe0831e..d93ae45981c 100644 --- a/client/galaxy/scripts/mvc/library/library-folderlist-view.js +++ b/client/galaxy/scripts/mvc/library/library-folderlist-view.js @@ -55,6 +55,8 @@ var FolderListView = Backbone.View.extend({ // start to listen if someone modifies the collection this.listenTo( this.collection, 'add', this.renderOne ); this.listenTo( this.collection, 'remove', this.removeOne ); + this.listenTo( this.collection, 'sort', this.rePaint ); + this.listenTo( this.collection, 'reset', this.rePaint ); this.fetchFolder(); }, @@ -85,7 +87,7 @@ var FolderListView = Backbone.View.extend({ }); }, - render: function ( options ){ + render: function( options ){ this.options = _.extend( this.options, options ); var template = this.templateFolder(); $(".tooltip").hide(); @@ -142,8 +144,14 @@ var FolderListView = Backbone.View.extend({ items_to_render = []; } Galaxy.libraries.folderToolbarView.renderPaginator( this.options ); - this.collection.reset(); - this.addAll( items_to_render ) + this.collection.reset( items_to_render ); + }, + + rePaint: function( options ){ + this.options = _.extend( this.options, options ); + this.removeAllRows(); + this.renderAll(); + this.checkEmptiness(); }, /** @@ -153,7 +161,7 @@ var FolderListView = Backbone.View.extend({ */ addAll: function( models ){ _.each(models, function( model ) { - Galaxy.libraries.folderListView.collection.add( model ); + Galaxy.libraries.folderListView.collection.add( model, { sort: false } ); }); $( "#center [data-toggle]" ).tooltip(); this.checkEmptiness(); @@ -213,13 +221,20 @@ var FolderListView = Backbone.View.extend({ }, /** - * removes the view of the given model from the DOM + * Remove the view of the given model from the DOM. * @param {Item or FolderAsModel} model of the view that will be removed */ removeOne: function( model ){ this.$el.find( '#' + model.id ).remove(); }, + /** + * Remove all dataset and folder row elements from the DOM. + */ + removeAllRows: function(){ + $('.library-row').remove(); + }, + /** Checks whether the list is empty and adds/removes the message */ checkEmptiness : function(){ if ((this.$el.find('.dataset_row').length === 0) && (this.$el.find('.folder_row').length === 0)){ @@ -239,9 +254,7 @@ var FolderListView = Backbone.View.extend({ this.sortFolder('name','asc'); this.sort = 'asc'; } - this.render(); - this.renderAll(); - this.checkEmptiness(); + this.renderSortIcon(); }, /** @@ -324,6 +337,14 @@ var FolderListView = Backbone.View.extend({ $row.find('.fa-file').removeClass('fa-file').addClass('fa-file-o'); }, + renderSortIcon: function(){ + if (this.sort === 'asc'){ + $('.sort-icon').removeClass('fa-sort-alpha-desc').addClass('fa-sort-alpha-asc'); + } else { + $('.sort-icon').removeClass('fa-sort-alpha-asc').addClass('fa-sort-alpha-desc'); + } + }, + templateFolder : function (){ var tmpl_array = []; @@ -344,7 +365,7 @@ var FolderListView = Backbone.View.extend({ tmpl_array.push(' '); tmpl_array.push(' '); tmpl_array.push(' '); - tmpl_array.push(' name '); + tmpl_array.push(' name '); tmpl_array.push(' data type'); tmpl_array.push(' size'); tmpl_array.push(' time updated (UTC)'); diff --git a/static/maps/mvc/library/library-folderlist-view.js.map b/static/maps/mvc/library/library-folderlist-view.js.map index e6da4929a6c..a9d3e737ff6 100644 --- a/static/maps/mvc/library/library-folderlist-view.js.map +++ b/static/maps/mvc/library/library-folderlist-view.js.map @@ -1 +1 @@ -{"version":3,"file":"library-folderlist-view.js","sources":["../../../src/mvc/library/library-folderlist-view.js"],"names":["define","mod_masthead","mod_utils","mod_toastr","mod_library_model","mod_library_folderrow_view","FolderListView","Backbone","View","extend","el","progress","progressStep","folderContainer","sort","events","click #select-all-checkboxes","click .dataset_row","click .sort-folder-link","collection","defaults","include_deleted","page_count","show_page","initialize","options","this","_","modal","rowViews","Folder","listenTo","renderOne","removeOne","fetchFolder","that","FolderContainer","id","url","attributes","urlRoot","fetch","success","folder_container","render","error","model","response","responseJSON","err_msg","onclick","Galaxy","libraries","library_router","back","template","templateFolder","$","hide","upper_folder_id","path","metadata","full_path","length","$el","html","parent_library_id","order","dataset_id","row","findWhere","showDatasetDetails","paginate","tooltip","css","total_items_count","get","models","Math","ceil","preferences","page_start","items_to_render","slice","items_shown","folderToolbarView","renderPaginator","reset","addAll","each","folderListView","add","checkEmptiness","postRender","fetched_metadata","contains_file","type","configureElements","hover","find","show","renderAll","reverse","set","rowView","FolderRowView","after","remove","sortColumnClicked","event","preventDefault","sortFolder","sort_by","sortByNameAsc","sortByNameDesc","selectAll","selected","target","checked","$row","parentElement","makeDarkRow","makeWhiteRow","selectClickedRow","source","checkbox","localName","removeClass","addClass","tmpl_array","push","join"],"mappings":"AAAAA,QACI,kBACA,cACA,cACA,4BACA,qCACA,oCAEJ,SAASC,EACAC,EACAC,EACAC,EACAC,GAIT,GAAIC,GAAiBC,SAASC,KAAKC,QAC/BC,GAAK,wBAELC,SAAU,EAEVC,aAAc,EAEdC,gBAAiB,KAEjBC,KAAM,MAENC,QACIC,+BAAkC,YAClCC,qBAAkC,mBAClCC,0BAAkC,qBAGtCC,WAAY,KAEZC,UACIC,iBAAiB,EACjBC,WAAY,KACZC,UAAW,MAOfC,WAAa,SAAUC,GACnBC,KAAKD,QAAUE,EAAEP,SAAUM,KAAKD,YAAeC,KAAKN,SAAUK,GAC9DC,KAAKE,MAAQ,KAEbF,KAAKG,YAGLH,KAAKP,WAAa,GAAIf,GAAkB0B,OAGxCJ,KAAKK,SAAUL,KAAKP,WAAY,MAAOO,KAAKM,WAC5CN,KAAKK,SAAUL,KAAKP,WAAY,SAAUO,KAAKO,WAE/CP,KAAKQ,eAGTA,YAAa,SAAUT,GACnB,GAAIA,GAAUA,KACdC,MAAKD,QAAQJ,gBAAkBI,EAAQJ,eACvC,IAAIc,GAAOT,IAEXA,MAAKb,gBAAkB,GAAIT,GAAkBgC,iBAAmBC,GAAIX,KAAKD,QAAQY,KACjFX,KAAKb,gBAAgByB,IAAMZ,KAAKb,gBAAgB0B,WAAWC,QAAUd,KAAKD,QAAQY,GAAK,YAElFX,KAAKD,QAAQJ,kBACdK,KAAKb,gBAAgByB,IAAMZ,KAAKb,gBAAgByB,IAAM,yBAE1DZ,KAAKb,gBAAgB4B,OACjBC,QAAS,SAAUC,GACjBR,EAAKQ,iBAAmBA,EACxBR,EAAKS,UAEPC,MAAO,SAAUC,EAAOC,GACgB,mBAA1BA,GAASC,aACnB7C,EAAW0C,MAAOE,EAASC,aAAaC,QAAU,0BAA2B,IAAMC,QAAS,WAAaC,OAAOC,UAAUC,eAAeC,UAEzInD,EAAW0C,MAAO,2CAA4C,IAAMK,QAAS,WAAaC,OAAOC,UAAUC,eAAeC,cAMtIV,OAAQ,SAAWnB,GACfC,KAAKD,QAAUE,EAAElB,OAAQiB,KAAKD,QAASA,EACvC,IAAI8B,GAAW7B,KAAK8B,gBACpBC,GAAE,YAAYC,MAGd,IACIC,GADAC,EAAOlC,KAAKb,gBAAgB0B,WAAWsB,SAASC,SAGlDH,GADmB,IAAhBC,EAAKG,OACU,EAEAH,EAAMA,EAAKG,OAAO,GAAK,GAG3CrC,KAAKsC,IAAIC,KAAMV,GACXK,KAAMlC,KAAKb,gBAAgB0B,WAAWsB,SAASC,UAC/CI,kBAAmBxC,KAAKb,gBAAgB0B,WAAWsB,SAASK,kBAC5D7B,GAAIX,KAAKD,QAAQY,GACjBsB,gBAAiBA,EACjBQ,MAAOzC,KAAKZ,QAIXY,KAAKD,QAAQ2C,YACdC,IAAM1C,EAAE2C,UAAWnC,KAAKN,UAAYQ,GAAIX,KAAKD,QAAQ2C,aAChDC,IACHA,IAAIE,qBAEJpE,EAAW0C,MAAO,2DAGY,OAA3BnB,KAAKD,QAAQF,WAAsBG,KAAKD,QAAQF,UAAY,KAC7DG,KAAKD,QAAQF,UAAY,GAE7BG,KAAK8C,YAETf,EAAE,yBAAyBgB,UAC3BhB,EAAE,WAAWiB,IAAI,WAAW,SAGhCF,SAAU,SAAU/C,GAChBC,KAAKD,QAAUE,EAAElB,OAAQiB,KAAKD,QAASA,IAEP,OAA3BC,KAAKD,QAAQF,WAAsBG,KAAKD,QAAQF,UAAY,KAC7DG,KAAKD,QAAQF,UAAY,GAE7BG,KAAKD,QAAQkD,kBAAoBjD,KAAKiB,iBAAiBiC,IAAK,UAAWC,OAAOd,OAC9ErC,KAAKD,QAAQH,WAAawD,KAAKC,KAAMrD,KAAKD,QAAQkD,kBAAoBxB,OAAOC,UAAU4B,YAAYJ,IAAK,oBACxG,IAAIK,GAAe9B,OAAOC,UAAU4B,YAAYJ,IAAK,qBAAyBlD,KAAKD,QAAQF,UAAY,GACnG2D,EAAkB,IACtBA,GAAkBxD,KAAKiB,iBAAiBiC,IAAK,UAAWC,OAAOM,MAAOF,EAAYA,EAAa9B,OAAOC,UAAU4B,YAAYJ,IAAK,qBACjIlD,KAAKD,QAAQ2D,YAAcF,EAAgBnB,OAEtCZ,OAAOC,UAAU4B,YAAYJ,IAAK,oBAAuBlD,KAAKD,QAAQF,UAAcG,KAAKD,QAAQkD,kBAAoBxB,OAAOC,UAAU4B,YAAYJ,IAAK,sBACxJM,MAEJ/B,OAAOC,UAAUiC,kBAAkBC,gBAAiB5D,KAAKD,SACzDC,KAAKP,WAAWoE,QAChB7D,KAAK8D,OAAQN,IAQjBM,OAAQ,SAAUX,GACdlD,EAAE8D,KAAKZ,EAAQ,SAAU/B,GACrBK,OAAOC,UAAUsC,eAAevE,WAAWwE,IAAK7C,KAEpDW,EAAG,yBAA0BgB,UAC7B/C,KAAKkE,iBACLlE,KAAKmE,cAQTA,WAAY,WACR,GAAIC,GAAmBpE,KAAKb,gBAAgB0B,WAAWsB,QACvDiC,GAAiBC,cAAqE,mBAA9CrE,MAAKP,WAAWmD,WAAW0B,KAAM,SACzE7C,OAAOC,UAAUiC,kBAAkBY,kBAAkBH,GACrDrC,EAAE,gBAAgByC,MAAM,WACtBzC,EAAE/B,MAAMyE,KAAK,kBAAkBC,QAC9B,WACD3C,EAAE/B,MAAMyE,KAAK,kBAAkBzC,UAQrC2C,UAAW,WACP,GAAIlE,GAAOT,IACXC,GAAE8D,KAAM/D,KAAKP,WAAW0D,OAAOyB,UAAW,SAAUxD,GAClDX,EAAKH,UAAWc,KAElBpB,KAAKmE,cAOT7D,UAAW,SAASc,GACU,WAAtBA,EAAM8B,IAAI,UACVlD,KAAKD,QAAQsE,eAAgB,GAGjCjD,EAAMyD,IAAI,YAAa7E,KAAKW,GAC5B,IAAImE,GAAU,GAAInG,GAA2BoG,cAAc3D,EAG3DpB,MAAKG,SAASiB,EAAM8B,IAAI,OAAS4B,EAEjC9E,KAAKsC,IAAImC,KAAK,sBAAsBO,MAAMF,EAAQ9F,IAElD+C,EAAE,gBAAgByC,MAAM,WACtBzC,EAAE/B,MAAMyE,KAAK,kBAAkBC,QAC9B,WACD3C,EAAE/B,MAAMyE,KAAK,kBAAkBzC,UAQrCzB,UAAW,SAAUa,GAClBpB,KAAKsC,IAAImC,KAAM,IAAMrD,EAAMT,IAAKsE,UAInCf,eAAiB,WACiC,IAAzClE,KAAKsC,IAAImC,KAAK,gBAAgBpC,QAA0D,IAAxCrC,KAAKsC,IAAImC,KAAK,eAAepC,OAChFrC,KAAKsC,IAAImC,KAAK,yBAAyBC,OAEvC1E,KAAKsC,IAAImC,KAAK,yBAAyBzC,QAK7CkD,kBAAoB,SAASC,GACzBA,EAAMC,iBACY,QAAdpF,KAAKZ,MACLY,KAAKqF,WAAW,OAAO,QACvBrF,KAAKZ,KAAO,SAEZY,KAAKqF,WAAW,OAAO,OACvBrF,KAAKZ,KAAO,OAEhBY,KAAKkB,SACLlB,KAAK2E,YACL3E,KAAKkE,kBAOTmB,WAAY,SAASC,EAAS7C,GAC1B,GAAgB,SAAZ6C,EAAmB,CACnB,GAAc,QAAV7C,EACA,MAAOzC,MAAKP,WAAW8F,eACpB,IAAc,SAAV9C,EACP,MAAOzC,MAAKP,WAAW+F,mBASnCC,UAAY,SAAUN,GACjB,GAAIO,GAAWP,EAAMQ,OAAOC,OAC5BnF,MAAOT,KAEP+B,EAAE,YAAa,qBAAqBgC,KAAK,WACtC/D,KAAK4F,QAAUF,EACfG,KAAO9D,EAAE/B,KAAK8F,cAAcA,eAExBJ,EACFjF,KAAKsF,YAAYF,MAEjBpF,KAAKuF,aAAaH,SAS5BI,iBAAmB,SAAUd,GACzB,GACIU,GACAK,EAFAC,EAAW,EAGgB,WAA3BhB,EAAMQ,OAAOS,WACbD,EAAWhB,EAAMQ,OACjBE,EAAO9D,EAAEoD,EAAMQ,OAAOG,cAAcA,eACpCI,EAAS,SACyB,OAA3Bf,EAAMQ,OAAOS,YACpBD,EAAWpE,EAAE,IAAMoD,EAAMQ,OAAOG,cAAcnF,IAAI8D,KAAK,aAAa,GACpEoB,EAAO9D,EAAEoD,EAAMQ,OAAOG,eACtBI,EAAS,MAETC,EAASP,QACI,OAATM,GACAC,EAASP,QAAU,GACnB5F,KAAKgG,aAAaH,IACF,UAATK,GACPlG,KAAK+F,YAAYF,GAGR,OAATK,GACAC,EAASP,QAAU,WACnB5F,KAAK+F,YAAYF,IACD,UAATK,GACPlG,KAAKgG,aAAaH,IAK9BE,YAAa,SAASF,GAClBA,EAAKQ,YAAY,SAASC,SAAS,QACnCT,EAAKpB,KAAK,KAAK4B,YAAY,SAASC,SAAS,QAC7CT,EAAKpB,KAAK,cAAc4B,YAAY,aAAaC,SAAS,YAG9DN,aAAc,SAASH,GACnBA,EAAKQ,YAAY,QAAQC,SAAS,SAClCT,EAAKpB,KAAK,KAAK4B,YAAY,QAAQC,SAAS,SAC5CT,EAAKpB,KAAK,YAAY4B,YAAY,WAAWC,SAAS,cAG1DxE,eAAiB,WACb,GAAIyE,KAwCJ,OArCAA,GAAWC,KAAK,2BAChBD,EAAWC,KAAK,iFAChBD,EAAWC,KAAK,+CAChBD,EAAWC,KAAK,sCAChBD,EAAWC,KAAK,+GAChBD,EAAWC,KAAS,kBACpBD,EAAWC,KAAK,8FAChBD,EAAWC,KAAK,cAChBD,EAAWC,KAAK,gBAChBD,EAAWC,KAAK,SAGhBD,EAAWC,KAAK,4GAChBD,EAAWC,KAAK,cAChBD,EAAWC,KAAK,2CAChBD,EAAWC,KAAK,wKAChBD,EAAWC,KAAK,kLAChBD,EAAWC,KAAK,+CAChBD,EAAWC,KAAK,2CAChBD,EAAWC,KAAK,2DAChBD,EAAWC,KAAK,wCAChBD,EAAWC,KAAK,eAChBD,EAAWC,KAAK,oCAChBD,EAAWC,KAAK,sCAChBD,EAAWC,KAAK,0LAChBD,EAAWC,KAAK,wBAChBD,EAAWC,KAAK,wBAChBD,EAAWC,KAAK,wBAChBD,EAAWC,KAAK,wBAChBD,EAAWC,KAAK,wBAChBD,EAAWC,KAAK,wBAChBD,EAAWC,KAAK,gBAEhBD,EAAWC,KAAK,eAChBD,EAAWC,KAAK,YAChBD,EAAWC,KAAK,ibAETvG,EAAE4B,SAAS0E,EAAWE,KAAK,OAK1C,QACI7H,eAAgBA"} \ No newline at end of file +{"version":3,"file":"library-folderlist-view.js","sources":["../../../src/mvc/library/library-folderlist-view.js"],"names":["define","mod_masthead","mod_utils","mod_toastr","mod_library_model","mod_library_folderrow_view","FolderListView","Backbone","View","extend","el","progress","progressStep","folderContainer","sort","events","click #select-all-checkboxes","click .dataset_row","click .sort-folder-link","collection","defaults","include_deleted","page_count","show_page","initialize","options","this","_","modal","rowViews","Folder","listenTo","renderOne","removeOne","rePaint","fetchFolder","that","FolderContainer","id","url","attributes","urlRoot","fetch","success","folder_container","render","error","model","response","responseJSON","err_msg","onclick","Galaxy","libraries","library_router","back","template","templateFolder","$","hide","upper_folder_id","path","metadata","full_path","length","$el","html","parent_library_id","order","dataset_id","row","findWhere","showDatasetDetails","paginate","tooltip","css","total_items_count","get","models","Math","ceil","preferences","page_start","items_to_render","slice","items_shown","folderToolbarView","renderPaginator","reset","removeAllRows","renderAll","checkEmptiness","addAll","each","folderListView","add","postRender","fetched_metadata","contains_file","type","configureElements","hover","find","show","reverse","set","rowView","FolderRowView","after","remove","sortColumnClicked","event","preventDefault","sortFolder","renderSortIcon","sort_by","sortByNameAsc","sortByNameDesc","selectAll","selected","target","checked","$row","parentElement","makeDarkRow","makeWhiteRow","selectClickedRow","source","checkbox","localName","removeClass","addClass","tmpl_array","push","join"],"mappings":"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"} \ No newline at end of file diff --git a/static/scripts/mvc/library/library-folderlist-view.js b/static/scripts/mvc/library/library-folderlist-view.js index b51d9e310a8..b41b39bedd2 100644 --- a/static/scripts/mvc/library/library-folderlist-view.js +++ b/static/scripts/mvc/library/library-folderlist-view.js @@ -1,2 +1,2 @@ -define(["galaxy.masthead","utils/utils","libs/toastr","mvc/library/library-model","mvc/library/library-folderrow-view","mvc/library/library-dataset-view"],function(a,b,c,d,e){var f=Backbone.View.extend({el:"#folder_items_element",progress:0,progressStep:1,folderContainer:null,sort:"asc",events:{"click #select-all-checkboxes":"selectAll","click .dataset_row":"selectClickedRow","click .sort-folder-link":"sortColumnClicked"},collection:null,defaults:{include_deleted:!1,page_count:null,show_page:null},initialize:function(a){this.options=_.defaults(this.options||{},this.defaults,a),this.modal=null,this.rowViews={},this.collection=new d.Folder,this.listenTo(this.collection,"add",this.renderOne),this.listenTo(this.collection,"remove",this.removeOne),this.fetchFolder()},fetchFolder:function(a){var a=a||{};this.options.include_deleted=a.include_deleted;var b=this;this.folderContainer=new d.FolderContainer({id:this.options.id}),this.folderContainer.url=this.folderContainer.attributes.urlRoot+this.options.id+"/contents",this.options.include_deleted&&(this.folderContainer.url=this.folderContainer.url+"?include_deleted=true"),this.folderContainer.fetch({success:function(a){b.folder_container=a,b.render()},error:function(a,b){"undefined"!=typeof b.responseJSON?c.error(b.responseJSON.err_msg+" Click this to go back.","",{onclick:function(){Galaxy.libraries.library_router.back()}}):c.error("An error ocurred. Click this to go back.","",{onclick:function(){Galaxy.libraries.library_router.back()}})}})},render:function(a){this.options=_.extend(this.options,a);var b=this.templateFolder();$(".tooltip").hide();var d,e=this.folderContainer.attributes.metadata.full_path;d=1===e.length?0:e[e.length-2][0],this.$el.html(b({path:this.folderContainer.attributes.metadata.full_path,parent_library_id:this.folderContainer.attributes.metadata.parent_library_id,id:this.options.id,upper_folder_id:d,order:this.sort})),this.options.dataset_id?(row=_.findWhere(that.rowViews,{id:this.options.dataset_id}),row?row.showDatasetDetails():c.error("Requested dataset not found. Showing folder instead.")):((null===this.options.show_page||this.options.show_page<1)&&(this.options.show_page=1),this.paginate()),$("#center [data-toggle]").tooltip(),$("#center").css("overflow","auto")},paginate:function(a){this.options=_.extend(this.options,a),(null===this.options.show_page||this.options.show_page<1)&&(this.options.show_page=1),this.options.total_items_count=this.folder_container.get("folder").models.length,this.options.page_count=Math.ceil(this.options.total_items_count/Galaxy.libraries.preferences.get("folder_page_size"));var b=Galaxy.libraries.preferences.get("folder_page_size")*(this.options.show_page-1),c=null;c=this.folder_container.get("folder").models.slice(b,b+Galaxy.libraries.preferences.get("folder_page_size")),this.options.items_shown=c.length,Galaxy.libraries.preferences.get("folder_page_size")*this.options.show_page>this.options.total_items_count+Galaxy.libraries.preferences.get("folder_page_size")&&(c=[]),Galaxy.libraries.folderToolbarView.renderPaginator(this.options),this.collection.reset(),this.addAll(c)},addAll:function(a){_.each(a,function(a){Galaxy.libraries.folderListView.collection.add(a)}),$("#center [data-toggle]").tooltip(),this.checkEmptiness(),this.postRender()},postRender:function(){var a=this.folderContainer.attributes.metadata;a.contains_file="undefined"!=typeof this.collection.findWhere({type:"file"}),Galaxy.libraries.folderToolbarView.configureElements(a),$(".library-row").hover(function(){$(this).find(".show_on_hover").show()},function(){$(this).find(".show_on_hover").hide()})},renderAll:function(){var a=this;_.each(this.collection.models.reverse(),function(b){a.renderOne(b)}),this.postRender()},renderOne:function(a){"folder"!==a.get("type")&&(this.options.contains_file=!0),a.set("folder_id",this.id);var b=new e.FolderRowView(a);this.rowViews[a.get("id")]=b,this.$el.find("#first_folder_item").after(b.el),$(".library-row").hover(function(){$(this).find(".show_on_hover").show()},function(){$(this).find(".show_on_hover").hide()})},removeOne:function(a){this.$el.find("#"+a.id).remove()},checkEmptiness:function(){0===this.$el.find(".dataset_row").length&&0===this.$el.find(".folder_row").length?this.$el.find(".empty-folder-message").show():this.$el.find(".empty-folder-message").hide()},sortColumnClicked:function(a){a.preventDefault(),"asc"===this.sort?(this.sortFolder("name","desc"),this.sort="desc"):(this.sortFolder("name","asc"),this.sort="asc"),this.render(),this.renderAll(),this.checkEmptiness()},sortFolder:function(a,b){if("name"===a){if("asc"===b)return this.collection.sortByNameAsc();if("desc"===b)return this.collection.sortByNameDesc()}},selectAll:function(a){var b=a.target.checked;that=this,$(":checkbox","#folder_list_body").each(function(){this.checked=b,$row=$(this.parentElement.parentElement),b?that.makeDarkRow($row):that.makeWhiteRow($row)})},selectClickedRow:function(a){var b,c,d="";"input"===a.target.localName?(d=a.target,b=$(a.target.parentElement.parentElement),c="input"):"td"===a.target.localName&&(d=$("#"+a.target.parentElement.id).find(":checkbox")[0],b=$(a.target.parentElement),c="td"),d.checked?"td"===c?(d.checked="",this.makeWhiteRow(b)):"input"===c&&this.makeDarkRow(b):"td"===c?(d.checked="selected",this.makeDarkRow(b)):"input"===c&&this.makeWhiteRow(b)},makeDarkRow:function(a){a.removeClass("light").addClass("dark"),a.find("a").removeClass("light").addClass("dark"),a.find(".fa-file-o").removeClass("fa-file-o").addClass("fa-file")},makeWhiteRow:function(a){a.removeClass("dark").addClass("light"),a.find("a").removeClass("dark").addClass("light"),a.find(".fa-file").removeClass("fa-file").addClass("fa-file-o")},templateFolder:function(){var a=[];return a.push('"),a.push(''),a.push(" "),a.push(' '),a.push(' '),a.push(' '),a.push(' '),a.push(' '),a.push(' '),a.push(' '),a.push(" "),a.push(' '),a.push(' '),a.push(' '),a.push(" "),a.push(" "),a.push(" "),a.push(" "),a.push(" "),a.push(" "),a.push(" "),a.push(" "),a.push("
name data typesizetime updated (UTC)
" title="Go to parent folder" class="btn_open_folder btn btn-default btn-xs">..
"),a.push(''),_.template(a.join(""))}});return{FolderListView:f}}); +define(["galaxy.masthead","utils/utils","libs/toastr","mvc/library/library-model","mvc/library/library-folderrow-view","mvc/library/library-dataset-view"],function(a,b,c,d,e){var f=Backbone.View.extend({el:"#folder_items_element",progress:0,progressStep:1,folderContainer:null,sort:"asc",events:{"click #select-all-checkboxes":"selectAll","click .dataset_row":"selectClickedRow","click .sort-folder-link":"sortColumnClicked"},collection:null,defaults:{include_deleted:!1,page_count:null,show_page:null},initialize:function(a){this.options=_.defaults(this.options||{},this.defaults,a),this.modal=null,this.rowViews={},this.collection=new d.Folder,this.listenTo(this.collection,"add",this.renderOne),this.listenTo(this.collection,"remove",this.removeOne),this.listenTo(this.collection,"sort",this.rePaint),this.listenTo(this.collection,"reset",this.rePaint),this.fetchFolder()},fetchFolder:function(a){var a=a||{};this.options.include_deleted=a.include_deleted;var b=this;this.folderContainer=new d.FolderContainer({id:this.options.id}),this.folderContainer.url=this.folderContainer.attributes.urlRoot+this.options.id+"/contents",this.options.include_deleted&&(this.folderContainer.url=this.folderContainer.url+"?include_deleted=true"),this.folderContainer.fetch({success:function(a){b.folder_container=a,b.render()},error:function(a,b){"undefined"!=typeof b.responseJSON?c.error(b.responseJSON.err_msg+" Click this to go back.","",{onclick:function(){Galaxy.libraries.library_router.back()}}):c.error("An error ocurred. Click this to go back.","",{onclick:function(){Galaxy.libraries.library_router.back()}})}})},render:function(a){this.options=_.extend(this.options,a);var b=this.templateFolder();$(".tooltip").hide();var d,e=this.folderContainer.attributes.metadata.full_path;d=1===e.length?0:e[e.length-2][0],this.$el.html(b({path:this.folderContainer.attributes.metadata.full_path,parent_library_id:this.folderContainer.attributes.metadata.parent_library_id,id:this.options.id,upper_folder_id:d,order:this.sort})),this.options.dataset_id?(row=_.findWhere(that.rowViews,{id:this.options.dataset_id}),row?row.showDatasetDetails():c.error("Requested dataset not found. Showing folder instead.")):((null===this.options.show_page||this.options.show_page<1)&&(this.options.show_page=1),this.paginate()),$("#center [data-toggle]").tooltip(),$("#center").css("overflow","auto")},paginate:function(a){this.options=_.extend(this.options,a),(null===this.options.show_page||this.options.show_page<1)&&(this.options.show_page=1),this.options.total_items_count=this.folder_container.get("folder").models.length,this.options.page_count=Math.ceil(this.options.total_items_count/Galaxy.libraries.preferences.get("folder_page_size"));var b=Galaxy.libraries.preferences.get("folder_page_size")*(this.options.show_page-1),c=null;c=this.folder_container.get("folder").models.slice(b,b+Galaxy.libraries.preferences.get("folder_page_size")),this.options.items_shown=c.length,Galaxy.libraries.preferences.get("folder_page_size")*this.options.show_page>this.options.total_items_count+Galaxy.libraries.preferences.get("folder_page_size")&&(c=[]),Galaxy.libraries.folderToolbarView.renderPaginator(this.options),this.collection.reset(c)},rePaint:function(a){this.options=_.extend(this.options,a),this.removeAllRows(),this.renderAll(),this.checkEmptiness()},addAll:function(a){_.each(a,function(a){Galaxy.libraries.folderListView.collection.add(a,{sort:!1})}),$("#center [data-toggle]").tooltip(),this.checkEmptiness(),this.postRender()},postRender:function(){var a=this.folderContainer.attributes.metadata;a.contains_file="undefined"!=typeof this.collection.findWhere({type:"file"}),Galaxy.libraries.folderToolbarView.configureElements(a),$(".library-row").hover(function(){$(this).find(".show_on_hover").show()},function(){$(this).find(".show_on_hover").hide()})},renderAll:function(){var a=this;_.each(this.collection.models.reverse(),function(b){a.renderOne(b)}),this.postRender()},renderOne:function(a){"folder"!==a.get("type")&&(this.options.contains_file=!0),a.set("folder_id",this.id);var b=new e.FolderRowView(a);this.rowViews[a.get("id")]=b,this.$el.find("#first_folder_item").after(b.el),$(".library-row").hover(function(){$(this).find(".show_on_hover").show()},function(){$(this).find(".show_on_hover").hide()})},removeOne:function(a){this.$el.find("#"+a.id).remove()},removeAllRows:function(){$(".library-row").remove()},checkEmptiness:function(){0===this.$el.find(".dataset_row").length&&0===this.$el.find(".folder_row").length?this.$el.find(".empty-folder-message").show():this.$el.find(".empty-folder-message").hide()},sortColumnClicked:function(a){a.preventDefault(),"asc"===this.sort?(this.sortFolder("name","desc"),this.sort="desc"):(this.sortFolder("name","asc"),this.sort="asc"),this.renderSortIcon()},sortFolder:function(a,b){if("name"===a){if("asc"===b)return this.collection.sortByNameAsc();if("desc"===b)return this.collection.sortByNameDesc()}},selectAll:function(a){var b=a.target.checked;that=this,$(":checkbox","#folder_list_body").each(function(){this.checked=b,$row=$(this.parentElement.parentElement),b?that.makeDarkRow($row):that.makeWhiteRow($row)})},selectClickedRow:function(a){var b,c,d="";"input"===a.target.localName?(d=a.target,b=$(a.target.parentElement.parentElement),c="input"):"td"===a.target.localName&&(d=$("#"+a.target.parentElement.id).find(":checkbox")[0],b=$(a.target.parentElement),c="td"),d.checked?"td"===c?(d.checked="",this.makeWhiteRow(b)):"input"===c&&this.makeDarkRow(b):"td"===c?(d.checked="selected",this.makeDarkRow(b)):"input"===c&&this.makeWhiteRow(b)},makeDarkRow:function(a){a.removeClass("light").addClass("dark"),a.find("a").removeClass("light").addClass("dark"),a.find(".fa-file-o").removeClass("fa-file-o").addClass("fa-file")},makeWhiteRow:function(a){a.removeClass("dark").addClass("light"),a.find("a").removeClass("dark").addClass("light"),a.find(".fa-file").removeClass("fa-file").addClass("fa-file-o")},renderSortIcon:function(){"asc"===this.sort?$(".sort-icon").removeClass("fa-sort-alpha-desc").addClass("fa-sort-alpha-asc"):$(".sort-icon").removeClass("fa-sort-alpha-asc").addClass("fa-sort-alpha-desc")},templateFolder:function(){var a=[];return a.push('"),a.push(''),a.push(" "),a.push(' '),a.push(' '),a.push(' '),a.push(' '),a.push(' '),a.push(' '),a.push(' '),a.push(" "),a.push(' '),a.push(' '),a.push(' '),a.push(" "),a.push(" "),a.push(" "),a.push(" "),a.push(" "),a.push(" "),a.push(" "),a.push(" "),a.push("
name data typesizetime updated (UTC)
" title="Go to parent folder" class="btn_open_folder btn btn-default btn-xs">..
"),a.push(''),_.template(a.join(""))}});return{FolderListView:f}}); //# sourceMappingURL=../../../maps/mvc/library/library-folderlist-view.js.map \ No newline at end of file