From ad20452340d052570c1b3203259d10e1ad94a236 Mon Sep 17 00:00:00 2001 From: Eric Enns Date: Fri, 9 Oct 2015 10:08:48 -0500 Subject: [PATCH 01/41] Fix output to print values and not hash key --- tools/stats/gsummary.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/stats/gsummary.py b/tools/stats/gsummary.py index 10b22a78f11..149ddb8f685 100755 --- a/tools/stats/gsummary.py +++ b/tools/stats/gsummary.py @@ -110,7 +110,7 @@ def main(): stop_err( "Computation resulted in the following error: %s" % str( s ) ) summary = summary.as_py( BASIC_CONVERSION ) outfile.write( "#%s\n" % headings_str ) - outfile.write( "%s\n" % "\t".join( [ "%g" % k for k in summary ] ) ) + outfile.write( "%s\n" % "\t".join( [ "%g" % summary[k] for k in summary ] ) ) outfile.close() if skipped_lines: From ad4458a458d7ccb5238094ab3d1967072b5a0b76 Mon Sep 17 00:00:00 2001 From: Eric Enns Date: Fri, 9 Oct 2015 10:34:20 -0500 Subject: [PATCH 02/41] Revert to previous changes if using rpy2 --- tools/stats/gsummary.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/tools/stats/gsummary.py b/tools/stats/gsummary.py index 149ddb8f685..eaf2a0c5855 100755 --- a/tools/stats/gsummary.py +++ b/tools/stats/gsummary.py @@ -110,7 +110,12 @@ def main(): stop_err( "Computation resulted in the following error: %s" % str( s ) ) summary = summary.as_py( BASIC_CONVERSION ) outfile.write( "#%s\n" % headings_str ) - outfile.write( "%s\n" % "\t".join( [ "%g" % summary[k] for k in summary ] ) ) + if type(summary) is dict: + #using rpy + outfile.write( "%s\n" % "\t".join( [ "%g" % summary[k] for k in summary ] ) ) + else: + #using rpy2 + outfile.write( "%s\n" % "\t".join( [ "%g" % k for k in summary ] ) ) outfile.close() if skipped_lines: From 0ec1b17794d53ae1a535b00f13d955c62f702a94 Mon Sep 17 00:00:00 2001 From: Eric Enns Date: Wed, 14 Oct 2015 08:28:30 -0500 Subject: [PATCH 03/41] Update list comprehension to go through headings instead of summary so that we output in the order we want. --- tools/stats/gsummary.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/stats/gsummary.py b/tools/stats/gsummary.py index eaf2a0c5855..5b9d13d7eab 100755 --- a/tools/stats/gsummary.py +++ b/tools/stats/gsummary.py @@ -112,7 +112,7 @@ def main(): outfile.write( "#%s\n" % headings_str ) if type(summary) is dict: #using rpy - outfile.write( "%s\n" % "\t".join( [ "%g" % summary[k] for k in summary ] ) ) + outfile.write( "%s\n" % "\t".join( [ "%g" % summary[k] for k in headings ] ) ) else: #using rpy2 outfile.write( "%s\n" % "\t".join( [ "%g" % k for k in summary ] ) ) From 0911287df7a5d7e810d83bbcd1e4cb1f849314d7 Mon Sep 17 00:00:00 2001 From: carlfeberhard Date: Wed, 14 Oct 2015 13:20:19 -0400 Subject: [PATCH 04/41] UI, list of pairs collection creator: create regexp from filters for name creation --- .../mvc/collection/list-of-pairs-collection-creator.js | 8 ++++---- .../collection/list-of-pairs-collection-creator.js.map | 2 +- .../mvc/collection/list-of-pairs-collection-creator.js | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/client/galaxy/scripts/mvc/collection/list-of-pairs-collection-creator.js b/client/galaxy/scripts/mvc/collection/list-of-pairs-collection-creator.js index e4137a1db9f..7d989b4a440 100644 --- a/client/galaxy/scripts/mvc/collection/list-of-pairs-collection-creator.js +++ b/client/galaxy/scripts/mvc/collection/list-of-pairs-collection-creator.js @@ -389,8 +389,8 @@ var PairedCollectionCreator = Backbone.View.extend( baseMVC.LoggableMixin ).exte strategy = strategy || this.strategy; split = this._splitByFilters(); paired = paired.concat( this[ strategy ].call( this, { - listA : split[0], - listB : split[1] + listA : split[0], + listB : split[1] })); return paired; }, @@ -502,8 +502,8 @@ var PairedCollectionCreator = Backbone.View.extend( baseMVC.LoggableMixin ).exte var fwdName = fwd.name, revName = rev.name, lcs = this._naiveStartingAndEndingLCS( - fwdName.replace( this.filters[0], '' ), - revName.replace( this.filters[1], '' ) + fwdName.replace( new RegExp( this.filters[0] ), '' ), + revName.replace( new RegExp( this.filters[1] ), '' ) ); if( removeExtensions ){ var lastDotIndex = lcs.lastIndexOf( '.' ); diff --git a/static/maps/mvc/collection/list-of-pairs-collection-creator.js.map b/static/maps/mvc/collection/list-of-pairs-collection-creator.js.map index 74d9373c8eb..0e92e600163 100644 --- a/static/maps/mvc/collection/list-of-pairs-collection-creator.js.map +++ b/static/maps/mvc/collection/list-of-pairs-collection-creator.js.map @@ -1 +1 @@ -{"version":3,"file":"list-of-pairs-collection-creator.js","sources":["../../../src/mvc/collection/list-of-pairs-collection-creator.js"],"names":["define","levenshteinDistance","naturalSort","LIST_COLLECTION_CREATOR","baseMVC","_l","autoPairFnBuilder","options","getRegExps","_regexps","length","RegExp","this","filters","createPair","params","debug","listA","indexA","name","listB","indexB","_pair","splice","silent","preprocessMatch","regexps","call","_","extend","matchTo","replace","possible","bestMatch","score","index","paired","JSON","stringify","match","scoreThreshold","push","createListOfPairsCollection","collection","elements","toJSON","pairedCollectionCreatorModal","historyId","PairView","Backbone","View","LoggableMixin","tagName","className","initialize","attributes","pair","template","join","render","$el","attr","data","html","addClass","events","dragstart","dragend","dragover","drop","_dragstart","ev","currentTarget","style","opacity","originalEvent","dataTransfer","effectAllowed","setData","parent","trigger","_dragend","_sendToParent","toString","PairedCollectionCreator","metric","defaults","datasets","DEFAULT_FILTERS","automaticallyPair","strategy","matchPercentage","twoPassAutopairing","initialList","commonFilters","isArray","strategies","DEFAULT_STRATEGY","isFunction","removeExtensions","oncancel","oncreate","autoscrollDist","unpairedPanelHidden","pairedPanelHidden","$dragging","blocking","_setUpBehaviors","_dataSetUp","illumina","Rs","simple","lcs","levenshtein","unpaired","selectedIds","_sortInitialList","_ensureIds","slice","autoPair","once","_sortDatasetList","list","sort","a","b","forEach","dataset","hasOwnProperty","id","uniqueId","_splitByFilters","_filter","filter","test","regexFilters","map","stringFilter","split","i","_addToUnpaired","binSearchSortedIndex","low","hi","mid","Math","floor","compared","bind","autopairSimple","concat","autopairLevenshtein","distance","max","autopairLCS","_naiveStartingAndEndingLCS","s1","s2","fwdLCS","revLCS","j","fwd","rev","_createPair","without","Error","_guessNameForPair","forward","reverse","undefined","fwdName","revName","lastDotIndex","lastIndexOf","extension","_unpair","unpairAll","pairs","_pairToJSON","src","collection_type","element_identifiers","createList","creator","root","window","Galaxy","url","ajaxData","type","escape","$","val","jQuery","ajax","contentType","dataType","always","fail","xhr","status","message","_ajaxErrHandler","done","response","error","content","readyState","responseJSON","_showAlert","speed","empty","templates","main","_renderHeader","_renderMiddle","_renderFooter","_addPluginComponents","$header","header","find","prepend","helpContent","_renderFilters","add","$middle","middle","hide","_renderUnpaired","_renderPaired","$fwd","$rev","$prd","text","_renderUnpairedDisplayStr","toggle","_renderUnpairedEmpty","_renderPairButton","_renderUnpairedDataset","append","_adjUnpairedOnScrollbar","_renderUnpairedNotShown","numFiltered","selected","$msg","$unpairedColumns","last","$firstDataset","first","size","ucRight","offset","left","outerWidth","dsRight","rightDiff","css","_renderPairedEmpty","show","pairView","$footer","footer","prop","_chooseFiltersPopover","hoverhighlight","selector","filterChoice","val1","val2","$popoverContent","values","filterSet","popover","container","placement","_validationWarning","what","clear","VALIDATION_CLASS","focus","select","removeClass","on","scrollTop","splitView","msgClass","hideUnpaired","click .more-help","click .less-help","click .header .alert button","click .forward-column .column-title","click .reverse-column .column-title","click .unpair-all-link","change .forward-unpaired-filter input","focus .forward-unpaired-filter input","click .autopair-link","click .choose-filters .filter-choice","click .clear-filters-link","change .reverse-unpaired-filter input","focus .reverse-unpaired-filter input","click .forward-column .dataset.unpaired","click .reverse-column .dataset.unpaired","click .paired-column .dataset.unpaired","click .unpaired-columns","mousedown .unpaired-columns .dataset","click .paired-column-title","mousedown .flexible-partition-drag","click .paired-columns .dataset.paired","click .paired-columns","click .paired-columns .pair-name","click .unpair-btn","dragover .paired-columns .column-datasets","drop .paired-columns .column-datasets","pair.dragstart .paired-columns .column-datasets","pair.dragend .paired-columns .column-datasets","change .remove-extensions","toggleExtensions","change .collection-name","keydown .collection-name","click .cancel-create","click .create-collection","_clickMoreHelp","_clickLessHelp","alertClass","_hideAlert","_clickShowOnlyUnpaired","is","hidePaired","_clickShowOnlyPaired","callback","_clickUnpairAll","_clickAutopair","_clickFilterChoice","$selected","_hideChooseFilters","_clearFilters","_clickUnpairedDataset","stopPropagation","toggleSelectUnpaired","$dataset","force","hasClass","waitToPair","pairAllSelected","fwds","revs","each","min","err","clearSelectedUnpaired","_mousedownUnpaired","shiftKey","$startTarget","target","moveListener","document","one","off","_clickPairRow","rowIndex","eq","_startPartitionDrag","endDrag","unbind","trackMouse","pageY","startingY","adjPartition","mousemove","adj","$unpaired","$paired","unpairedHi","parseInt","pairedHi","movingUpwards","height","flex","selectPair","toggleClass","clearSelectedPaired","_clickPairName","$name","$pair","prompt","customizedName","_clickUnpair","pairIndex","_dragoverPairedColumns","preventDefault","$list","_checkForAutoscroll","clientY","$nearest","_getNearestPairedDatasetLi","remove","$placeholder","before","$element","y","AUTOSCROLL_SPEED","upperDist","top","lowerDist","outerHeight","WIGGLE","lis","toArray","$li","halfHeight","_dropPairedColumns","dropEffect","insertBefore","insertAfter","_syncPairsToDom","newPaired","_pairDragstart","_pairDragend","_changeName","_getName","_nameCheckForEnter","keyCode","_clickCreate","_printList","e","_printPair","deferred","Deferred","modal","reject","resolve","title","body","width","closing_events"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"list-of-pairs-collection-creator.js","sources":["../../../src/mvc/collection/list-of-pairs-collection-creator.js"],"names":["define","levenshteinDistance","naturalSort","LIST_COLLECTION_CREATOR","baseMVC","_l","autoPairFnBuilder","options","getRegExps","_regexps","length","RegExp","this","filters","createPair","params","debug","listA","indexA","name","listB","indexB","_pair","splice","silent","preprocessMatch","regexps","call","_","extend","matchTo","replace","possible","bestMatch","score","index","paired","JSON","stringify","match","scoreThreshold","push","createListOfPairsCollection","collection","elements","toJSON","pairedCollectionCreatorModal","historyId","PairView","Backbone","View","LoggableMixin","tagName","className","initialize","attributes","pair","template","join","render","$el","attr","data","html","addClass","events","dragstart","dragend","dragover","drop","_dragstart","ev","currentTarget","style","opacity","originalEvent","dataTransfer","effectAllowed","setData","parent","trigger","_dragend","_sendToParent","toString","PairedCollectionCreator","metric","defaults","datasets","DEFAULT_FILTERS","automaticallyPair","strategy","matchPercentage","twoPassAutopairing","initialList","commonFilters","isArray","strategies","DEFAULT_STRATEGY","isFunction","removeExtensions","oncancel","oncreate","autoscrollDist","unpairedPanelHidden","pairedPanelHidden","$dragging","blocking","_setUpBehaviors","_dataSetUp","illumina","Rs","simple","lcs","levenshtein","unpaired","selectedIds","_sortInitialList","_ensureIds","slice","autoPair","once","_sortDatasetList","list","sort","a","b","forEach","dataset","hasOwnProperty","id","uniqueId","_splitByFilters","_filter","filter","test","regexFilters","map","stringFilter","split","i","_addToUnpaired","binSearchSortedIndex","low","hi","mid","Math","floor","compared","bind","autopairSimple","concat","autopairLevenshtein","distance","max","autopairLCS","_naiveStartingAndEndingLCS","s1","s2","fwdLCS","revLCS","j","fwd","rev","_createPair","without","Error","_guessNameForPair","forward","reverse","undefined","fwdName","revName","lastDotIndex","lastIndexOf","extension","_unpair","unpairAll","pairs","_pairToJSON","src","collection_type","element_identifiers","createList","creator","root","window","Galaxy","url","ajaxData","type","escape","$","val","jQuery","ajax","contentType","dataType","always","fail","xhr","status","message","_ajaxErrHandler","done","response","error","content","readyState","responseJSON","_showAlert","speed","empty","templates","main","_renderHeader","_renderMiddle","_renderFooter","_addPluginComponents","$header","header","find","prepend","helpContent","_renderFilters","add","$middle","middle","hide","_renderUnpaired","_renderPaired","$fwd","$rev","$prd","text","_renderUnpairedDisplayStr","toggle","_renderUnpairedEmpty","_renderPairButton","_renderUnpairedDataset","append","_adjUnpairedOnScrollbar","_renderUnpairedNotShown","numFiltered","selected","$msg","$unpairedColumns","last","$firstDataset","first","size","ucRight","offset","left","outerWidth","dsRight","rightDiff","css","_renderPairedEmpty","show","pairView","$footer","footer","prop","_chooseFiltersPopover","hoverhighlight","selector","filterChoice","val1","val2","$popoverContent","values","filterSet","popover","container","placement","_validationWarning","what","clear","VALIDATION_CLASS","focus","select","removeClass","on","scrollTop","splitView","msgClass","hideUnpaired","click .more-help","click .less-help","click .header .alert button","click .forward-column .column-title","click .reverse-column .column-title","click .unpair-all-link","change .forward-unpaired-filter input","focus .forward-unpaired-filter input","click .autopair-link","click .choose-filters .filter-choice","click .clear-filters-link","change .reverse-unpaired-filter input","focus .reverse-unpaired-filter input","click .forward-column .dataset.unpaired","click .reverse-column .dataset.unpaired","click .paired-column .dataset.unpaired","click .unpaired-columns","mousedown .unpaired-columns .dataset","click .paired-column-title","mousedown .flexible-partition-drag","click .paired-columns .dataset.paired","click .paired-columns","click .paired-columns .pair-name","click .unpair-btn","dragover .paired-columns .column-datasets","drop .paired-columns .column-datasets","pair.dragstart .paired-columns .column-datasets","pair.dragend .paired-columns .column-datasets","change .remove-extensions","toggleExtensions","change .collection-name","keydown .collection-name","click .cancel-create","click .create-collection","_clickMoreHelp","_clickLessHelp","alertClass","_hideAlert","_clickShowOnlyUnpaired","is","hidePaired","_clickShowOnlyPaired","callback","_clickUnpairAll","_clickAutopair","_clickFilterChoice","$selected","_hideChooseFilters","_clearFilters","_clickUnpairedDataset","stopPropagation","toggleSelectUnpaired","$dataset","force","hasClass","waitToPair","pairAllSelected","fwds","revs","each","min","err","clearSelectedUnpaired","_mousedownUnpaired","shiftKey","$startTarget","target","moveListener","document","one","off","_clickPairRow","rowIndex","eq","_startPartitionDrag","endDrag","unbind","trackMouse","pageY","startingY","adjPartition","mousemove","adj","$unpaired","$paired","unpairedHi","parseInt","pairedHi","movingUpwards","height","flex","selectPair","toggleClass","clearSelectedPaired","_clickPairName","$name","$pair","prompt","customizedName","_clickUnpair","pairIndex","_dragoverPairedColumns","preventDefault","$list","_checkForAutoscroll","clientY","$nearest","_getNearestPairedDatasetLi","remove","$placeholder","before","$element","y","AUTOSCROLL_SPEED","upperDist","top","lowerDist","outerHeight","WIGGLE","lis","toArray","$li","halfHeight","_dropPairedColumns","dropEffect","insertBefore","insertAfter","_syncPairsToDom","newPaired","_pairDragstart","_pairDragend","_changeName","_getName","_nameCheckForEnter","keyCode","_clickCreate","_printList","e","_printPair","deferred","Deferred","modal","reject","resolve","title","body","width","closing_events"],"mappings":"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"} \ No newline at end of file diff --git a/static/scripts/mvc/collection/list-of-pairs-collection-creator.js b/static/scripts/mvc/collection/list-of-pairs-collection-creator.js index ebd395c3013..4b84605bd12 100644 --- a/static/scripts/mvc/collection/list-of-pairs-collection-creator.js +++ b/static/scripts/mvc/collection/list-of-pairs-collection-creator.js @@ -1,2 +1,2 @@ -define(["utils/levenshtein","utils/natural-sort","mvc/collection/list-collection-creator","mvc/base-mvc","utils/localization","ui/hoverhighlight"],function(a,b,c,d,e){function f(a){function b(){return c.length||(c=[new RegExp(this.filters[0]),new RegExp(this.filters[1])]),c}a=a||{},a.createPair=a.createPair||function(a){return this.debug("creating pair:",a.listA[a.indexA].name,a.listB[a.indexB].name),a=a||{},this._pair(a.listA.splice(a.indexA,1)[0],a.listB.splice(a.indexB,1)[0],{silent:!0})};var c=[];return a.preprocessMatch=a.preprocessMatch||function(a){var c=b.call(this);return _.extend(a,{matchTo:a.matchTo.name.replace(c[0],""),possible:a.possible.name.replace(c[1],"")})},function(b){this.debug("autopair _strategy ---------------------------"),b=b||{};var c,d=b.listA,e=b.listB,f=0,g={score:0,index:null},h=[];for(this.debug("starting list lens:",d.length,e.length),this.debug("bestMatch (starting):",JSON.stringify(g,null," "));f=k?(this.debug("creating pair"),h.push(a.createPair.call(this,{listA:d,indexA:f,listB:e,indexB:g.index})),this.debug("list lens now:",d.length,e.length)):f+=1,!d.length||!e.length)return h}return this.debug("paired:",JSON.stringify(h,null," ")),this.debug("autopair _strategy ---------------------------"),h}}function g(a){var b=a.toJSON();return j(b,{historyId:a.historyId})}var h=Backbone.View.extend(d.LoggableMixin).extend({tagName:"li",className:"dataset paired",initialize:function(a){this.pair=a.pair||{}},template:_.template(['<%= pair.forward.name %>','','<%= pair.name %>',"",'<%= pair.reverse.name %>'].join("")),render:function(){return this.$el.attr("draggable",!0).data("pair",this.pair).html(this.template({pair:this.pair})).addClass("flex-column-container"),this},events:{dragstart:"_dragstart",dragend:"_dragend",dragover:"_sendToParent",drop:"_sendToParent"},_dragstart:function(a){a.currentTarget.style.opacity="0.4",a.originalEvent&&(a=a.originalEvent),a.dataTransfer.effectAllowed="move",a.dataTransfer.setData("text/plain",JSON.stringify(this.pair)),this.$el.parent().trigger("pair.dragstart",[this])},_dragend:function(a){a.currentTarget.style.opacity="1.0",this.$el.parent().trigger("pair.dragend",[this])},_sendToParent:function(a){this.$el.parent().trigger(a)},toString:function(){return"PairView("+this.pair.name+")"}}),i=Backbone.View.extend(d.LoggableMixin).extend({className:"list-of-pairs-collection-creator collection-creator flex-row-container",initialize:function(a){this.metric("PairedCollectionCreator.initialize",a),a=_.defaults(a,{datasets:[],filters:this.DEFAULT_FILTERS,automaticallyPair:!0,strategy:"lcs",matchPercentage:.9,twoPassAutopairing:!0}),this.initialList=a.datasets,this.historyId=a.historyId,this.filters=this.commonFilters[a.filters]||this.commonFilters[this.DEFAULT_FILTERS],_.isArray(a.filters)&&(this.filters=a.filters),this.automaticallyPair=a.automaticallyPair,this.strategy=this.strategies[a.strategy]||this.strategies[this.DEFAULT_STRATEGY],_.isFunction(a.strategy)&&(this.strategy=a.strategy),this.matchPercentage=a.matchPercentage,this.twoPassAutopairing=a.twoPassAutopairing,this.removeExtensions=!0,this.oncancel=a.oncancel,this.oncreate=a.oncreate,this.autoscrollDist=a.autoscrollDist||24,this.unpairedPanelHidden=!1,this.pairedPanelHidden=!1,this.$dragging=null,this.blocking=!1,this._setUpBehaviors(),this._dataSetUp()},commonFilters:{illumina:["_1","_2"],Rs:["_R1","_R2"]},DEFAULT_FILTERS:"illumina",strategies:{simple:"autopairSimple",lcs:"autopairLCS",levenshtein:"autopairLevenshtein"},DEFAULT_STRATEGY:"lcs",_dataSetUp:function(){this.paired=[],this.unpaired=[],this.selectedIds=[],this._sortInitialList(),this._ensureIds(),this.unpaired=this.initialList.slice(0),this.automaticallyPair&&(this.autoPair(),this.once("rendered:initial",function(){this.trigger("autopair")}))},_sortInitialList:function(){this._sortDatasetList(this.initialList)},_sortDatasetList:function(a){return a.sort(function(a,c){return b(a.name,c.name)}),a},_ensureIds:function(){return this.initialList.forEach(function(a){a.hasOwnProperty("id")||(a.id=_.uniqueId())}),this.initialList},_splitByFilters:function(){function a(a,b){return b.test(a.name)}var b=this.filters.map(function(a){return new RegExp(a)}),c=[[],[]];return this.unpaired.forEach(function(d){b.forEach(function(b,e){a(d,b)&&c[e].push(d)})}),c},_addToUnpaired:function(a){var c=function(d,e){if(d===e)return d;var f=Math.floor((e-d)/2)+d,g=b(a.name,this.unpaired[f].name);if(0>g)return c(d,f);if(g>0)return c(f+1,e);for(;this.unpaired[f]&&this.unpaired[f].name===a.name;)f++;return f}.bind(this);this.unpaired.splice(c(0,this.unpaired.length),0,a)},autoPair:function(a){var b=this._splitByFilters(),c=[];return this.twoPassAutopairing&&(c=this.autopairSimple({listA:b[0],listB:b[1]}),b=this._splitByFilters()),a=a||this.strategy,b=this._splitByFilters(),c=c.concat(this[a].call(this,{listA:b[0],listB:b[1]}))},autopairSimple:f({scoreThreshold:function(){return 1},match:function(a){return a=a||{},a.matchTo===a.possible?{index:a.index,score:1}:a.bestMatch}}),autopairLevenshtein:f({scoreThreshold:function(){return this.matchPercentage},match:function(b){b=b||{};var c=a(b.matchTo,b.possible),d=1-c/Math.max(b.matchTo.length,b.possible.length);return d>b.bestMatch.score?{index:b.index,score:d}:b.bestMatch}}),autopairLCS:f({scoreThreshold:function(){return this.matchPercentage},match:function(a){a=a||{};var b=this._naiveStartingAndEndingLCS(a.matchTo,a.possible).length,c=b/Math.max(a.matchTo.length,a.possible.length);return c>a.bestMatch.score?{index:a.index,score:c}:a.bestMatch}}),_naiveStartingAndEndingLCS:function(a,b){for(var c="",d="",e=0,f=0;e=0&&f>=0&&a[e]===b[f];)d=[a[e],d].join(""),e-=1,f-=1;return c+d},_pair:function(a,b,c){c=c||{};var d=this._createPair(a,b,c.name);return this.paired.push(d),this.unpaired=_.without(this.unpaired,a,b),c.silent||this.trigger("pair:new",d),d},_createPair:function(a,b,c){if(!a||!b||a===b)throw new Error("Bad pairing: "+[JSON.stringify(a),JSON.stringify(b)]);return c=c||this._guessNameForPair(a,b),{forward:a,name:c,reverse:b}},_guessNameForPair:function(a,b,c){c=void 0!==c?c:this.removeExtensions;var d=a.name,e=b.name,f=this._naiveStartingAndEndingLCS(d.replace(this.filters[0],""),e.replace(this.filters[1],""));if(c){var g=f.lastIndexOf(".");if(g>0){var h=f.slice(g,f.length);f=f.replace(h,""),d=d.replace(h,""),e=e.replace(h,"")}}return f||d+" & "+e},_unpair:function(a,b){if(b=b||{},!a)throw new Error("Bad pair: "+JSON.stringify(a));return this.paired=_.without(this.paired,a),this._addToUnpaired(a.forward),this._addToUnpaired(a.reverse),b.silent||this.trigger("pair:unpair",[a]),a},unpairAll:function(){for(var a=[];this.paired.length;)a.push(this._unpair(this.paired[0],{silent:!0}));this.trigger("pair:unpair",a)},_pairToJSON:function(a,b){return b=b||"hda",{collection_type:"paired",src:"new_collection",name:a.name,element_identifiers:[{name:"forward",id:a.forward.id,src:b},{name:"reverse",id:a.reverse.id,src:b}]}},createList:function(a){var b=this,c=window.Galaxy&&Galaxy.options.root?Galaxy.options.root:"/",d=c+"api/histories/"+this.historyId+"/contents/dataset_collections",e={type:"dataset_collection",collection_type:"list:paired",name:_.escape(a||b.$(".collection-name").val()),element_identifiers:b.paired.map(function(a){return b._pairToJSON(a)})};return b.blocking=!0,jQuery.ajax(d,{type:"POST",contentType:"application/json",dataType:"json",data:JSON.stringify(e)}).always(function(){b.blocking=!1}).fail(function(a,c,d){b._ajaxErrHandler(a,c,d)}).done(function(a,c,d){b.trigger("collection:created",a,c,d),b.metric("collection:created",a),"function"==typeof b.oncreate&&b.oncreate.call(this,a,c,d)})},_ajaxErrHandler:function(a,b,c){this.error(a,b,c);var d=e("An error occurred while creating this collection");a&&(d+=0===a.readyState&&0===a.status?": "+e("Galaxy could not be reached and may be updating.")+e(" Try again in a few minutes."):a.responseJSON?"
"+JSON.stringify(a.responseJSON)+"
":": "+c),creator._showAlert(d,"alert-danger")},render:function(a){return this.$el.empty().html(i.templates.main()),this._renderHeader(a),this._renderMiddle(a),this._renderFooter(a),this._addPluginComponents(),this.trigger("rendered",this),this},_renderHeader:function(){var a=this.$(".header").empty().html(i.templates.header()).find(".help-content").prepend($(i.templates.helpContent()));return this._renderFilters(),a},_renderFilters:function(){return this.$(".forward-column .column-header input").val(this.filters[0]).add(this.$(".reverse-column .column-header input").val(this.filters[1]))},_renderMiddle:function(){var a=this.$(".middle").empty().html(i.templates.middle());return this.unpairedPanelHidden?this.$(".unpaired-columns").hide():this.pairedPanelHidden&&this.$(".paired-columns").hide(),this._renderUnpaired(),this._renderPaired(),a},_renderUnpaired:function(){var a,b,c=this,d=[],f=this._splitByFilters();return this.$(".forward-column .title").text([f[0].length,e("unpaired forward")].join(" ")),this.$(".forward-column .unpaired-info").text(this._renderUnpairedDisplayStr(this.unpaired.length-f[0].length)),this.$(".reverse-column .title").text([f[1].length,e("unpaired reverse")].join(" ")),this.$(".reverse-column .unpaired-info").text(this._renderUnpairedDisplayStr(this.unpaired.length-f[1].length)),this.$(".unpaired-columns .column-datasets").empty(),this.$(".autopair-link").toggle(0!==this.unpaired.length),0===this.unpaired.length?void this._renderUnpairedEmpty():(b=f[1].map(function(a,b){return void 0!==f[0][b]&&f[0][b]!==a&&d.push(c._renderPairButton()),c._renderUnpairedDataset(a)}),a=f[0].map(function(a){return c._renderUnpairedDataset(a)}),a.length||b.length?(this.$(".unpaired-columns .forward-column .column-datasets").append(a).add(this.$(".unpaired-columns .paired-column .column-datasets").append(d)).add(this.$(".unpaired-columns .reverse-column .column-datasets").append(b)),void this._adjUnpairedOnScrollbar()):void this._renderUnpairedNotShown())},_renderUnpairedDisplayStr:function(a){return["(",a," ",e("filtered out"),")"].join("")},_renderUnpairedDataset:function(a){return $("
  • ").attr("id","dataset-"+a.id).addClass("dataset unpaired").attr("draggable",!0).addClass(a.selected?"selected":"").append($("").addClass("dataset-name").text(a.name)).data("dataset",a)},_renderPairButton:function(){return $("
  • ").addClass("dataset unpaired").append($("").addClass("dataset-name").text(e("Pair these datasets")))},_renderUnpairedEmpty:function(){var a=$('
    ').text("("+e("no remaining unpaired datasets")+")");return this.$(".unpaired-columns .paired-column .column-datasets").empty().prepend(a),a},_renderUnpairedNotShown:function(){var a=$('
    ').text("("+e("no datasets were found matching the current filters")+")");return this.$(".unpaired-columns .paired-column .column-datasets").empty().prepend(a),a},_adjUnpairedOnScrollbar:function(){var a=this.$(".unpaired-columns").last(),b=this.$(".unpaired-columns .reverse-column .dataset").first();if(b.size()){var c=a.offset().left+a.outerWidth(),d=b.offset().left+b.outerWidth(),e=Math.floor(c)-Math.floor(d);this.$(".unpaired-columns .forward-column").css("margin-left",e>0?e:0)}},_renderPaired:function(){if(this.$(".paired-column-title .title").text([this.paired.length,e("paired")].join(" ")),this.$(".unpair-all-link").toggle(0!==this.paired.length),0===this.paired.length)return void this._renderPairedEmpty();this.$(".remove-extensions-link").show(),this.$(".paired-columns .column-datasets").empty();var a=this;this.paired.forEach(function(b){var c=new h({pair:b});a.$(".paired-columns .column-datasets").append(c.render().$el).append(['"].join(""))})},_renderPairedEmpty:function(){var a=$('
    ').text("("+e("no paired datasets yet")+")");return this.$(".paired-columns .column-datasets").empty().prepend(a),a},_renderFooter:function(){var a=this.$(".footer").empty().html(i.templates.footer());return this.$(".remove-extensions").prop("checked",this.removeExtensions),"function"==typeof this.oncancel&&this.$(".cancel-create.btn").show(),a},_addPluginComponents:function(){this._chooseFiltersPopover(".choose-filters-link"),this.$(".help-content i").hoverhighlight(".collection-creator","rgba( 64, 255, 255, 1.0 )")},_chooseFiltersPopover:function(a){function b(a,b){return['"].join("")}var c=$(_.template(['
    ','
    ',e("Choose from the following filters to change which unpaired reads are shown in the display"),":
    ",_.values(this.commonFilters).map(function(a){return b(a[0],a[1])}).join(""),"
    "].join(""))({}));return this.$(a).popover({container:".collection-creator",placement:"bottom",html:!0,content:c})},_validationWarning:function(a,b){var c="validation-warning";"name"===a&&(a=this.$(".collection-name").add(this.$(".collection-name-prompt")),this.$(".collection-name").focus().select()),b?(a=a||this.$("."+c),a.removeClass(c)):a.addClass(c)},_setUpBehaviors:function(){return this.once("rendered",function(){this.trigger("rendered:initial",this)}),this.on("pair:new",function(){this._renderUnpaired(),this._renderPaired(),this.$(".paired-columns").scrollTop(8e6)}),this.on("pair:unpair",function(){this._renderUnpaired(),this._renderPaired(),this.splitView()}),this.on("filter-change",function(){this.filters=[this.$(".forward-unpaired-filter input").val(),this.$(".reverse-unpaired-filter input").val()],this.metric("filter-change",this.filters),this._renderFilters(),this._renderUnpaired()}),this.on("autopair",function(){this._renderUnpaired(),this._renderPaired();var a,b=null;this.paired.length?(b="alert-success",a=this.paired.length+" "+e("pairs created"),this.unpaired.length||(a+=": "+e("all datasets have been successfully paired"),this.hideUnpaired(),this.$(".collection-name").focus())):a=e("Could not automatically create any pairs from the given dataset names"),this._showAlert(a,b)}),this},events:{"click .more-help":"_clickMoreHelp","click .less-help":"_clickLessHelp","click .header .alert button":"_hideAlert","click .forward-column .column-title":"_clickShowOnlyUnpaired","click .reverse-column .column-title":"_clickShowOnlyUnpaired","click .unpair-all-link":"_clickUnpairAll","change .forward-unpaired-filter input":function(){this.trigger("filter-change")},"focus .forward-unpaired-filter input":function(a){$(a.currentTarget).select()},"click .autopair-link":"_clickAutopair","click .choose-filters .filter-choice":"_clickFilterChoice","click .clear-filters-link":"_clearFilters","change .reverse-unpaired-filter input":function(){this.trigger("filter-change")},"focus .reverse-unpaired-filter input":function(a){$(a.currentTarget).select()},"click .forward-column .dataset.unpaired":"_clickUnpairedDataset","click .reverse-column .dataset.unpaired":"_clickUnpairedDataset","click .paired-column .dataset.unpaired":"_clickPairRow","click .unpaired-columns":"clearSelectedUnpaired","mousedown .unpaired-columns .dataset":"_mousedownUnpaired","click .paired-column-title":"_clickShowOnlyPaired","mousedown .flexible-partition-drag":"_startPartitionDrag","click .paired-columns .dataset.paired":"selectPair","click .paired-columns":"clearSelectedPaired","click .paired-columns .pair-name":"_clickPairName","click .unpair-btn":"_clickUnpair","dragover .paired-columns .column-datasets":"_dragoverPairedColumns","drop .paired-columns .column-datasets":"_dropPairedColumns","pair.dragstart .paired-columns .column-datasets":"_pairDragstart","pair.dragend .paired-columns .column-datasets":"_pairDragend","change .remove-extensions":function(){this.toggleExtensions()},"change .collection-name":"_changeName","keydown .collection-name":"_nameCheckForEnter","click .cancel-create":function(){"function"==typeof this.oncancel&&this.oncancel.call(this)},"click .create-collection":"_clickCreate"},_clickMoreHelp:function(){this.$(".main-help").addClass("expanded"),this.$(".more-help").hide()},_clickLessHelp:function(){this.$(".main-help").removeClass("expanded"),this.$(".more-help").show()},_showAlert:function(a,b){b=b||"alert-danger",this.$(".main-help").hide(),this.$(".header .alert").attr("class","alert alert-dismissable").addClass(b).show().find(".alert-message").html(a)},_hideAlert:function(){this.$(".main-help").show(),this.$(".header .alert").hide()},_clickShowOnlyUnpaired:function(){this.$(".paired-columns").is(":visible")?this.hidePaired():this.splitView()},_clickShowOnlyPaired:function(){this.$(".unpaired-columns").is(":visible")?this.hideUnpaired():this.splitView()},hideUnpaired:function(a,b){this.unpairedPanelHidden=!0,this.pairedPanelHidden=!1,this._renderMiddle(a,b)},hidePaired:function(a,b){this.unpairedPanelHidden=!1,this.pairedPanelHidden=!0,this._renderMiddle(a,b)},splitView:function(a,b){return this.unpairedPanelHidden=this.pairedPanelHidden=!1,this._renderMiddle(a,b),this},_clickUnpairAll:function(){this.metric("unpairAll"),this.unpairAll()},_clickAutopair:function(){var a=this.autoPair();this.metric("autopair",a.length,this.unpaired.length),this.trigger("autopair")},_clickFilterChoice:function(a){var b=$(a.currentTarget);this.$(".forward-unpaired-filter input").val(b.data("forward")),this.$(".reverse-unpaired-filter input").val(b.data("reverse")),this._hideChooseFilters(),this.trigger("filter-change")},_hideChooseFilters:function(){this.$(".choose-filters-link").popover("hide"),this.$(".popover").css("display","none")},_clearFilters:function(){this.$(".forward-unpaired-filter input").val(""),this.$(".reverse-unpaired-filter input").val(""),this.trigger("filter-change")},_clickUnpairedDataset:function(a){return a.stopPropagation(),this.toggleSelectUnpaired($(a.currentTarget))},toggleSelectUnpaired:function(a,b){b=b||{};var c=a.data("dataset"),d=void 0!==b.force?b.force:!a.hasClass("selected");return a.size()&&void 0!==c?(d?(a.addClass("selected"),b.waitToPair||this.pairAllSelected()):a.removeClass("selected"),a):a},pairAllSelected:function(a){a=a||{};var b=this,c=[],d=[],e=[];return b.$(".unpaired-columns .forward-column .dataset.selected").each(function(){c.push($(this).data("dataset"))}),b.$(".unpaired-columns .reverse-column .dataset.selected").each(function(){d.push($(this).data("dataset"))}),c.length=d.length=Math.min(c.length,d.length),c.forEach(function(a,c){try{e.push(b._pair(a,d[c],{silent:!0}))}catch(f){b.error(f)}}),e.length&&!a.silent&&this.trigger("pair:new",e),e},clearSelectedUnpaired:function(){this.$(".unpaired-columns .dataset.selected").removeClass("selected")},_mousedownUnpaired:function(a){if(a.shiftKey){var b=this,c=$(a.target).addClass("selected"),d=function(a){b.$(a.target).filter(".dataset").addClass("selected")};c.parent().on("mousemove",d),$(document).one("mouseup",function(){c.parent().off("mousemove",d),b.pairAllSelected()})}},_clickPairRow:function(a){var b=$(a.currentTarget).index(),c=$(".unpaired-columns .forward-column .dataset").eq(b).data("dataset"),d=$(".unpaired-columns .reverse-column .dataset").eq(b).data("dataset");this._pair(c,d)},_startPartitionDrag:function(a){function b(){d.$(".flexible-partition-drag").css("color",""),$("body").css("cursor","").unbind("mousemove",c)}function c(a){var b=a.pageY-e;d.adjPartition(b)||$("body").trigger("mouseup"),d._adjUnpairedOnScrollbar(),e+=b}var d=this,e=a.pageY;$("body").css("cursor","ns-resize"),d.$(".flexible-partition-drag").css("color","black"),$("body").mousemove(c),$("body").one("mouseup",b)},adjPartition:function(a){var b=this.$(".unpaired-columns"),c=this.$(".paired-columns"),d=parseInt(b.css("height"),10),e=parseInt(c.css("height"),10);d=Math.max(10,d+a),e-=a;var f=0>a;if(f){if(this.unpairedPanelHidden)return!1;if(10>=d)return this.hideUnpaired(),!1}else this.unpairedPanelHidden&&(b.show(),this.unpairedPanelHidden=!1);if(f)this.pairedPanelHidden&&(c.show(),this.pairedPanelHidden=!1);else{if(this.pairedPanelHidden)return!1;if(15>=e)return this.hidePaired(),!1}return b.css({height:d+"px",flex:"0 0 auto"}),!0},selectPair:function(a){a.stopPropagation(),$(a.currentTarget).toggleClass("selected")},clearSelectedPaired:function(){this.$(".paired-columns .dataset.selected").removeClass("selected")},_clickPairName:function(a){a.stopPropagation();var b=$(a.currentTarget),c=b.parent().parent(),d=c.index(".dataset.paired"),e=this.paired[d],f=prompt("Enter a new name for the pair:",e.name);f&&(e.name=f,e.customizedName=!0,b.text(e.name))},_clickUnpair:function(a){var b=Math.floor($(a.currentTarget).index(".unpair-btn"));this._unpair(this.paired[b])},_dragoverPairedColumns:function(a){a.preventDefault();var b=this.$(".paired-columns .column-datasets");this._checkForAutoscroll(b,a.originalEvent.clientY);var c=this._getNearestPairedDatasetLi(a.originalEvent.clientY);$(".element-drop-placeholder").remove();var d=$('
    ');c.size()?c.before(d):b.append(d)},_checkForAutoscroll:function(a,b){var c=2,d=a.offset(),e=a.scrollTop(),f=b-d.top,g=d.top+a.outerHeight()-b;f>=0&&f=0&&ga&&a>f-g)return e}return $()},_dropPairedColumns:function(a){a.preventDefault(),a.dataTransfer.dropEffect="move";var b=this._getNearestPairedDatasetLi(a.originalEvent.clientY);return b.size()?this.$dragging.insertBefore(b):this.$dragging.insertAfter(this.$(".paired-columns .unpair-btn").last()),this._syncPairsToDom(),!1},_syncPairsToDom:function(){var a=[];this.$(".paired-columns .dataset.paired").each(function(){a.push($(this).data("pair"))}),this.paired=a,this._renderPaired()},_pairDragstart:function(a,b){b.$el.addClass("selected");var c=this.$(".paired-columns .dataset.selected");this.$dragging=c},_pairDragend:function(){$(".element-drop-placeholder").remove(),this.$dragging=null},toggleExtensions:function(a){var b=this;b.removeExtensions=void 0!==a?a:!b.removeExtensions,_.each(b.paired,function(a){a.customizedName||(a.name=b._guessNameForPair(a.forward,a.reverse))}),b._renderPaired(),b._renderFooter()},_changeName:function(){this._validationWarning("name",!!this._getName())},_nameCheckForEnter:function(a){13!==a.keyCode||this.blocking||this._clickCreate()},_getName:function(){return _.escape(this.$(".collection-name").val())},_clickCreate:function(){var a=this._getName();a?this.blocking||this.createList():this._validationWarning("name")},_printList:function(a){var b=this;_.each(a,function(c){a===b.paired&&b._printPair(c)})},_printPair:function(a){this.debug(a.forward.name,a.reverse.name,": ->",a.name)},toString:function(){return"PairedCollectionCreator"}});i.templates=i.templates||{main:_.template(['
    ','
    ','
  • ").attr("id","dataset-"+a.id).addClass("dataset unpaired").attr("draggable",!0).addClass(a.selected?"selected":"").append($("").addClass("dataset-name").text(a.name)).data("dataset",a)},_renderPairButton:function(){return $("
  • ").addClass("dataset unpaired").append($("").addClass("dataset-name").text(e("Pair these datasets")))},_renderUnpairedEmpty:function(){var a=$('
    ').text("("+e("no remaining unpaired datasets")+")");return this.$(".unpaired-columns .paired-column .column-datasets").empty().prepend(a),a},_renderUnpairedNotShown:function(){var a=$('
    ').text("("+e("no datasets were found matching the current filters")+")");return this.$(".unpaired-columns .paired-column .column-datasets").empty().prepend(a),a},_adjUnpairedOnScrollbar:function(){var a=this.$(".unpaired-columns").last(),b=this.$(".unpaired-columns .reverse-column .dataset").first();if(b.size()){var c=a.offset().left+a.outerWidth(),d=b.offset().left+b.outerWidth(),e=Math.floor(c)-Math.floor(d);this.$(".unpaired-columns .forward-column").css("margin-left",e>0?e:0)}},_renderPaired:function(){if(this.$(".paired-column-title .title").text([this.paired.length,e("paired")].join(" ")),this.$(".unpair-all-link").toggle(0!==this.paired.length),0===this.paired.length)return void this._renderPairedEmpty();this.$(".remove-extensions-link").show(),this.$(".paired-columns .column-datasets").empty();var a=this;this.paired.forEach(function(b){var c=new h({pair:b});a.$(".paired-columns .column-datasets").append(c.render().$el).append(['"].join(""))})},_renderPairedEmpty:function(){var a=$('
    ').text("("+e("no paired datasets yet")+")");return this.$(".paired-columns .column-datasets").empty().prepend(a),a},_renderFooter:function(){var a=this.$(".footer").empty().html(i.templates.footer());return this.$(".remove-extensions").prop("checked",this.removeExtensions),"function"==typeof this.oncancel&&this.$(".cancel-create.btn").show(),a},_addPluginComponents:function(){this._chooseFiltersPopover(".choose-filters-link"),this.$(".help-content i").hoverhighlight(".collection-creator","rgba( 64, 255, 255, 1.0 )")},_chooseFiltersPopover:function(a){function b(a,b){return['"].join("")}var c=$(_.template(['
    ','
    ',e("Choose from the following filters to change which unpaired reads are shown in the display"),":
    ",_.values(this.commonFilters).map(function(a){return b(a[0],a[1])}).join(""),"
    "].join(""))({}));return this.$(a).popover({container:".collection-creator",placement:"bottom",html:!0,content:c})},_validationWarning:function(a,b){var c="validation-warning";"name"===a&&(a=this.$(".collection-name").add(this.$(".collection-name-prompt")),this.$(".collection-name").focus().select()),b?(a=a||this.$("."+c),a.removeClass(c)):a.addClass(c)},_setUpBehaviors:function(){return this.once("rendered",function(){this.trigger("rendered:initial",this)}),this.on("pair:new",function(){this._renderUnpaired(),this._renderPaired(),this.$(".paired-columns").scrollTop(8e6)}),this.on("pair:unpair",function(){this._renderUnpaired(),this._renderPaired(),this.splitView()}),this.on("filter-change",function(){this.filters=[this.$(".forward-unpaired-filter input").val(),this.$(".reverse-unpaired-filter input").val()],this.metric("filter-change",this.filters),this._renderFilters(),this._renderUnpaired()}),this.on("autopair",function(){this._renderUnpaired(),this._renderPaired();var a,b=null;this.paired.length?(b="alert-success",a=this.paired.length+" "+e("pairs created"),this.unpaired.length||(a+=": "+e("all datasets have been successfully paired"),this.hideUnpaired(),this.$(".collection-name").focus())):a=e("Could not automatically create any pairs from the given dataset names"),this._showAlert(a,b)}),this},events:{"click .more-help":"_clickMoreHelp","click .less-help":"_clickLessHelp","click .header .alert button":"_hideAlert","click .forward-column .column-title":"_clickShowOnlyUnpaired","click .reverse-column .column-title":"_clickShowOnlyUnpaired","click .unpair-all-link":"_clickUnpairAll","change .forward-unpaired-filter input":function(){this.trigger("filter-change")},"focus .forward-unpaired-filter input":function(a){$(a.currentTarget).select()},"click .autopair-link":"_clickAutopair","click .choose-filters .filter-choice":"_clickFilterChoice","click .clear-filters-link":"_clearFilters","change .reverse-unpaired-filter input":function(){this.trigger("filter-change")},"focus .reverse-unpaired-filter input":function(a){$(a.currentTarget).select()},"click .forward-column .dataset.unpaired":"_clickUnpairedDataset","click .reverse-column .dataset.unpaired":"_clickUnpairedDataset","click .paired-column .dataset.unpaired":"_clickPairRow","click .unpaired-columns":"clearSelectedUnpaired","mousedown .unpaired-columns .dataset":"_mousedownUnpaired","click .paired-column-title":"_clickShowOnlyPaired","mousedown .flexible-partition-drag":"_startPartitionDrag","click .paired-columns .dataset.paired":"selectPair","click .paired-columns":"clearSelectedPaired","click .paired-columns .pair-name":"_clickPairName","click .unpair-btn":"_clickUnpair","dragover .paired-columns .column-datasets":"_dragoverPairedColumns","drop .paired-columns .column-datasets":"_dropPairedColumns","pair.dragstart .paired-columns .column-datasets":"_pairDragstart","pair.dragend .paired-columns .column-datasets":"_pairDragend","change .remove-extensions":function(){this.toggleExtensions()},"change .collection-name":"_changeName","keydown .collection-name":"_nameCheckForEnter","click .cancel-create":function(){"function"==typeof this.oncancel&&this.oncancel.call(this)},"click .create-collection":"_clickCreate"},_clickMoreHelp:function(){this.$(".main-help").addClass("expanded"),this.$(".more-help").hide()},_clickLessHelp:function(){this.$(".main-help").removeClass("expanded"),this.$(".more-help").show()},_showAlert:function(a,b){b=b||"alert-danger",this.$(".main-help").hide(),this.$(".header .alert").attr("class","alert alert-dismissable").addClass(b).show().find(".alert-message").html(a)},_hideAlert:function(){this.$(".main-help").show(),this.$(".header .alert").hide()},_clickShowOnlyUnpaired:function(){this.$(".paired-columns").is(":visible")?this.hidePaired():this.splitView()},_clickShowOnlyPaired:function(){this.$(".unpaired-columns").is(":visible")?this.hideUnpaired():this.splitView()},hideUnpaired:function(a,b){this.unpairedPanelHidden=!0,this.pairedPanelHidden=!1,this._renderMiddle(a,b)},hidePaired:function(a,b){this.unpairedPanelHidden=!1,this.pairedPanelHidden=!0,this._renderMiddle(a,b)},splitView:function(a,b){return this.unpairedPanelHidden=this.pairedPanelHidden=!1,this._renderMiddle(a,b),this},_clickUnpairAll:function(){this.metric("unpairAll"),this.unpairAll()},_clickAutopair:function(){var a=this.autoPair();this.metric("autopair",a.length,this.unpaired.length),this.trigger("autopair")},_clickFilterChoice:function(a){var b=$(a.currentTarget);this.$(".forward-unpaired-filter input").val(b.data("forward")),this.$(".reverse-unpaired-filter input").val(b.data("reverse")),this._hideChooseFilters(),this.trigger("filter-change")},_hideChooseFilters:function(){this.$(".choose-filters-link").popover("hide"),this.$(".popover").css("display","none")},_clearFilters:function(){this.$(".forward-unpaired-filter input").val(""),this.$(".reverse-unpaired-filter input").val(""),this.trigger("filter-change")},_clickUnpairedDataset:function(a){return a.stopPropagation(),this.toggleSelectUnpaired($(a.currentTarget))},toggleSelectUnpaired:function(a,b){b=b||{};var c=a.data("dataset"),d=void 0!==b.force?b.force:!a.hasClass("selected");return a.size()&&void 0!==c?(d?(a.addClass("selected"),b.waitToPair||this.pairAllSelected()):a.removeClass("selected"),a):a},pairAllSelected:function(a){a=a||{};var b=this,c=[],d=[],e=[];return b.$(".unpaired-columns .forward-column .dataset.selected").each(function(){c.push($(this).data("dataset"))}),b.$(".unpaired-columns .reverse-column .dataset.selected").each(function(){d.push($(this).data("dataset"))}),c.length=d.length=Math.min(c.length,d.length),c.forEach(function(a,c){try{e.push(b._pair(a,d[c],{silent:!0}))}catch(f){b.error(f)}}),e.length&&!a.silent&&this.trigger("pair:new",e),e},clearSelectedUnpaired:function(){this.$(".unpaired-columns .dataset.selected").removeClass("selected")},_mousedownUnpaired:function(a){if(a.shiftKey){var b=this,c=$(a.target).addClass("selected"),d=function(a){b.$(a.target).filter(".dataset").addClass("selected")};c.parent().on("mousemove",d),$(document).one("mouseup",function(){c.parent().off("mousemove",d),b.pairAllSelected()})}},_clickPairRow:function(a){var b=$(a.currentTarget).index(),c=$(".unpaired-columns .forward-column .dataset").eq(b).data("dataset"),d=$(".unpaired-columns .reverse-column .dataset").eq(b).data("dataset");this._pair(c,d)},_startPartitionDrag:function(a){function b(){d.$(".flexible-partition-drag").css("color",""),$("body").css("cursor","").unbind("mousemove",c)}function c(a){var b=a.pageY-e;d.adjPartition(b)||$("body").trigger("mouseup"),d._adjUnpairedOnScrollbar(),e+=b}var d=this,e=a.pageY;$("body").css("cursor","ns-resize"),d.$(".flexible-partition-drag").css("color","black"),$("body").mousemove(c),$("body").one("mouseup",b)},adjPartition:function(a){var b=this.$(".unpaired-columns"),c=this.$(".paired-columns"),d=parseInt(b.css("height"),10),e=parseInt(c.css("height"),10);d=Math.max(10,d+a),e-=a;var f=0>a;if(f){if(this.unpairedPanelHidden)return!1;if(10>=d)return this.hideUnpaired(),!1}else this.unpairedPanelHidden&&(b.show(),this.unpairedPanelHidden=!1);if(f)this.pairedPanelHidden&&(c.show(),this.pairedPanelHidden=!1);else{if(this.pairedPanelHidden)return!1;if(15>=e)return this.hidePaired(),!1}return b.css({height:d+"px",flex:"0 0 auto"}),!0},selectPair:function(a){a.stopPropagation(),$(a.currentTarget).toggleClass("selected")},clearSelectedPaired:function(){this.$(".paired-columns .dataset.selected").removeClass("selected")},_clickPairName:function(a){a.stopPropagation();var b=$(a.currentTarget),c=b.parent().parent(),d=c.index(".dataset.paired"),e=this.paired[d],f=prompt("Enter a new name for the pair:",e.name);f&&(e.name=f,e.customizedName=!0,b.text(e.name))},_clickUnpair:function(a){var b=Math.floor($(a.currentTarget).index(".unpair-btn"));this._unpair(this.paired[b])},_dragoverPairedColumns:function(a){a.preventDefault();var b=this.$(".paired-columns .column-datasets");this._checkForAutoscroll(b,a.originalEvent.clientY);var c=this._getNearestPairedDatasetLi(a.originalEvent.clientY);$(".element-drop-placeholder").remove();var d=$('
    ');c.size()?c.before(d):b.append(d)},_checkForAutoscroll:function(a,b){var c=2,d=a.offset(),e=a.scrollTop(),f=b-d.top,g=d.top+a.outerHeight()-b;f>=0&&f=0&&ga&&a>f-g)return e}return $()},_dropPairedColumns:function(a){a.preventDefault(),a.dataTransfer.dropEffect="move";var b=this._getNearestPairedDatasetLi(a.originalEvent.clientY);return b.size()?this.$dragging.insertBefore(b):this.$dragging.insertAfter(this.$(".paired-columns .unpair-btn").last()),this._syncPairsToDom(),!1},_syncPairsToDom:function(){var a=[];this.$(".paired-columns .dataset.paired").each(function(){a.push($(this).data("pair"))}),this.paired=a,this._renderPaired()},_pairDragstart:function(a,b){b.$el.addClass("selected");var c=this.$(".paired-columns .dataset.selected");this.$dragging=c},_pairDragend:function(){$(".element-drop-placeholder").remove(),this.$dragging=null},toggleExtensions:function(a){var b=this;b.removeExtensions=void 0!==a?a:!b.removeExtensions,_.each(b.paired,function(a){a.customizedName||(a.name=b._guessNameForPair(a.forward,a.reverse))}),b._renderPaired(),b._renderFooter()},_changeName:function(){this._validationWarning("name",!!this._getName())},_nameCheckForEnter:function(a){13!==a.keyCode||this.blocking||this._clickCreate()},_getName:function(){return _.escape(this.$(".collection-name").val())},_clickCreate:function(){var a=this._getName();a?this.blocking||this.createList():this._validationWarning("name")},_printList:function(a){var b=this;_.each(a,function(c){a===b.paired&&b._printPair(c)})},_printPair:function(a){this.debug(a.forward.name,a.reverse.name,": ->",a.name)},toString:function(){return"PairedCollectionCreator"}});i.templates=i.templates||{main:_.template(['
    ','
    ','
  • "),h=a("
  • "),i=f?g:h,j=this.id(c),k=this.getVal();d=this.opts.formatSelection(c,i.find("div"),this.opts.escapeMarkup),d!=b&&i.find("div").replaceWith("
    "+d+"
    "),e=this.opts.formatSelectionCssClass(c,i.find("div")),e!=b&&i.addClass(e),f&&i.find(".select2-search-choice-close").on("mousedown",p).on("click dblclick",this.bind(function(b){this.isInterfaceEnabled()&&(this.unselect(a(b.target)),this.selection.find(".select2-search-choice-focus").removeClass("select2-search-choice-focus"),p(b),this.close(),this.focusSearch())})).on("focus",this.bind(function(){this.isInterfaceEnabled()&&(this.container.addClass("select2-container-active"),this.dropdown.addClass("select2-drop-active"))})),i.data("select2-data",c),i.insertBefore(this.searchContainer),k.push(j),this.setVal(k)},unselect:function(b){var c,d,f=this.getVal();if(b=b.closest(".select2-search-choice"),0===b.length)throw"Invalid argument: "+b+". Must be .select2-search-choice";if(c=b.data("select2-data")){var g=a.Event("select2-removing");if(g.val=this.id(c),g.choice=c,this.opts.element.trigger(g),g.isDefaultPrevented())return!1;for(;(d=e(this.id(c),f))>=0;)f.splice(d,1),this.setVal(f),this.select&&this.postprocessResults();return b.remove(),this.opts.element.trigger({type:"select2-removed",val:this.id(c),choice:c}),this.triggerChange({removed:c}),!0}},postprocessResults:function(a,b,c){var d=this.getVal(),f=this.results.find(".select2-result"),g=this.results.find(".select2-result-with-children"),h=this;f.each2(function(a,b){var c=h.id(b.data("select2-data"));e(c,d)>=0&&(b.addClass("select2-selected"),b.find(".select2-result-selectable").addClass("select2-selected"))}),g.each2(function(a,b){b.is(".select2-result-selectable")||0!==b.find(".select2-result-selectable:not(.select2-selected)").length||b.addClass("select2-selected")}),-1==this.highlight()&&c!==!1&&h.highlight(0),!this.opts.createSearchChoice&&!f.filter(".select2-result:not(.select2-selected)").length>0&&(!a||a&&!a.more&&0===this.results.find(".select2-no-results").length)&&y(h.opts.formatNoMatches,"formatNoMatches")&&this.results.append("
  • "+z(h.opts.formatNoMatches,h.opts.element,h.search.val())+"
  • ")},getMaxSearchWidth:function(){return this.selection.width()-i(this.search)},resizeSearch:function(){var a,b,c,d,e,f=i(this.search);a=r(this.search)+10,b=this.search.offset().left,c=this.selection.width(),d=this.selection.offset().left,e=c-(b-d)-f,a>e&&(e=c-f),40>e&&(e=c-f),0>=e&&(e=a),this.search.width(Math.floor(e))},getVal:function(){var a;return this.select?(a=this.select.val(),null===a?[]:a):(a=this.opts.element.val(),h(a,this.opts.separator))},setVal:function(b){var c;this.select?this.select.val(b):(c=[],a(b).each(function(){e(this,c)<0&&c.push(this)}),this.opts.element.val(0===c.length?"":c.join(this.opts.separator)))},buildChangeDetails:function(a,b){for(var b=b.slice(0),a=a.slice(0),c=0;c0&&c--,a.splice(d,1),d--);return{added:b,removed:a}},val:function(c,d){var e,f=this;if(0===arguments.length)return this.getVal();if(e=this.data(),e.length||(e=[]),!c&&0!==c)return this.opts.element.val(""),this.updateSelection([]),this.clearSearch(),void(d&&this.triggerChange({added:this.data(),removed:e}));if(this.setVal(c),this.select)this.opts.initSelection(this.select,this.bind(this.updateSelection)),d&&this.triggerChange(this.buildChangeDetails(e,this.data()));else{if(this.opts.initSelection===b)throw new Error("val() cannot be called if initSelection() is not defined");this.opts.initSelection(this.opts.element,function(b){var c=a.map(b,f.id);f.setVal(c),f.updateSelection(b),f.clearSearch(),d&&f.triggerChange(f.buildChangeDetails(e,f.data()))})}this.clearSearch()},onSortStart:function(){if(this.select)throw new Error("Sorting of elements is not supported when attached to instead.");this.search.width(0),this.searchContainer.hide()},onSortEnd:function(){var b=[],c=this;this.searchContainer.show(),this.searchContainer.appendTo(this.searchContainer.parent()),this.resizeSearch(),this.selection.find(".select2-search-choice").each(function(){b.push(c.opts.id(a(this).data("select2-data")))}),this.setVal(b),this.triggerChange()},data:function(b,c){var d,e,f=this;return 0===arguments.length?this.selection.children(".select2-search-choice").map(function(){return a(this).data("select2-data")}).get():(e=this.data(),b||(b=[]),d=a.map(b,function(a){return f.opts.id(a)}),this.setVal(d),this.updateSelection(b),this.clearSearch(),c&&this.triggerChange(this.buildChangeDetails(e,this.data())),void 0)}}),a.fn.select2=function(){var c,d,f,g,h,i=Array.prototype.slice.call(arguments,0),j=["val","destroy","opened","open","close","focus","isFocused","container","dropdown","onSortStart","onSortEnd","enable","disable","readonly","positionDropdown","data","search"],k=["opened","isFocused","container","dropdown"],l=["val","data"],m={search:"externalSearch"};return this.each(function(){if(0===i.length||"object"==typeof i[0])c=0===i.length?{}:a.extend({},i[0]),c.element=a(this),"select"===c.element.get(0).tagName.toLowerCase()?h=c.element.prop("multiple"):(h=c.multiple||!1,"tags"in c&&(c.multiple=h=!0)),d=h?new window.Select2.class.multi:new window.Select2.class.single,d.init(c);else{if("string"!=typeof i[0])throw"Invalid arguments to select2 plugin: "+i;if(e(i[0],j)<0)throw"Unknown method: "+i[0];if(g=b,d=a(this).data("select2"),d===b)return;if(f=i[0],"container"===f?g=d.container:"dropdown"===f?g=d.dropdown:(m[f]&&(f=m[f]),g=d[f].apply(d,i.slice(1))),e(i[0],k)>=0||e(i[0],l)>=0&&1==i.length)return!1}}),g===b?this:g},a.fn.select2.defaults={width:"copy",loadMorePadding:0,closeOnSelect:!0,openOnEnter:!0,containerCss:{},dropdownCss:{},containerCssClass:"",dropdownCssClass:"",formatResult:function(a,b,c,d){var e=[];return t(a.text,c.term,e,d),e.join("")},formatSelection:function(a,c,d){return a?d(a.text):b},sortResults:function(a){return a},formatResultCssClass:function(a){return a.css},formatSelectionCssClass:function(){return b},minimumResultsForSearch:0,minimumInputLength:0,maximumInputLength:null,maximumSelectionSize:0,id:function(a){return a==b?null:a.id},matcher:function(a,b){return d(""+b).toUpperCase().indexOf(d(""+a).toUpperCase())>=0},separator:",",tokenSeparators:[],tokenizer:B,escapeMarkup:u,blurOnChange:!1,selectOnBlur:!1,adaptContainerCssClass:function(a){return a},adaptDropdownCssClass:function(){return null},nextSearchTerm:function(){return b},searchInputPlaceholder:"",createSearchChoicePosition:"top",shouldFocusInput:function(a){var b="ontouchstart"in window||navigator.msMaxTouchPoints>0;return b&&a.opts.minimumResultsForSearch<0?!1:!0}},a.fn.select2.locales=[],a.fn.select2.locales.en={formatMatches:function(a){return 1===a?"One result is available, press enter to select it.":a+" results are available, use up and down arrow keys to navigate."},formatNoMatches:function(){return"No matches found"},formatAjaxError:function(){return"Loading failed"},formatInputTooShort:function(a,b){var c=b-a.length;return"Please enter "+c+" or more character"+(1==c?"":"s")},formatInputTooLong:function(a,b){var c=a.length-b;return"Please delete "+c+" character"+(1==c?"":"s")},formatSelectionTooBig:function(a){return"You can only select "+a+" item"+(1==a?"":"s")},formatLoadMore:function(){return"Loading more results…"},formatSearching:function(){return"Searching…"}},a.extend(a.fn.select2.defaults,a.fn.select2.locales.en),a.fn.select2.ajaxDefaults={transport:a.ajax,params:{type:"GET",cache:!1,dataType:"json"}},window.Select2={query:{ajax:v,local:w,tags:x},util:{debounce:l,markMatch:t,escapeMarkup:u,stripDiacritics:d},"class":{"abstract":F,single:G,multi:H}}}}(jQuery); +k.empty(),m.opts.populateResults.call(this,k,f.results,{term:j.val(),page:this.resultsPage,context:null}),f.more===!0&&y(l.formatLoadMore,"formatLoadMore")&&(k.append("
  • "+l.escapeMarkup(z(l.formatLoadMore,l.element,this.resultsPage))+"
  • "),window.setTimeout(function(){m.loadMoreIfNeeded()},10)),this.postprocessResults(f,c),d(),this.opts.element.trigger({type:"select2-loaded",items:f})}})})}},cancel:function(){this.close()},blur:function(){this.opts.selectOnBlur&&this.selectHighlighted({noFocus:!0}),this.close(),this.container.removeClass("select2-container-active"),this.search[0]===document.activeElement&&this.search.blur(),this.clearSearch(),this.selection.find(".select2-search-choice-focus").removeClass("select2-search-choice-focus")},focusSearch:function(){n(this.search)},selectHighlighted:function(a){if(this._touchMoved)return void this.clearTouchMoved();var b=this.highlight(),c=this.results.find(".select2-highlighted"),d=c.closest(".select2-result").data("select2-data");d?(this.highlight(b),this.onSelect(d,a)):a&&a.noFocus&&this.close()},getPlaceholder:function(){var a;return this.opts.element.attr("placeholder")||this.opts.element.attr("data-placeholder")||this.opts.element.data("placeholder")||this.opts.placeholder||((a=this.getPlaceholderOption())!==b?a.text():b)},getPlaceholderOption:function(){if(this.select){var c=this.select.children("option").first();if(this.opts.placeholderOption!==b)return"first"===this.opts.placeholderOption&&c||"function"==typeof this.opts.placeholderOption&&this.opts.placeholderOption(this.select);if(""===a.trim(c.text())&&""===c.val())return c}},initContainerWidth:function(){function c(){var c,d,e,f,g,h;if("off"===this.opts.width)return null;if("element"===this.opts.width)return 0===this.opts.element.outerWidth(!1)?"auto":this.opts.element.outerWidth(!1)+"px";if("copy"===this.opts.width||"resolve"===this.opts.width){if(c=this.opts.element.attr("style"),c!==b)for(d=c.split(";"),f=0,g=d.length;g>f;f+=1)if(h=d[f].replace(/\s/g,""),e=h.match(/^width:(([-+]?([0-9]*\.)?[0-9]+)(px|em|ex|%|in|cm|mm|pt|pc))/i),null!==e&&e.length>=1)return e[1];return"resolve"===this.opts.width?(c=this.opts.element.css("width"),c.indexOf("%")>0?c:0===this.opts.element.outerWidth(!1)?"auto":this.opts.element.outerWidth(!1)+"px"):null}return a.isFunction(this.opts.width)?this.opts.width():this.opts.width}var d=c.call(this);null!==d&&this.container.css("width",d)}}),G=D(F,{createContainer:function(){var b=a(document.createElement("div")).attr({"class":"select2-container"}).html(["","  "," ","","","","
    "," ","
      ","
    ","
    "].join(""));return b},enableInterface:function(){this.parent.enableInterface.apply(this,arguments)&&this.focusser.prop("disabled",!this.isInterfaceEnabled())},opening:function(){var c,d,e;this.opts.minimumResultsForSearch>=0&&this.showSearch(!0),this.parent.opening.apply(this,arguments),this.showSearchInput!==!1&&this.search.val(this.focusser.val()),this.opts.shouldFocusInput(this)&&(this.search.focus(),c=this.search.get(0),c.createTextRange?(d=c.createTextRange(),d.collapse(!1),d.select()):c.setSelectionRange&&(e=this.search.val().length,c.setSelectionRange(e,e))),""===this.search.val()&&this.nextSearchTerm!=b&&(this.search.val(this.nextSearchTerm),this.search.select()),this.focusser.prop("disabled",!0).val(""),this.updateResults(!0),this.opts.element.trigger(a.Event("select2-open"))},close:function(){this.opened()&&(this.parent.close.apply(this,arguments),this.focusser.prop("disabled",!1),this.opts.shouldFocusInput(this)&&this.focusser.focus())},focus:function(){this.opened()?this.close():(this.focusser.prop("disabled",!1),this.opts.shouldFocusInput(this)&&this.focusser.focus())},isFocused:function(){return this.container.hasClass("select2-container-active")},cancel:function(){this.parent.cancel.apply(this,arguments),this.focusser.prop("disabled",!1),this.opts.shouldFocusInput(this)&&this.focusser.focus()},destroy:function(){a("label[for='"+this.focusser.attr("id")+"']").attr("for",this.opts.element.attr("id")),this.parent.destroy.apply(this,arguments),C.call(this,"selection","focusser")},initContainer:function(){var b,d,e=this.container,f=this.dropdown,g=I();this.showSearch(this.opts.minimumResultsForSearch<0?!1:!0),this.selection=b=e.find(".select2-choice"),this.focusser=e.find(".select2-focusser"),b.find(".select2-chosen").attr("id","select2-chosen-"+g),this.focusser.attr("aria-labelledby","select2-chosen-"+g),this.results.attr("id","select2-results-"+g),this.search.attr("aria-owns","select2-results-"+g),this.focusser.attr("id","s2id_autogen"+g),d=a("label[for='"+this.opts.element.attr("id")+"']"),this.focusser.prev().text(d.text()).attr("for",this.focusser.attr("id"));var h=this.opts.element.attr("title");this.opts.element.attr("title",h||d.text()),this.focusser.attr("tabindex",this.elementTabIndex),this.search.attr("id",this.focusser.attr("id")+"_search"),this.search.prev().text(a("label[for='"+this.focusser.attr("id")+"']").text()).attr("for",this.search.attr("id")),this.search.on("keydown",this.bind(function(a){if(this.isInterfaceEnabled()&&229!=a.keyCode){if(a.which===E.PAGE_UP||a.which===E.PAGE_DOWN)return void p(a);switch(a.which){case E.UP:case E.DOWN:return this.moveHighlight(a.which===E.UP?-1:1),void p(a);case E.ENTER:return this.selectHighlighted(),void p(a);case E.TAB:return void this.selectHighlighted({noFocus:!0});case E.ESC:return this.cancel(a),void p(a)}}})),this.search.on("blur",this.bind(function(){document.activeElement===this.body.get(0)&&window.setTimeout(this.bind(function(){this.opened()&&this.search.focus()}),0)})),this.focusser.on("keydown",this.bind(function(a){if(this.isInterfaceEnabled()&&a.which!==E.TAB&&!E.isControl(a)&&!E.isFunctionKey(a)&&a.which!==E.ESC){if(this.opts.openOnEnter===!1&&a.which===E.ENTER)return void p(a);if(a.which==E.DOWN||a.which==E.UP||a.which==E.ENTER&&this.opts.openOnEnter){if(a.altKey||a.ctrlKey||a.shiftKey||a.metaKey)return;return this.open(),void p(a)}return a.which==E.DELETE||a.which==E.BACKSPACE?(this.opts.allowClear&&this.clear(),void p(a)):void 0}})),j(this.focusser),this.focusser.on("keyup-change input",this.bind(function(a){if(this.opts.minimumResultsForSearch>=0){if(a.stopPropagation(),this.opened())return;this.open()}})),b.on("mousedown touchstart","abbr",this.bind(function(a){this.isInterfaceEnabled()&&(this.clear(),q(a),this.close(),this.selection.focus())})),b.on("mousedown touchstart",this.bind(function(d){c(b),this.container.hasClass("select2-container-active")||this.opts.element.trigger(a.Event("select2-focus")),this.opened()?this.close():this.isInterfaceEnabled()&&this.open(),p(d)})),f.on("mousedown touchstart",this.bind(function(){this.opts.shouldFocusInput(this)&&this.search.focus()})),b.on("focus",this.bind(function(a){p(a)})),this.focusser.on("focus",this.bind(function(){this.container.hasClass("select2-container-active")||this.opts.element.trigger(a.Event("select2-focus")),this.container.addClass("select2-container-active")})).on("blur",this.bind(function(){this.opened()||(this.container.removeClass("select2-container-active"),this.opts.element.trigger(a.Event("select2-blur")))})),this.search.on("focus",this.bind(function(){this.container.hasClass("select2-container-active")||this.opts.element.trigger(a.Event("select2-focus")),this.container.addClass("select2-container-active")})),this.initContainerWidth(),this.opts.element.addClass("select2-offscreen"),this.setPlaceholder()},clear:function(b){var c=this.selection.data("select2-data");if(c){var d=a.Event("select2-clearing");if(this.opts.element.trigger(d),d.isDefaultPrevented())return;var e=this.getPlaceholderOption();this.opts.element.val(e?e.val():""),this.selection.find(".select2-chosen").empty(),this.selection.removeData("select2-data"),this.setPlaceholder(),b!==!1&&(this.opts.element.trigger({type:"select2-removed",val:this.id(c),choice:c}),this.triggerChange({removed:c}))}},initSelection:function(){if(this.isPlaceholderOptionSelected())this.updateSelection(null),this.close(),this.setPlaceholder();else{var a=this;this.opts.initSelection.call(null,this.opts.element,function(c){c!==b&&null!==c&&(a.updateSelection(c),a.close(),a.setPlaceholder(),a.nextSearchTerm=a.opts.nextSearchTerm(c,a.search.val()))})}},isPlaceholderOptionSelected:function(){var a;return this.getPlaceholder()===b?!1:(a=this.getPlaceholderOption())!==b&&a.prop("selected")||""===this.opts.element.val()||this.opts.element.val()===b||null===this.opts.element.val()},prepareOpts:function(){var b=this.parent.prepareOpts.apply(this,arguments),c=this;return"select"===b.element.get(0).tagName.toLowerCase()?b.initSelection=function(a,b){var d=a.find("option").filter(function(){return this.selected&&!this.disabled});b(c.optionToData(d))}:"data"in b&&(b.initSelection=b.initSelection||function(c,d){var e=c.val(),f=null;b.query({matcher:function(a,c,d){var h=g(e,b.id(d));return h&&(f=d),h},callback:a.isFunction(d)?function(){d(f)}:a.noop})}),b},getPlaceholder:function(){return this.select&&this.getPlaceholderOption()===b?b:this.parent.getPlaceholder.apply(this,arguments)},setPlaceholder:function(){var a=this.getPlaceholder();if(this.isPlaceholderOptionSelected()&&a!==b){if(this.select&&this.getPlaceholderOption()===b)return;this.selection.find(".select2-chosen").html(this.opts.escapeMarkup(a)),this.selection.addClass("select2-default"),this.container.removeClass("select2-allowclear")}},postprocessResults:function(a,b,c){var d=0,e=this;if(this.findHighlightableChoices().each2(function(a,b){return g(e.id(b.data("select2-data")),e.opts.element.val())?(d=a,!1):void 0}),c!==!1&&this.highlight(b===!0&&d>=0?d:0),b===!0){var f=this.opts.minimumResultsForSearch;f>=0&&this.showSearch(A(a.results)>=f)}},showSearch:function(b){this.showSearchInput!==b&&(this.showSearchInput=b,this.dropdown.find(".select2-search").toggleClass("select2-search-hidden",!b),this.dropdown.find(".select2-search").toggleClass("select2-offscreen",!b),a(this.dropdown,this.container).toggleClass("select2-with-searchbox",b))},onSelect:function(a,b){if(this.triggerSelect(a)){var c=this.opts.element.val(),d=this.data();this.opts.element.val(this.id(a)),this.updateSelection(a),this.opts.element.trigger({type:"select2-selected",val:this.id(a),choice:a}),this.nextSearchTerm=this.opts.nextSearchTerm(a,this.search.val()),this.close(),b&&b.noFocus||!this.opts.shouldFocusInput(this)||this.focusser.focus(),g(c,this.id(a))||this.triggerChange({added:a,removed:d})}},updateSelection:function(a){var c,d,e=this.selection.find(".select2-chosen");this.selection.data("select2-data",a),e.empty(),null!==a&&(c=this.opts.formatSelection(a,e,this.opts.escapeMarkup)),c!==b&&e.append(c),d=this.opts.formatSelectionCssClass(a,e),d!==b&&e.addClass(d),this.selection.removeClass("select2-default"),this.opts.allowClear&&this.getPlaceholder()!==b&&this.container.addClass("select2-allowclear")},val:function(){var a,c=!1,d=null,e=this,f=this.data();if(0===arguments.length)return this.opts.element.val();if(a=arguments[0],arguments.length>1&&(c=arguments[1]),this.select)this.select.val(a).find("option").filter(function(){return this.selected}).each2(function(a,b){return d=e.optionToData(b),!1}),this.updateSelection(d),this.setPlaceholder(),c&&this.triggerChange({added:d,removed:f});else{if(!a&&0!==a)return void this.clear(c);if(this.opts.initSelection===b)throw new Error("cannot call val() if initSelection() is not defined");this.opts.element.val(a),this.opts.initSelection(this.opts.element,function(a){e.opts.element.val(a?e.id(a):""),e.updateSelection(a),e.setPlaceholder(),c&&e.triggerChange({added:a,removed:f})})}},clearSearch:function(){this.search.val(""),this.focusser.val("")},data:function(a){var c,d=!1;return 0===arguments.length?(c=this.selection.data("select2-data"),c==b&&(c=null),c):(arguments.length>1&&(d=arguments[1]),void(a?(c=this.data(),this.opts.element.val(a?this.id(a):""),this.updateSelection(a),d&&this.triggerChange({added:a,removed:c})):this.clear(d)))}}),H=D(F,{createContainer:function(){var b=a(document.createElement("div")).attr({"class":"select2-container select2-container-multi"}).html(["
      ","
    • "," "," ","
    • ","
    ","
    ","
      ","
    ","
    "].join(""));return b},prepareOpts:function(){var b=this.parent.prepareOpts.apply(this,arguments),c=this;return"select"===b.element.get(0).tagName.toLowerCase()?b.initSelection=function(a,b){var d=[];a.find("option").filter(function(){return this.selected&&!this.disabled}).each2(function(a,b){d.push(c.optionToData(b))}),b(d)}:"data"in b&&(b.initSelection=b.initSelection||function(c,d){var e=h(c.val(),b.separator),f=[];b.query({matcher:function(c,d,h){var i=a.grep(e,function(a){return g(a,b.id(h))}).length;return i&&f.push(h),i},callback:a.isFunction(d)?function(){for(var a=[],c=0;c0||(this.selectChoice(null),this.clearPlaceholder(),this.container.hasClass("select2-container-active")||this.opts.element.trigger(a.Event("select2-focus")),this.open(),this.focusSearch(),b.preventDefault()))})),this.container.on("focus",c,this.bind(function(){this.isInterfaceEnabled()&&(this.container.hasClass("select2-container-active")||this.opts.element.trigger(a.Event("select2-focus")),this.container.addClass("select2-container-active"),this.dropdown.addClass("select2-drop-active"),this.clearPlaceholder())})),this.initContainerWidth(),this.opts.element.addClass("select2-offscreen"),this.clearSearch()},enableInterface:function(){this.parent.enableInterface.apply(this,arguments)&&this.search.prop("disabled",!this.isInterfaceEnabled())},initSelection:function(){if(""===this.opts.element.val()&&""===this.opts.element.text()&&(this.updateSelection([]),this.close(),this.clearSearch()),this.select||""!==this.opts.element.val()){var a=this;this.opts.initSelection.call(null,this.opts.element,function(c){c!==b&&null!==c&&(a.updateSelection(c),a.close(),a.clearSearch())})}},clearSearch:function(){var a=this.getPlaceholder(),c=this.getMaxSearchWidth();a!==b&&0===this.getVal().length&&this.search.hasClass("select2-focused")===!1?(this.search.val(a).addClass("select2-default"),this.search.width(c>0?c:this.container.css("width"))):this.search.val("").width(10)},clearPlaceholder:function(){this.search.hasClass("select2-default")&&this.search.val("").removeClass("select2-default")},opening:function(){this.clearPlaceholder(),this.resizeSearch(),this.parent.opening.apply(this,arguments),this.focusSearch(),""===this.search.val()&&this.nextSearchTerm!=b&&(this.search.val(this.nextSearchTerm),this.search.select()),this.updateResults(!0),this.opts.shouldFocusInput(this)&&this.search.focus(),this.opts.element.trigger(a.Event("select2-open"))},close:function(){this.opened()&&this.parent.close.apply(this,arguments)},focus:function(){this.close(),this.search.focus()},isFocused:function(){return this.search.hasClass("select2-focused")},updateSelection:function(b){var c=[],d=[],f=this;a(b).each(function(){e(f.id(this),c)<0&&(c.push(f.id(this)),d.push(this))}),b=d,this.selection.find(".select2-search-choice").remove(),a(b).each(function(){f.addSelectedChoice(this)}),f.postprocessResults()},tokenize:function(){var a=this.search.val();a=this.opts.tokenizer.call(this,a,this.data(),this.bind(this.onSelect),this.opts),null!=a&&a!=b&&(this.search.val(a),a.length>0&&this.open())},onSelect:function(a,c){this.triggerSelect(a)&&""!==a.text&&(this.addSelectedChoice(a),this.opts.element.trigger({type:"selected",val:this.id(a),choice:a}),this.nextSearchTerm=this.opts.nextSearchTerm(a,this.search.val()),this.moveHighlight(1),(this.select||!this.opts.closeOnSelect)&&this.postprocessResults(a,!1,this.opts.closeOnSelect===!0),this.opts.closeOnSelect?(this.clearSearch(),this.updateResults(),this.close(),this.search.width(10)):this.countSelectableResults()>0?(this.search.width(10),this.resizeSearch(),this.getMaximumSelectionSize()>0&&this.val().length>=this.getMaximumSelectionSize()?this.updateResults(!0):this.nextSearchTerm!=b&&(this.search.val(this.nextSearchTerm),this.updateResults(),this.search.select()),this.positionDropdown()):(this.close(),this.search.width(10)),this.triggerChange({added:a}),c&&c.noFocus||this.focusSearch())},cancel:function(){this.close(),this.focusSearch()},addSelectedChoice:function(c){var d,e,f=!c.locked,g=a("
  • "),h=a("
  • "),i=f?g:h,j=this.id(c),k=this.getVal();d=this.opts.formatSelection(c,i.find("div"),this.opts.escapeMarkup),d!=b&&i.find("div").replaceWith("
    "+d+"
    "),e=this.opts.formatSelectionCssClass(c,i.find("div")),e!=b&&i.addClass(e),f&&i.find(".select2-search-choice-close").on("mousedown",p).on("click dblclick",this.bind(function(b){this.isInterfaceEnabled()&&(this.unselect(a(b.target)),this.selection.find(".select2-search-choice-focus").removeClass("select2-search-choice-focus"),p(b),this.close(),this.focusSearch())})).on("focus",this.bind(function(){this.isInterfaceEnabled()&&(this.container.addClass("select2-container-active"),this.dropdown.addClass("select2-drop-active"))})),i.data("select2-data",c),i.insertBefore(this.searchContainer),k.push(j),this.setVal(k)},unselect:function(b){var c,d,f=this.getVal();if(b=b.closest(".select2-search-choice"),0===b.length)throw"Invalid argument: "+b+". Must be .select2-search-choice";if(c=b.data("select2-data")){var g=a.Event("select2-removing");if(g.val=this.id(c),g.choice=c,this.opts.element.trigger(g),g.isDefaultPrevented())return!1;for(;(d=e(this.id(c),f))>=0;)f.splice(d,1),this.setVal(f),this.select&&this.postprocessResults();return b.remove(),this.opts.element.trigger({type:"select2-removed",val:this.id(c),choice:c}),this.triggerChange({removed:c}),!0}},postprocessResults:function(a,b,c){var d=this.getVal(),f=this.results.find(".select2-result"),g=this.results.find(".select2-result-with-children"),h=this;f.each2(function(a,b){var c=h.id(b.data("select2-data"));e(c,d)>=0&&(b.addClass("select2-selected"),b.find(".select2-result-selectable").addClass("select2-selected"))}),g.each2(function(a,b){b.is(".select2-result-selectable")||0!==b.find(".select2-result-selectable:not(.select2-selected)").length||b.addClass("select2-selected")}),-1==this.highlight()&&c!==!1&&h.highlight(0),!this.opts.createSearchChoice&&!f.filter(".select2-result:not(.select2-selected)").length>0&&(!a||a&&!a.more&&0===this.results.find(".select2-no-results").length)&&y(h.opts.formatNoMatches,"formatNoMatches")&&this.results.append("
  • "+z(h.opts.formatNoMatches,h.opts.element,h.search.val())+"
  • ")},getMaxSearchWidth:function(){return this.selection.width()-i(this.search)},resizeSearch:function(){var a,b,c,d,e,f=i(this.search);a=r(this.search)+10,b=this.search.offset().left,c=this.selection.width(),d=this.selection.offset().left,e=c-(b-d)-f,a>e&&(e=c-f),40>e&&(e=c-f),0>=e&&(e=a),this.search.width(Math.floor(e))},getVal:function(){var a;return this.select?(a=this.select.val(),null===a?[]:a):(a=this.opts.element.val(),h(a,this.opts.separator))},setVal:function(b){var c;this.select?this.select.val(b):(c=[],a(b).each(function(){e(this,c)<0&&c.push(this)}),this.opts.element.val(0===c.length?"":c.join(this.opts.separator)))},buildChangeDetails:function(a,b){for(var b=b.slice(0),a=a.slice(0),c=0;c0&&c--,a.splice(d,1),d--);return{added:b,removed:a}},val:function(c,d){var e,f=this;if(0===arguments.length)return this.getVal();if(e=this.data(),e.length||(e=[]),!c&&0!==c)return this.opts.element.val(""),this.updateSelection([]),this.clearSearch(),void(d&&this.triggerChange({added:this.data(),removed:e}));if(this.setVal(c),this.select)this.opts.initSelection(this.select,this.bind(this.updateSelection)),d&&this.triggerChange(this.buildChangeDetails(e,this.data()));else{if(this.opts.initSelection===b)throw new Error("val() cannot be called if initSelection() is not defined");this.opts.initSelection(this.opts.element,function(b){var c=a.map(b,f.id);f.setVal(c),f.updateSelection(b),f.clearSearch(),d&&f.triggerChange(f.buildChangeDetails(e,f.data()))})}this.clearSearch()},onSortStart:function(){if(this.select)throw new Error("Sorting of elements is not supported when attached to instead.");this.search.width(0),this.searchContainer.hide()},onSortEnd:function(){var b=[],c=this;this.searchContainer.show(),this.searchContainer.appendTo(this.searchContainer.parent()),this.resizeSearch(),this.selection.find(".select2-search-choice").each(function(){b.push(c.opts.id(a(this).data("select2-data")))}),this.setVal(b),this.triggerChange()},data:function(b,c){var d,e,f=this;return 0===arguments.length?this.selection.children(".select2-search-choice").map(function(){return a(this).data("select2-data")}).get():(e=this.data(),b||(b=[]),d=a.map(b,function(a){return f.opts.id(a)}),this.setVal(d),this.updateSelection(b),this.clearSearch(),c&&this.triggerChange(this.buildChangeDetails(e,this.data())),void 0)}}),a.fn.select2=function(){var c,d,f,g,h,i=Array.prototype.slice.call(arguments,0),j=["val","destroy","opened","open","close","focus","isFocused","container","dropdown","onSortStart","onSortEnd","enable","disable","readonly","positionDropdown","data","search"],k=["opened","isFocused","container","dropdown"],l=["val","data"],m={search:"externalSearch"};return this.each(function(){if(0===i.length||"object"==typeof i[0])c=0===i.length?{}:a.extend({},i[0]),c.element=a(this),"select"===c.element.get(0).tagName.toLowerCase()?h=c.element.prop("multiple"):(h=c.multiple||!1,"tags"in c&&(c.multiple=h=!0)),d=h?new window.Select2.class.multi:new window.Select2.class.single,d.init(c);else{if("string"!=typeof i[0])throw"Invalid arguments to select2 plugin: "+i;if(e(i[0],j)<0)throw"Unknown method: "+i[0];if(g=b,d=a(this).data("select2"),d===b)return;if(f=i[0],"container"===f?g=d.container:"dropdown"===f?g=d.dropdown:(m[f]&&(f=m[f]),g=d[f].apply(d,i.slice(1))),e(i[0],k)>=0||e(i[0],l)>=0&&1==i.length)return!1}}),g===b?this:g},a.fn.select2.defaults={width:"copy",loadMorePadding:0,closeOnSelect:!0,openOnEnter:!0,containerCss:{},dropdownCss:{},containerCssClass:"",dropdownCssClass:"",formatResult:function(a,b,c,d){var e=[];return t(a.text,c.term,e,d),e.join("")},formatSelection:function(a,c,d){return a?d(a.text):b},sortResults:function(a){return a},formatResultCssClass:function(a){return a.css},formatSelectionCssClass:function(){return b},minimumResultsForSearch:0,minimumInputLength:0,maximumInputLength:null,maximumSelectionSize:0,id:function(a){return a==b?null:a.id},matcher:function(a,b){return d(""+b).toUpperCase().indexOf(d(""+a).toUpperCase())>=0},separator:",",tokenSeparators:[],tokenizer:B,escapeMarkup:u,blurOnChange:!1,selectOnBlur:!1,adaptContainerCssClass:function(a){return a},adaptDropdownCssClass:function(){return null},nextSearchTerm:function(){return b},searchInputPlaceholder:"",createSearchChoicePosition:"top",shouldFocusInput:function(a){var b="ontouchstart"in window||navigator.msMaxTouchPoints>0;return b&&a.opts.minimumResultsForSearch<0?!1:!0}},a.fn.select2.locales=[],a.fn.select2.locales.en={formatMatches:function(a){return 1===a?"One result is available, press enter to select it.":a+" results are available, use up and down arrow keys to navigate."},formatNoMatches:function(){return"No matches found"},formatAjaxError:function(){return"Loading failed"},formatInputTooShort:function(a,b){var c=b-a.length;return"Please enter "+c+" or more character"+(1==c?"":"s")},formatInputTooLong:function(a,b){var c=a.length-b;return"Please delete "+c+" character"+(1==c?"":"s")},formatSelectionTooBig:function(a){return"You can only select "+a+" item"+(1==a?"":"s")},formatLoadMore:function(){return"Loading more results…"},formatSearching:function(){return"Searching…"}},a.extend(a.fn.select2.defaults,a.fn.select2.locales.en),a.fn.select2.ajaxDefaults={transport:a.ajax,params:{type:"GET",cache:!1,dataType:"json"}},window.Select2={query:{ajax:v,local:w,tags:x},util:{debounce:l,markMatch:t,escapeMarkup:u,stripDiacritics:d},"class":{"abstract":F,single:G,multi:H}}}}(jQuery); //# sourceMappingURL=../../../maps/libs/jquery/select2.js.map \ No newline at end of file From 7717659c784085a772565d028c77c73b48a54630 Mon Sep 17 00:00:00 2001 From: guerler Date: Wed, 4 Nov 2015 01:09:27 -0500 Subject: [PATCH 16/41] Allow resizing of regular multi-select boxes Remove event handler Add mouse leave event handler Improve visibility and accessibility Fix tag name Style compromise Repack charts --- client/galaxy/scripts/galaxy.panels.js | 10 +++--- .../scripts/mvc/ui/ui-select-default.js | 35 +++++++++++++------ client/galaxy/style/less/base.less | 4 +-- client/galaxy/style/less/ui.less | 33 ++++++++++++++--- .../visualizations/charts/static/build-app.js | 2 +- static/maps/mvc/ui/ui-select-default.js.map | 2 +- static/scripts/galaxy.panels.js | 2 +- static/scripts/mvc/ui/ui-select-default.js | 2 +- static/style/blue/base.css | 2 +- 9 files changed, 65 insertions(+), 27 deletions(-) diff --git a/client/galaxy/scripts/galaxy.panels.js b/client/galaxy/scripts/galaxy.panels.js index 55308b33028..29cc7b28c59 100644 --- a/client/galaxy/scripts/galaxy.panels.js +++ b/client/galaxy/scripts/galaxy.panels.js @@ -4,8 +4,8 @@ var ensure_dd_helper = function () { // Insert div that covers everything when dragging the borders - if ( $( "#DD-helper" ).length == 0 ) { - $( "
    " ).appendTo( "body" ).hide(); + if ( $( "#dd-helper" ).length == 0 ) { + $( "
    " ).appendTo( "body" ).hide(); } } @@ -111,7 +111,7 @@ $.extend( Panel.prototype, { } this.$drag.on( "mousedown", function( e ) { prevX = e.pageX; - $( '#DD-helper' ).show() + $( '#dd-helper' ).show() .on( 'mousemove', move ) .one( 'mouseup', function( e ){ $( this ).hide().off( 'mousemove', move ); @@ -259,7 +259,7 @@ $(function() { var $dropdowns = $("#masthead ul.nav > li.dropdown > .dropdown-menu"); $("body").on( "click.nav_popups", function( e ) { $dropdowns.hide(); - $("#DD-helper").hide(); + $("#dd-helper").hide(); // If the target is in the menu, treat normally if ( $(e.target).closest( "#masthead ul.nav > li.dropdown > .dropdown-menu" ).length ) { return; @@ -267,7 +267,7 @@ $(function() { // Otherwise, was the click in a tab var $clicked = $(e.target).closest( "#masthead ul.nav > li.dropdown" ); if ( $clicked.length ) { - $("#DD-helper").show(); + $("#dd-helper").show(); $clicked.children( ".dropdown-menu" ).show(); e.preventDefault(); } diff --git a/client/galaxy/scripts/mvc/ui/ui-select-default.js b/client/galaxy/scripts/mvc/ui/ui-select-default.js index 0b4f9c930ab..6754b6d427e 100644 --- a/client/galaxy/scripts/mvc/ui/ui-select-default.js +++ b/client/galaxy/scripts/mvc/ui/ui-select-default.js @@ -29,8 +29,20 @@ var View = Backbone.View.extend({ // link elements this.$select = this.$el.find('.select'); - this.$icon = this.$el.find('.icon'); - this.$button = this.$el.find('.button'); + this.$icon_dropdown = this.$el.find('.icon-dropdown'); + + // allow regular multi-select field to be resized + var minHeight = null; + this.$('.icon-resize').on('mousedown', function(event) { + var currentY = event.pageY; + var currentHeight = self.$select.height(); + minHeight = minHeight || currentHeight; + $('#dd-helper').show().on('mousemove', function(event) { + self.$select.height(Math.max(currentHeight + (event.pageY - currentY), minHeight)); + }).on('mouseup mouseleave', function() { + $('#dd-helper').hide().off(); + }); + }); // multiple select fields have an additional button and other custom properties if (this.options.multiple) { @@ -47,11 +59,11 @@ var View = Backbone.View.extend({ } }); this.$el.prepend(this.all_button.$el); + } else { + this.$el.addClass('ui-select-multiple'); } - // customize style and content - this.$el.addClass('ui-select-multiple'); this.$select.prop('multiple', true); - this.$button.remove(); + this.$icon_dropdown.remove(); } // update initial options @@ -142,15 +154,15 @@ var View = Backbone.View.extend({ /** Show a spinner indicating that the select options are currently loaded */ wait: function() { - this.$icon.removeClass(); - this.$icon.addClass('fa fa-spinner fa-spin'); + this.$icon_dropdown.removeClass(); + this.$icon_dropdown.addClass('icon-dropdown fa fa-spinner fa-spin'); }, /** Hide spinner indicating that the request has been completed */ unwait: function() { - this.$icon.removeClass(); - this.$icon.addClass('fa fa-caret-down'); + this.$icon_dropdown.removeClass(); + this.$icon_dropdown.addClass('icon-dropdown fa fa-caret-down'); }, /** Returns true if the field is disabled @@ -267,8 +279,9 @@ var View = Backbone.View.extend({ _template: function(options) { return '
    ' + '
    '}});return{View:n}}),define("mvc/ui/ui-slider",["utils/utils"],function(e){var t=Backbone.View.extend({optionsDefault:{id:e.uid(),min:null,max:null,step:null,precise:!1,split:1e4},initialize:function(t){var n=this;this.options=e.merge(t,this.optionsDefault),this.setElement(this._template(this.options)),this.useslider=null!==this.options.max&&null!==this.options.min&&this.options.max>this.options.min,null===this.options.step&&(this.options.step=1,this.options.precise&&this.useslider&&(this.options.step=(this.options.max-this.options.min)/this.options.split)),this.useslider?(this.$slider=this.$el.find("#slider"),this.$slider.slider(this.options),this.$slider.on("slide",function(e,t){n.value(t.value)})):this.$el.find(".ui-form-slider-text").css("width","100%"),this.$text=this.$el.find("#text"),void 0!==this.options.value&&this.value(this.options.value),this.$text.on("change",function(){n.value($(this).val())});var r=[];this.$text.on("keyup",function(e){r[e.which]=!1,n.options.onchange&&n.options.onchange($(this).val())}),this.$text.on("keydown",function(e){var t=e.which;r[t]=!0,8==t||9==t||13==t||37==t||39==t||t>=48&&57>=t||t>=96&&105>=t||(190==t||110==t)&&-1==$(this).val().indexOf(".")&&n.options.precise||(189==t||109==t)&&-1==$(this).val().indexOf("-")||r[91]||r[17]||event.preventDefault()})},value:function(e){return void 0!==e&&(null!==e&&""!==e&&(isNaN(e)&&(e=0),null!==this.options.max&&(e=Math.min(e,this.options.max)),null!==this.options.min&&(e=Math.max(e,this.options.min))),this.$slider&&this.$slider.slider("value",e),this.$text.val(e),this.options.onchange&&this.options.onchange(e)),this.$text.val()},_template:function(e){return'
    '}});return{View:t}}),define("mvc/ui/ui-options",["utils/utils","mvc/ui/ui-buttons"],function(e,t){var n=Backbone.View.extend({initialize:function(n){var r=this;this.options=e.merge(n,{visible:!0,data:[],id:e.uid(),error_text:"No options available.",wait_text:"Please wait...",multiple:!1}),this.setElement('
    '),this.$message=$("
    "),this.$options=$(this._template(n)),this.$menu=$('
    '),this.$el.append(this.$message),this.$el.append(this.$menu),this.$el.append(this.$options),this.options.multiple&&(this.all_button=new t.ButtonCheck({onclick:function(){r.$("input").prop("checked",0!==r.all_button.value()),r.trigger("change")}}),this.$menu.append(this.all_button.$el)),this.options.visible||this.$el.hide(),this.update(this.options.data),void 0!==this.options.value&&this.value(this.options.value),this.on("change",function(){this.options.onchange&&this.options.onchange(this.value())})},update:function(e){var t=this._getValue();if(this.$options.empty(),this._templateOptions)this.$options.append(this._templateOptions(e));else for(var n in e){var r=$(this._templateOption(e[n]));r.addClass("ui-option"),r.tooltip({title:e[n].tooltip,placement:"bottom"}),this.$options.append(r)}var i=this;this.$("input").on("change",function(){i.value(i._getValue()),i.trigger("change")}),this.value(t),this.unwait()},value:function(e){if(void 0!==e&&(this.$("input").prop("checked",!1),null!==e)){e instanceof Array||(e=[e]);for(var t in e)this.$('input[value="'+e[t]+'"]').first().prop("checked",!0)}var n=this._getValue();if(this.all_button){var r=n;r=r instanceof Array?r.length:0,this.all_button.value(r,this._size())}return n},exists:function(e){if(void 0!==e){e instanceof Array||(e=[e]);for(var t in e)if(this.$('input[value="'+e[t]+'"]').length>0)return!0}return!1},first:function(){var e=this.$("input").first();return e.length>0?e.val():null},wait:function(){0==this._size()&&(this._messageShow(this.options.wait_text,"info"),this.$options.hide(),this.$menu.hide())},unwait:function(){var e=this._size();0==e?(this._messageShow(this.options.error_text,"danger"),this.$options.hide(),this.$menu.hide()):(this._messageHide(),this.$options.css("display","inline-block"),this.$menu.show())},_getValue:function(){var t=[];return this.$(":checked").each(function(){t.push($(this).val())}),e.validate(t)?this.options.multiple?t:t[0]:null},_size:function(){return this.$(".ui-option").length},_messageShow:function(e,t){this.$message.show(),this.$message.removeClass(),this.$message.addClass("ui-message alert alert-"+t),this.$message.html(e)},_messageHide:function(){this.$message.hide()},_template:function(){return'
    '}}),r=n.extend({_templateOption:function(t){var n=e.uid();return'
    "}}),i={};i.View=r.extend({initialize:function(e){e.type="radio",r.prototype.initialize.call(this,e)}});var s={};s.View=r.extend({initialize:function(e){e.multiple=!0,e.type="checkbox",r.prototype.initialize.call(this,e)}});var o={};return o.View=n.extend({initialize:function(e){n.prototype.initialize.call(this,e)},value:function(e){return void 0!==e&&(this.$("input").prop("checked",!1),this.$("label").removeClass("active"),this.$('[value="'+e+'"]').prop("checked",!0).closest("label").addClass("active")),this._getValue()},_templateOption:function(e){var t="fa "+e.icon;e.label||(t+=" no-padding");var n='"},_template:function(){return'
    '}}),{Base:n,BaseIcons:r,Radio:i,RadioButton:o,Checkbox:s}}),define("mvc/ui/ui-drilldown",["utils/utils","mvc/ui/ui-options"],function(e,t){var n=t.BaseIcons.extend({initialize:function(e){e.type=e.display||"checkbox",e.multiple="checkbox"==e.display,t.BaseIcons.prototype.initialize.call(this,e),this.initial=!0},value:function(e){var n=t.BaseIcons.prototype.value.call(this,e);if(this.initial&&null!==n&&this.header_index){this.initial=!1;var r=n;$.isArray(r)||(r=[r]);for(var i in r){var s=this.header_index[r[i]];for(var o in s)this._setState(s[o],!0)}}return n},_setState:function(e,t){var n=this.$(".button-"+e),r=this.$(".subgroup-"+e);n.data("is_expanded",t),t?(r.fadeIn("fast"),n.removeClass("toggle-expand"),n.addClass("toggle")):(r.hide(),n.removeClass("toggle"),n.addClass("toggle-expand"))},_templateOptions:function(t){function n(e,t){var n=e.find(".button-"+t);n.on("click",function(){s._setState(t,!n.data("is_expanded"))})}function r(t,o,u){u=u||[];for(i in o){var f=o[i],l=f.options.length>0,h=u.slice(0);s.header_index[f.value]=h.slice(0);var p=$("
    ");if(l){var v=e.uid(),m=$(''),g=$('