mirror of
https://github.com/galaxyproject/galaxy.git
synced 2026-09-24 16:30:27 +08:00
Merge branch 'dev' of https://github.com/bgruening/galaxy into phylocanvas
This commit is contained in:
@@ -93,8 +93,8 @@ var CollectionCreatorMixin = {
|
||||
}
|
||||
},
|
||||
|
||||
_setUpCommonSettings : function( ) {
|
||||
this.hideOriginals = false;
|
||||
_setUpCommonSettings : function( attributes ) {
|
||||
this.hideOriginals = attributes.defaultHideSourceItems || false;
|
||||
},
|
||||
|
||||
/** render the footer, completion controls, and cancel controls */
|
||||
|
||||
@@ -195,7 +195,7 @@ var ListCollectionCreator = Backbone.View.extend( BASE_MVC.LoggableMixin ).exten
|
||||
/** unordered, original list - cache to allow reversal */
|
||||
creator.initialElements = attributes.elements || [];
|
||||
|
||||
this._setUpCommonSettings();
|
||||
this._setUpCommonSettings( attributes );
|
||||
this._instanceSetUp();
|
||||
this._elementsSetUp();
|
||||
this._setUpBehaviors();
|
||||
@@ -948,9 +948,10 @@ var listCollectionCreatorModal = function _listCollectionCreatorModal( elements,
|
||||
/** Use a modal to create a list collection, then add it to the given history contents.
|
||||
* @returns {Deferred} resolved when the collection is added to the history.
|
||||
*/
|
||||
function createListCollection( contents ){
|
||||
function createListCollection( contents, defaultHideSourceItems ){
|
||||
var elements = contents.toJSON(),
|
||||
promise = listCollectionCreatorModal( elements, {
|
||||
defaultHideSourceItems: defaultHideSourceItems,
|
||||
creationFn : function( elements, name, hideSourceItems ){
|
||||
elements = elements.map( function( element ){
|
||||
return {
|
||||
|
||||
@@ -259,7 +259,7 @@ var PairedCollectionCreator = Backbone.View.extend( baseMVC.LoggableMixin ).exte
|
||||
/** Used for blocking UI events during ajax/operations (don't post twice) */
|
||||
this.blocking = false;
|
||||
|
||||
this._setUpCommonSettings();
|
||||
this._setUpCommonSettings( attributes );
|
||||
this._setUpBehaviors();
|
||||
this._dataSetUp();
|
||||
},
|
||||
@@ -1642,11 +1642,12 @@ var pairedCollectionCreatorModal = function _pairedCollectionCreatorModal( datas
|
||||
|
||||
|
||||
//=============================================================================
|
||||
function createListOfPairsCollection( collection ){
|
||||
function createListOfPairsCollection( collection, defaultHideSourceItems ){
|
||||
var elements = collection.toJSON();
|
||||
//TODO: validate elements
|
||||
return pairedCollectionCreatorModal( elements, {
|
||||
historyId : collection.historyId
|
||||
historyId : collection.historyId,
|
||||
defaultHideSourceItems: defaultHideSourceItems
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
@@ -230,9 +230,10 @@ var pairCollectionCreatorModal = function _pairCollectionCreatorModal( elements,
|
||||
/** Use a modal to create a pair collection, then add it to the given history contents.
|
||||
* @returns {Deferred} resolved when the collection is added to the history.
|
||||
*/
|
||||
function createPairCollection( contents ){
|
||||
function createPairCollection( contents, defaultHideSourceItems ){
|
||||
var elements = contents.toJSON(),
|
||||
promise = pairCollectionCreatorModal( elements, {
|
||||
defaultHideSourceItems: defaultHideSourceItems,
|
||||
creationFn : function( elements, name, hideSourceItems ){
|
||||
elements = [
|
||||
{ name: "forward", src: "hda", id: elements[0].id },
|
||||
|
||||
@@ -295,9 +295,10 @@ var HistoryViewEdit = _super.extend(
|
||||
];
|
||||
},
|
||||
|
||||
buildCollection : function( collectionType, selection ) {
|
||||
buildCollection : function( collectionType, selection, hideSourceItems ) {
|
||||
var panel = this;
|
||||
var selection = selection || panel.getSelectedModels();
|
||||
var hideSourceItems = hideSourceItems || false;
|
||||
var createFunc;
|
||||
if( collectionType == "list" ) {
|
||||
createFunc = LIST_COLLECTION_CREATOR.createListCollection;
|
||||
@@ -308,7 +309,7 @@ var HistoryViewEdit = _super.extend(
|
||||
} else {
|
||||
console.warn( "Unknown collectionType encountered " + collectionType );
|
||||
}
|
||||
createFunc( selection ).done( function() { panel.model.refresh() } );
|
||||
createFunc( selection, hideSourceItems ).done( function() { panel.model.refresh() } );
|
||||
},
|
||||
|
||||
// ------------------------------------------------------------------------ sub-views
|
||||
|
||||
@@ -0,0 +1,163 @@
|
||||
/** Renders the collection uploader rows */
|
||||
define( [ 'utils/utils', 'mvc/upload/upload-model', 'mvc/upload/upload-settings', 'mvc/ui/ui-popover', 'mvc/ui/ui-select' ],
|
||||
function( Utils, UploadModel, UploadSettings, Popover, Select ) {
|
||||
return Backbone.View.extend({
|
||||
/** Dictionary of upload states and associated icons */
|
||||
status_classes : {
|
||||
init : 'upload-icon-button fa fa-trash-o',
|
||||
queued : 'upload-icon fa fa-spinner fa-spin',
|
||||
running : 'upload-icon fa fa-spinner fa-spin',
|
||||
success : 'upload-icon-button fa fa-check',
|
||||
error : 'upload-icon-button fa fa-exclamation-triangle'
|
||||
},
|
||||
|
||||
initialize: function( app, options ) {
|
||||
var self = this;
|
||||
this.app = app;
|
||||
this.model = options.model;
|
||||
this.setElement( this._template( options.model ) );
|
||||
this.$mode = this.$( '.upload-mode' );
|
||||
this.$title = this.$( '.upload-title-extended' );
|
||||
this.$text = this.$( '.upload-text' );
|
||||
this.$size = this.$( '.upload-size' );
|
||||
this.$info_text = this.$( '.upload-info-text' );
|
||||
this.$info_progress = this.$( '.upload-info-progress' );
|
||||
this.$text_content = this.$( '.upload-text-content' );
|
||||
this.$symbol = this.$( '.upload-symbol' );
|
||||
this.$progress_bar = this.$( '.upload-progress-bar' );
|
||||
this.$percentage = this.$( '.upload-percentage' );
|
||||
|
||||
// append popup to settings icon
|
||||
this.settings = new Popover.View({
|
||||
title : 'Upload configuration',
|
||||
container : this.$( '.upload-settings' ),
|
||||
placement : 'bottom'
|
||||
});
|
||||
|
||||
// identify default genome and extension values
|
||||
var default_genome = this.app.select_genome.value();
|
||||
var default_extension = this.app.select_extension.value();
|
||||
|
||||
// handle click event
|
||||
this.$symbol.on('click', function() { self._removeRow(); });
|
||||
|
||||
// handle text editing event
|
||||
this.$text_content.on( 'change input', function( e ) {
|
||||
self.model.set( { 'url_paste': $( e.target ).val(),
|
||||
'file_size': $( e.target ).val().length } );
|
||||
});
|
||||
|
||||
// model events
|
||||
this.listenTo( this.model, 'change:percentage', function() { self._refreshPercentage() } );
|
||||
this.listenTo( this.model, 'change:status', function() { self._refreshStatus() } );
|
||||
this.listenTo( this.model, 'change:info', function() { self._refreshInfo() } );
|
||||
this.listenTo( this.model, 'change:file_size', function() { self._refreshFileSize() } );
|
||||
this.listenTo( this.model, 'remove', function() { self.remove() } );
|
||||
this.app.collection.on('reset', function() { self.remove() } );
|
||||
},
|
||||
|
||||
render: function() {
|
||||
var options = this.model.attributes;
|
||||
this.$title.html( _.escape( options.file_name ) );
|
||||
this.$size.html( Utils.bytesToString ( options.file_size ) );
|
||||
this.$mode.removeClass().addClass( 'upload-mode' ).addClass( 'text-primary' );
|
||||
if ( options.file_mode == 'new' ) {
|
||||
this.$text.css( { 'width' : this.$el.width() - 16 + 'px', 'top' : this.$el.height() - 8 + 'px' } ).show();
|
||||
this.$el.height( this.$el.height() - 8 + this.$text.height() + 16 );
|
||||
this.$mode.addClass( 'fa fa-edit' );
|
||||
} else if ( options.file_mode == 'local' ) {
|
||||
this.$mode.addClass( 'fa fa-laptop' );
|
||||
} else if ( options.file_mode == 'ftp' ) {
|
||||
this.$mode.addClass( 'fa fa-folder-open-o' );
|
||||
}
|
||||
},
|
||||
|
||||
/** Refresh info text */
|
||||
_refreshInfo: function() {
|
||||
var info = this.model.get( 'info' );
|
||||
if ( info ) {
|
||||
this.$info_text.html( '<strong>Failed: </strong>' + info ).show();
|
||||
} else {
|
||||
this.$info_text.hide();
|
||||
}
|
||||
},
|
||||
|
||||
/** Refresh percentage status */
|
||||
_refreshPercentage : function() {
|
||||
var percentage = parseInt( this.model.get( 'percentage' ) );
|
||||
this.$progress_bar.css( { width : percentage + '%' } );
|
||||
this.$percentage.html( percentage != 100 ? percentage + '%' : 'Adding to history...' );
|
||||
},
|
||||
|
||||
/** Refresh status */
|
||||
_refreshStatus : function() {
|
||||
var status = this.model.get( 'status' );
|
||||
this.$symbol.removeClass().addClass( 'upload-symbol' ).addClass( this.status_classes[ status ] );
|
||||
this.model.set( 'enabled', status == 'init' );
|
||||
var enabled = this.model.get( 'enabled' );
|
||||
this.$text_content.attr( 'disabled', !enabled );
|
||||
if ( status == 'success' ) {
|
||||
this.$el.addClass( 'success' );
|
||||
this.$percentage.html( '100%' );
|
||||
}
|
||||
if ( status == 'error' ) {
|
||||
this.$el.addClass( 'danger' );
|
||||
this.$info_progress.hide();
|
||||
}
|
||||
},
|
||||
|
||||
/** Refresh file size */
|
||||
_refreshFileSize: function() {
|
||||
this.$size.html( Utils.bytesToString ( this.model.get( 'file_size' ) ) );
|
||||
},
|
||||
|
||||
/** Remove row */
|
||||
_removeRow: function() {
|
||||
if ( [ 'init', 'success', 'error' ].indexOf( this.model.get( 'status' ) ) !== -1 ) {
|
||||
this.app.collection.remove( this.model );
|
||||
}
|
||||
},
|
||||
|
||||
/** Attach file info popup */
|
||||
_showSettings : function() {
|
||||
if ( !this.settings.visible ) {
|
||||
this.settings.empty();
|
||||
this.settings.append( ( new UploadSettings( this ) ).$el );
|
||||
this.settings.show();
|
||||
} else {
|
||||
this.settings.hide();
|
||||
}
|
||||
},
|
||||
|
||||
/** View template */
|
||||
_template: function( options ) {
|
||||
return '<tr id="upload-row-' + options.id + '" class="upload-row">' +
|
||||
'<td>' +
|
||||
'<div class="upload-text-column">' +
|
||||
'<div class="upload-mode"/>' +
|
||||
'<div class="upload-title-extended"/>' +
|
||||
'<div class="upload-text">' +
|
||||
'<div class="upload-text-info">You can tell Galaxy to download data from web by entering URL in this box (one per line). You can also directly paste the contents of a file.</div>' +
|
||||
'<textarea class="upload-text-content form-control"/>' +
|
||||
'</div>' +
|
||||
'</div>' +
|
||||
'</td>' +
|
||||
'<td>' +
|
||||
'<div class="upload-size"/>' +
|
||||
'</td>' +
|
||||
'<td>' +
|
||||
'<div class="upload-info">' +
|
||||
'<div class="upload-info-text"/>' +
|
||||
'<div class="upload-info-progress progress">' +
|
||||
'<div class="upload-progress-bar progress-bar progress-bar-success"/>' +
|
||||
'<div class="upload-percentage">0%</div>' +
|
||||
'</div>' +
|
||||
'</div>' +
|
||||
'</td>' +
|
||||
'<td>' +
|
||||
'<div class="upload-symbol ' + this.status_classes.init + '"/>' +
|
||||
'</td>' +
|
||||
'</tr>';
|
||||
}
|
||||
});
|
||||
});
|
||||
@@ -0,0 +1,395 @@
|
||||
/** Renders contents of the collection uploader */
|
||||
define([ 'utils/utils', 'mvc/upload/upload-model', 'mvc/upload/collection/collection-row', 'mvc/upload/upload-ftp', 'mvc/ui/ui-popover', 'mvc/ui/ui-select', 'mvc/ui/ui-misc', 'mvc/collection/list-collection-creator', 'utils/uploadbox' ],
|
||||
function( Utils, UploadModel, UploadRow, UploadFtp, Popover, Select, Ui, LIST_COLLECTION_CREATOR ) {
|
||||
return Backbone.View.extend({
|
||||
// current upload size in bytes
|
||||
upload_size: 0,
|
||||
|
||||
// contains upload row models
|
||||
collection : new UploadModel.Collection(),
|
||||
|
||||
// keeps track of the current uploader state
|
||||
counter : {
|
||||
announce : 0,
|
||||
success : 0,
|
||||
error : 0,
|
||||
running : 0,
|
||||
reset : function() { this.announce = this.success = this.error = this.running = 0 }
|
||||
},
|
||||
|
||||
initialize : function( app ) {
|
||||
var self = this;
|
||||
this.app = app;
|
||||
this.options = app.options;
|
||||
this.list_extensions = app.list_extensions;
|
||||
this.list_genomes = app.list_genomes;
|
||||
this.ui_button = app.ui_button;
|
||||
this.ftp_upload_site = app.currentFtp();
|
||||
this.setElement( this._template() );
|
||||
|
||||
// append buttons to dom
|
||||
this.btnLocal = new Ui.Button( { id: 'btn-local', title: 'Choose local files', onclick: function() { self.uploadbox.select() }, icon: 'fa fa-laptop' } );
|
||||
this.btnFtp = new Ui.Button( { id: 'btn-ftp', title: 'Choose FTP files', onclick: function() { self._eventFtp() }, icon: 'fa fa-folder-open-o' } );
|
||||
this.btnCreate = new Ui.Button( { id: 'btn-new', title: 'Paste/Fetch data', onclick: function() { self._eventCreate() }, icon: 'fa fa-edit' } );
|
||||
this.btnStart = new Ui.Button( { id: 'btn-start', title: 'Start', onclick: function() { self._eventStart() } } );
|
||||
this.btnBuild = new Ui.Button( { id: 'btn-build', title: 'Build', onclick: function() { self._eventBuild() } } );
|
||||
this.btnStop = new Ui.Button( { id: 'btn-stop', title: 'Pause', onclick: function() { self._eventStop() } } );
|
||||
this.btnReset = new Ui.Button( { id: 'btn-reset', title: 'Reset', onclick: function() { self._eventReset() } } );
|
||||
this.btnClose = new Ui.Button( { id: 'btn-close', title: 'Close', onclick: function() { self.app.modal.hide() } } );
|
||||
_.each( [ this.btnLocal, this.btnFtp, this.btnCreate, this.btnStop, this.btnReset, this.btnStart, this.btnBuild, this.btnClose ], function( button ) {
|
||||
self.$( '.upload-buttons' ).prepend( button.$el );
|
||||
});
|
||||
|
||||
// file upload
|
||||
this.uploadbox = this.$( '.upload-box' ).uploadbox({
|
||||
url : this.app.options.nginx_upload_path,
|
||||
announce : function( index, file ) { self._eventAnnounce( index, file ) },
|
||||
initialize : function( index ) { return self.app.toData( [ self.collection.get( index ) ], self.history_id ) },
|
||||
progress : function( index, percentage ) { self._eventProgress( index, percentage ) },
|
||||
success : function( index, message ) { self._eventSuccess( index, message ) },
|
||||
error : function( index, message ) { self._eventError( index, message ) },
|
||||
complete : function() { self._eventComplete() },
|
||||
ondragover : function() { self.$( '.upload-box' ).addClass( 'highlight' ) },
|
||||
ondragleave : function() { self.$( '.upload-box' ).removeClass( 'highlight' ) }
|
||||
});
|
||||
|
||||
console.log(this.list_extensions);
|
||||
|
||||
// add ftp file viewer
|
||||
this.ftp = new Popover.View( { title: 'FTP files', container: this.btnFtp.$el } );
|
||||
|
||||
// select extension
|
||||
this.select_extension = new Select.View({
|
||||
css : 'upload-footer-selection-compressed',
|
||||
container : this.$( '.upload-footer-extension' ),
|
||||
data : _.filter( this.list_extensions, function( ext ) { return !ext.composite_files } ),
|
||||
value : this.options.default_extension,
|
||||
onchange : function( extension ) { self.updateExtension( extension ) }
|
||||
});
|
||||
|
||||
this.collectionType = "list";
|
||||
this.select_collection = new Select.View({
|
||||
css : 'upload-footer-selection-compressed',
|
||||
container : this.$( '.upload-footer-collection-type' ),
|
||||
data : [{"id": "list", "text": "List"}, {"id": "paired", "text": "Paired"}, {"id": "list:paired", "text": "List of Pairs"}],
|
||||
value : "list",
|
||||
onchange : function( collectionType ) { self.updateCollectionType( collectionType ) }
|
||||
})
|
||||
|
||||
// handle extension info popover
|
||||
this.$( '.upload-footer-extension-info' ).on( 'click', function( e ) {
|
||||
self.showExtensionInfo({
|
||||
$el : $( e.target ),
|
||||
title : self.select_extension.text(),
|
||||
extension : self.select_extension.value(),
|
||||
placement : 'top'
|
||||
});
|
||||
}).on( 'mousedown', function( e ) { e.preventDefault() } );
|
||||
|
||||
// genome extension
|
||||
this.select_genome = new Select.View({
|
||||
css : 'upload-footer-selection',
|
||||
container : this.$( '.upload-footer-genome' ),
|
||||
data : this.list_genomes,
|
||||
value : this.options.default_genome,
|
||||
onchange : function( genome ) { self.updateGenome(genome) }
|
||||
});
|
||||
|
||||
// events
|
||||
this.collection.on( 'remove', function( model ) { self._eventRemove( model ) } );
|
||||
this._updateScreen();
|
||||
},
|
||||
|
||||
/** A new file has been dropped/selected through the uploadbox plugin */
|
||||
_eventAnnounce: function( index, file ) {
|
||||
this.counter.announce++;
|
||||
var new_model = new UploadModel.Model({
|
||||
id : index,
|
||||
file_name : file.name,
|
||||
file_size : file.size,
|
||||
file_mode : file.mode || 'local',
|
||||
file_path : file.path,
|
||||
file_data : file,
|
||||
extension : this.select_extension.value(),
|
||||
genome : this.select_genome.value()
|
||||
});
|
||||
this.collection.add( new_model );
|
||||
var upload_row = new UploadRow( this, { model: new_model } );
|
||||
this.$( '.upload-table > tbody:first' ).append( upload_row.$el );
|
||||
this._updateScreen();
|
||||
upload_row.render();
|
||||
},
|
||||
|
||||
/** Progress */
|
||||
_eventProgress: function( index, percentage ) {
|
||||
var it = this.collection.get( index );
|
||||
it.set( 'percentage', percentage );
|
||||
this.ui_button.model.set( 'percentage', this._uploadPercentage( percentage, it.get( 'file_size' ) ) );
|
||||
},
|
||||
|
||||
/** Success */
|
||||
_eventSuccess: function( index, message ) {
|
||||
// var hdaId = message["outputs"][0]["id"];
|
||||
var hid = message["outputs"][0]["hid"];
|
||||
console.log(message["outputs"][0]);
|
||||
var it = this.collection.get( index );
|
||||
it.set( { 'percentage': 100, 'status': 'success', 'hid': hid } );
|
||||
this.ui_button.model.set( 'percentage', this._uploadPercentage( 100, it.get( 'file_size' ) ) );
|
||||
this.upload_completed += it.get( 'file_size' ) * 100;
|
||||
this.counter.announce--;
|
||||
this.counter.success++;
|
||||
this._updateScreen();
|
||||
Galaxy.currHistoryPanel.refreshContents();
|
||||
},
|
||||
|
||||
/** Error */
|
||||
_eventError: function( index, message ) {
|
||||
var it = this.collection.get( index );
|
||||
it.set( { 'percentage': 100, 'status': 'error', 'info': message } );
|
||||
this.ui_button.model.set( { 'percentage': this._uploadPercentage( 100, it.get( 'file_size' ) ), 'status': 'danger' } );
|
||||
this.upload_completed += it.get( 'file_size' ) * 100;
|
||||
this.counter.announce--;
|
||||
this.counter.error++;
|
||||
this._updateScreen();
|
||||
},
|
||||
|
||||
/** Queue is done */
|
||||
_eventComplete: function() {
|
||||
this.collection.each( function( model ) { model.get( 'status' ) == 'queued' && model.set( 'status', 'init' ) } );
|
||||
this.counter.running = 0;
|
||||
this._updateScreen();
|
||||
},
|
||||
|
||||
_eventBuild: function() {
|
||||
var models = this.collection.map( function( upload ) { return Galaxy.currHistoryPanel.collection.getByHid( upload.get( 'hid' ) ) } );
|
||||
var selection = new Galaxy.currHistoryPanel.collection.constructor( models );
|
||||
// I'm building the selection wrong because I need to set this historyId directly.
|
||||
selection.historyId = Galaxy.currHistoryPanel.collection.historyId;
|
||||
Galaxy.currHistoryPanel.buildCollection( this.collectionType, selection, true );
|
||||
this.counter.running = 0;
|
||||
this._updateScreen();
|
||||
this._eventReset();
|
||||
this.app.modal.hide();
|
||||
},
|
||||
|
||||
/** Remove model from upload list */
|
||||
_eventRemove: function( model ) {
|
||||
var status = model.get( 'status' );
|
||||
if ( status == 'success' ) {
|
||||
this.counter.success--;
|
||||
} else if ( status == 'error' ) {
|
||||
this.counter.error--;
|
||||
} else {
|
||||
this.counter.announce--;
|
||||
}
|
||||
this.uploadbox.remove( model.id );
|
||||
this._updateScreen();
|
||||
},
|
||||
|
||||
//
|
||||
// events triggered by this view
|
||||
//
|
||||
|
||||
/** [public] display extension info popup */
|
||||
showExtensionInfo: function( options ) {
|
||||
var self = this;
|
||||
var $el = options.$el;
|
||||
var extension = options.extension;
|
||||
var title = options.title;
|
||||
var description = _.findWhere( self.list_extensions, { 'id': extension } );
|
||||
this.extension_popup && this.extension_popup.remove();
|
||||
this.extension_popup = new Popover.View({ placement: options.placement || 'bottom', container: $el } );
|
||||
this.extension_popup.title( title );
|
||||
this.extension_popup.empty();
|
||||
this.extension_popup.append( this._templateDescription( description ) );
|
||||
this.extension_popup.show();
|
||||
},
|
||||
|
||||
/** Show/hide ftp popup */
|
||||
_eventFtp: function() {
|
||||
if ( !this.ftp.visible ) {
|
||||
this.ftp.empty();
|
||||
var self = this;
|
||||
this.ftp.append( ( new UploadFtp({
|
||||
collection : this.collection,
|
||||
ftp_upload_site : this.ftp_upload_site,
|
||||
onadd : function( ftp_file ) {
|
||||
self.uploadbox.add([{
|
||||
mode: 'ftp',
|
||||
name: ftp_file.path,
|
||||
size: ftp_file.size,
|
||||
path: ftp_file.path
|
||||
}]);
|
||||
},
|
||||
onremove: function( model_index ) {
|
||||
self.collection.remove( model_index );
|
||||
}
|
||||
} ) ).$el );
|
||||
this.ftp.show();
|
||||
} else {
|
||||
this.ftp.hide();
|
||||
}
|
||||
},
|
||||
|
||||
/** Create a new file */
|
||||
_eventCreate: function (){
|
||||
this.uploadbox.add( [ { name: 'New File', size: 0, mode: 'new' } ] );
|
||||
},
|
||||
|
||||
/** Start upload process */
|
||||
_eventStart: function() {
|
||||
if ( this.counter.announce == 0 || this.counter.running > 0 ) {
|
||||
return;
|
||||
}
|
||||
var self = this;
|
||||
this.upload_size = 0;
|
||||
this.upload_completed = 0;
|
||||
this.collection.each( function( model ) {
|
||||
if( model.get( 'status' ) == 'init' ) {
|
||||
model.set( 'status', 'queued' );
|
||||
self.upload_size += model.get( 'file_size' );
|
||||
}
|
||||
});
|
||||
this.ui_button.model.set( { 'percentage': 0, 'status': 'success' } );
|
||||
this.counter.running = this.counter.announce;
|
||||
this.history_id = this.app.currentHistory();
|
||||
this.uploadbox.start();
|
||||
this._updateScreen();
|
||||
},
|
||||
|
||||
/** Pause upload process */
|
||||
_eventStop: function() {
|
||||
if ( this.counter.running > 0 ) {
|
||||
this.ui_button.model.set( 'status', 'info' );
|
||||
$( '.upload-top-info' ).html( 'Queue will pause after completing the current file...' );
|
||||
this.uploadbox.stop();
|
||||
}
|
||||
},
|
||||
|
||||
/** Remove all */
|
||||
_eventReset: function() {
|
||||
if ( this.counter.running == 0 ){
|
||||
this.collection.reset();
|
||||
this.counter.reset();
|
||||
this.uploadbox.reset();
|
||||
this.select_extension.value( this.options.default_extension );
|
||||
this.select_genome.value( this.options.default_genome );
|
||||
this.ui_button.model.set( 'percentage', 0 );
|
||||
this._updateScreen();
|
||||
}
|
||||
},
|
||||
|
||||
/** Update extension for all models */
|
||||
updateExtension: function( extension, defaults_only ) {
|
||||
var self = this;
|
||||
this.collection.each( function( model ) {
|
||||
if ( model.get( 'status' ) == 'init' && ( model.get( 'extension' ) == self.options.default_extension || !defaults_only ) ) {
|
||||
model.set( 'extension', extension );
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
/** Update collection type */
|
||||
updateCollectionType: function( collectionType ) {
|
||||
var self = this;
|
||||
this.collectionType = collectionType;
|
||||
},
|
||||
|
||||
/** Update genome for all models */
|
||||
updateGenome: function( genome, defaults_only ) {
|
||||
var self = this;
|
||||
this.collection.each( function( model ) {
|
||||
if ( model.get( 'status' ) == 'init' && ( model.get( 'genome' ) == self.options.default_genome || !defaults_only ) ) {
|
||||
model.set( 'genome', genome );
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
/** Set screen */
|
||||
_updateScreen: function () {
|
||||
var message = '';
|
||||
if( this.counter.announce == 0 ) {
|
||||
if (this.uploadbox.compatible()) {
|
||||
message = ' ';
|
||||
} else {
|
||||
message = 'Browser does not support Drag & Drop. Try Firefox 4+, Chrome 7+, IE 10+, Opera 12+ or Safari 6+.';
|
||||
}
|
||||
} else {
|
||||
if ( this.counter.running == 0 ) {
|
||||
message = 'You added ' + this.counter.announce + ' file(s) to the queue. Add more files or click \'Start\' to proceed.';
|
||||
} else {
|
||||
message = 'Please wait...' + this.counter.announce + ' out of ' + this.counter.running + ' remaining.';
|
||||
}
|
||||
}
|
||||
this.$( '.upload-top-info' ).html( message );
|
||||
var enable_reset = this.counter.running == 0 && this.counter.announce + this.counter.success + this.counter.error > 0;
|
||||
var enable_start = this.counter.running == 0 && this.counter.announce > 0;
|
||||
var enable_build = this.counter.running == 0 && this.counter.announce == 0 && this.counter.success > 0 && this.counter.error == 0
|
||||
var enable_sources = this.counter.running == 0;
|
||||
var show_table = this.counter.announce + this.counter.success + this.counter.error > 0;
|
||||
this.btnReset[ enable_reset ? 'enable' : 'disable' ]();
|
||||
this.btnStart[ enable_start ? 'enable' : 'disable' ]();
|
||||
this.btnStart.$el[ enable_start ? 'addClass' : 'removeClass' ]( 'btn-primary' );
|
||||
this.btnBuild[ enable_build ? 'enable' : 'disable' ]();
|
||||
this.btnBuild.$el[ enable_build ? 'addClass' : 'removeClass' ]( 'btn-primary' );
|
||||
this.btnStop[ this.counter.running > 0 ? 'enable' : 'disable' ]();
|
||||
this.btnLocal[ enable_sources ? 'enable' : 'disable' ]();
|
||||
this.btnFtp[ enable_sources ? 'enable' : 'disable' ]();
|
||||
this.btnCreate[ enable_sources ? 'enable' : 'disable' ]();
|
||||
this.btnFtp.$el[ this.ftp_upload_site ? 'show' : 'hide' ]();
|
||||
this.$( '.upload-table' )[ show_table ? 'show' : 'hide' ]();
|
||||
this.$( '.upload-helper' )[ show_table ? 'hide' : 'show' ]();
|
||||
},
|
||||
|
||||
/** Calculate percentage of all queued uploads */
|
||||
_uploadPercentage: function( percentage, size ) {
|
||||
return ( this.upload_completed + ( percentage * size ) ) / this.upload_size;
|
||||
},
|
||||
|
||||
/** Template for extensions description */
|
||||
_templateDescription: function( options ) {
|
||||
if ( options.description ) {
|
||||
var tmpl = options.description;
|
||||
if ( options.description_url ) {
|
||||
tmpl += ' (<a href="' + options.description_url + '" target="_blank">read more</a>)';
|
||||
}
|
||||
return tmpl;
|
||||
} else {
|
||||
return 'There is no description available for this file extension.';
|
||||
}
|
||||
},
|
||||
|
||||
/** Template */
|
||||
_template: function() {
|
||||
return '<div class="upload-view-default">' +
|
||||
'<div class="upload-top">' +
|
||||
'<h6 class="upload-top-info"/>' +
|
||||
'</div>' +
|
||||
'<div class="upload-box">' +
|
||||
'<div class="upload-helper"><i class="fa fa-files-o"/>Drop files here</div>' +
|
||||
'<table class="upload-table ui-table-striped" style="display: none;">' +
|
||||
'<thead>' +
|
||||
'<tr>' +
|
||||
'<th>Name</th>' +
|
||||
'<th>Size</th>' +
|
||||
'<th>Status</th>' +
|
||||
'<th/>' +
|
||||
'</tr>' +
|
||||
'</thead>' +
|
||||
'<tbody/>' +
|
||||
'</table>' +
|
||||
'</div>' +
|
||||
'<div class="upload-footer">' +
|
||||
'<span class="upload-footer-title-compressed">Collection Type:</span>' +
|
||||
'<span class="upload-footer-collection-type"/>' +
|
||||
'<span class="upload-footer-title-compressed">File Type:</span>' +
|
||||
'<span class="upload-footer-extension"/>' +
|
||||
'<span class="upload-footer-extension-info upload-icon-button fa fa-search"/> ' +
|
||||
'<span class="upload-footer-title-compressed">Genome (set all):</span>' +
|
||||
'<span class="upload-footer-genome"/>' +
|
||||
'</div>' +
|
||||
'<div class="upload-buttons"/>' +
|
||||
'</div>';
|
||||
}
|
||||
});
|
||||
});
|
||||
@@ -1,6 +1,6 @@
|
||||
/** Upload app contains the upload progress button and upload modal, compiles model data for API request **/
|
||||
define([ 'utils/utils', 'mvc/ui/ui-modal', 'mvc/ui/ui-tabs', 'mvc/upload/upload-button', 'mvc/upload/default/default-view', 'mvc/upload/composite/composite-view'],
|
||||
function( Utils, Modal, Tabs, UploadButton, UploadViewDefault, UploadViewComposite ) {
|
||||
define([ 'utils/utils', 'mvc/ui/ui-modal', 'mvc/ui/ui-tabs', 'mvc/upload/upload-button', 'mvc/upload/default/default-view', 'mvc/upload/composite/composite-view', 'mvc/upload/collection/collection-view'],
|
||||
function( Utils, Modal, Tabs, UploadButton, UploadViewDefault, UploadViewComposite, UploadViewCollection ) {
|
||||
return Backbone.View.extend({
|
||||
options : {
|
||||
nginx_upload_path : '',
|
||||
@@ -109,6 +109,12 @@ function( Utils, Modal, Tabs, UploadButton, UploadViewDefault, UploadViewComposi
|
||||
title : 'Composite',
|
||||
$el : this.composite_view.$el
|
||||
});
|
||||
this.collection_view = new UploadViewCollection( this );
|
||||
this.tabs.add({
|
||||
id : 'collection',
|
||||
title : 'Collection',
|
||||
$el : this.collection_view.$el
|
||||
})
|
||||
this.modal = new Modal.View({
|
||||
title : 'Download from web or upload from disk',
|
||||
body : this.tabs.$el,
|
||||
|
||||
@@ -86,6 +86,13 @@
|
||||
font-size : @font-size-small;
|
||||
float: left;
|
||||
}
|
||||
/* Add back in lenght of extension, genome, and settings. */
|
||||
.upload-title-extended {
|
||||
width: 380px;
|
||||
word-wrap: break-word;
|
||||
font-size : @font-size-small;
|
||||
float: left;
|
||||
}
|
||||
.upload-size {
|
||||
width: 60px;
|
||||
white-space: nowrap;
|
||||
@@ -258,12 +265,23 @@
|
||||
padding-left: 60px;
|
||||
padding-right: 20px;
|
||||
}
|
||||
.upload-footer-title-compressed {
|
||||
font-weight: bold;
|
||||
padding-left: 20px;
|
||||
padding-right: 10px;
|
||||
}
|
||||
.upload-footer-selection{
|
||||
width:200px;
|
||||
min-width:200px;
|
||||
font-size:11px;
|
||||
padding-right: 10px;
|
||||
}
|
||||
.upload-footer-selection-compressed{
|
||||
width:120px;
|
||||
min-width:120px;
|
||||
font-size:11px;
|
||||
padding-right: 10px;
|
||||
}
|
||||
.select2-choice {
|
||||
.select2-arrow b {
|
||||
background-position: 0 -3px;
|
||||
|
||||
@@ -1773,23 +1773,23 @@ class DataToolParameter( BaseDataToolParameter ):
|
||||
'keep' : keep } )
|
||||
|
||||
# add datasets
|
||||
visible_hda = other_values.get( self.name )
|
||||
has_matched = False
|
||||
hda_list = util.listify( other_values.get( self.name ) )
|
||||
for hda in history.active_datasets_and_roles:
|
||||
match = dataset_matcher.hda_match( hda, check_security=False )
|
||||
if match:
|
||||
m = match.hda
|
||||
has_matched = has_matched or visible_hda == m or visible_hda == hda
|
||||
hda_list = [ h for h in hda_list if h != m and h != hda ]
|
||||
m_name = '%s (as %s)' % ( match.original_hda.name, match.target_ext ) if match.implicit_conversion else m.name
|
||||
append( d[ 'options' ][ 'hda' ], m, m_name, 'hda' )
|
||||
if not has_matched and hasattr( visible_hda, 'hid' ):
|
||||
if visible_hda.deleted:
|
||||
hda_state = 'deleted'
|
||||
elif not visible_hda.visible:
|
||||
hda_state = 'hidden'
|
||||
else:
|
||||
hda_state = 'unavailable'
|
||||
append( d[ 'options' ][ 'hda' ], visible_hda, '(%s) %s' % ( hda_state, visible_hda.name ), 'hda', True )
|
||||
for hda in hda_list:
|
||||
if hasattr( hda, 'hid' ):
|
||||
if hda.deleted:
|
||||
hda_state = 'deleted'
|
||||
elif not hda.visible:
|
||||
hda_state = 'hidden'
|
||||
else:
|
||||
hda_state = 'unavailable'
|
||||
append( d[ 'options' ][ 'hda' ], hda, '(%s) %s' % ( hda_state, hda.name ), 'hda', True )
|
||||
|
||||
# add dataset collections
|
||||
dataset_collection_matcher = DatasetCollectionMatcher( dataset_matcher )
|
||||
|
||||
@@ -1 +1 @@
|
||||
{"version":3,"file":"base-creator.js","sources":["../../../src/mvc/collection/base-creator.js"],"names":["define","CollectionCreatorMixin","_validationWarning","what","clear","VALIDATION_CLASS","this","$","add","focus","select","removeClass","addClass","_changeHideOriginals","hideOriginals","prop","_changeName","_getName","_nameCheckForEnter","ev","keyCode","blocking","_clickCreate","_","escape","val","_clickMoreHelp","stopPropagation","hide","_clickLessHelp","show","_toggleHelp","toggleClass","toggle","_showAlert","message","alertClass","attr","find","html","_hideAlert","_cancelCreate","oncancel","call","name","createList","_setUpCommonSettings","_renderFooter","instance","$footer","empty","templates","footer","each","footerSettings","property","selector","_creatorTemplates","main","template","join"],"mappings":"AAAAA,UACG,WAKH,GAAIC,IAGAC,mBAAqB,SAAUC,EAAMC,GACjC,GAAIC,GAAmB,oBACV,UAATF,IACAA,EAAOG,KAAKC,EAAG,oBAAqBC,IAAKF,KAAKC,EAAG,4BACjDD,KAAKC,EAAG,oBAAqBE,QAAQC,UAErCN,GACAD,EAAOA,GAAQG,KAAKC,EAAG,IAAMF,GAC7BF,EAAKQ,YAAaN,IAElBF,EAAKS,SAAUP,IAIvBQ,qBAAsB,WAClBP,KAAKQ,cAAgBR,KAAKC,EAAG,mBAAoBQ,KAAK,YAK1DC,YAAc,WACVV,KAAKJ,mBAAoB,SAAUI,KAAKW,aAI5CC,mBAAqB,SAAUC,GACR,KAAfA,EAAGC,SAAmBd,KAAKe,UAC3Bf,KAAKgB,gBAKbL,SAAW,WACP,MAAOM,GAAEC,OAAQlB,KAAKC,EAAG,oBAAqBkB,QAKlDC,eAAiB,SAAUP,GACvBA,EAAGQ,kBACHrB,KAAKC,EAAG,cAAeK,SAAU,YACjCN,KAAKC,EAAG,cAAeqB,QAG3BC,eAAiB,SAAUV,GACvBA,EAAGQ,kBACHrB,KAAKC,EAAG,cAAeI,YAAa,YACpCL,KAAKC,EAAG,cAAeuB,QAG3BC,YAAc,SAAUZ,GACpBA,EAAGQ,kBACHrB,KAAKC,EAAG,cAAeyB,YAAa,YACpC1B,KAAKC,EAAG,cAAe0B,UAI3BC,WAAa,SAAUC,EAASC,GAC5BA,EAAaA,GAAc,eAC3B9B,KAAKC,EAAG,cAAeqB,OACvBtB,KAAKC,EAAG,kBACH8B,KAAM,QAAS,2BAA4BzB,SAAUwB,GAAaN,OAClEQ,KAAM,kBAAmBC,KAAMJ,IAGxCK,WAAa,WACTlC,KAAKC,EAAG,cAAeuB,OACvBxB,KAAKC,EAAG,kBAAmBqB,QAG/Ba,cAAe,WACkB,kBAAlBnC,MAAKoC,UACZpC,KAAKoC,SAASC,KAAMrC,OAK5BgB,aAAe,WACX,GAAIsB,GAAOtC,KAAKW,UACX2B,GAEOtC,KAAKe,UACbf,KAAKuC,WAAYD,GAFjBtC,KAAKJ,mBAAoB,SAMjC4C,qBAAuB,WACnBxC,KAAKQ,eAAgB,GAIzBiC,cAAgB,WACZ,GAAIC,GAAW1C,KACX2C,EAAU3C,KAAKC,EAAG,WAAY2C,QAAQX,KAAMjC,KAAK6C,UAAUC,SAO/D,OANA7B,GAAE8B,KAAM/C,KAAKgD,eAAgB,SAAUC,EAAUC,GAC7ClD,KAAKC,EAAGiD,GAAWzC,KAAM,UAAWiC,EAAUO,MAErB,kBAAlBjD,MAAKoC,UACZpC,KAAKC,EAAG,sBAAuBuB,OAE5BmB,GAGXQ,mBACIC,KAAOnC,EAAEoC,UACL,8CACA,yDACA,+CACFC,KAAK,MAMX,QACI3D,uBAAwBA"}
|
||||
{"version":3,"file":"base-creator.js","sources":["../../../src/mvc/collection/base-creator.js"],"names":["define","CollectionCreatorMixin","_validationWarning","what","clear","VALIDATION_CLASS","this","$","add","focus","select","removeClass","addClass","_changeHideOriginals","hideOriginals","prop","_changeName","_getName","_nameCheckForEnter","ev","keyCode","blocking","_clickCreate","_","escape","val","_clickMoreHelp","stopPropagation","hide","_clickLessHelp","show","_toggleHelp","toggleClass","toggle","_showAlert","message","alertClass","attr","find","html","_hideAlert","_cancelCreate","oncancel","call","name","createList","_setUpCommonSettings","attributes","defaultHideSourceItems","_renderFooter","instance","$footer","empty","templates","footer","each","footerSettings","property","selector","_creatorTemplates","main","template","join"],"mappings":"AAAAA,UACG,WAKH,GAAIC,IAGAC,mBAAqB,SAAUC,EAAMC,GACjC,GAAIC,GAAmB,oBACV,UAATF,IACAA,EAAOG,KAAKC,EAAG,oBAAqBC,IAAKF,KAAKC,EAAG,4BACjDD,KAAKC,EAAG,oBAAqBE,QAAQC,UAErCN,GACAD,EAAOA,GAAQG,KAAKC,EAAG,IAAMF,GAC7BF,EAAKQ,YAAaN,IAElBF,EAAKS,SAAUP,IAIvBQ,qBAAsB,WAClBP,KAAKQ,cAAgBR,KAAKC,EAAG,mBAAoBQ,KAAK,YAK1DC,YAAc,WACVV,KAAKJ,mBAAoB,SAAUI,KAAKW,aAI5CC,mBAAqB,SAAUC,GACR,KAAfA,EAAGC,SAAmBd,KAAKe,UAC3Bf,KAAKgB,gBAKbL,SAAW,WACP,MAAOM,GAAEC,OAAQlB,KAAKC,EAAG,oBAAqBkB,QAKlDC,eAAiB,SAAUP,GACvBA,EAAGQ,kBACHrB,KAAKC,EAAG,cAAeK,SAAU,YACjCN,KAAKC,EAAG,cAAeqB,QAG3BC,eAAiB,SAAUV,GACvBA,EAAGQ,kBACHrB,KAAKC,EAAG,cAAeI,YAAa,YACpCL,KAAKC,EAAG,cAAeuB,QAG3BC,YAAc,SAAUZ,GACpBA,EAAGQ,kBACHrB,KAAKC,EAAG,cAAeyB,YAAa,YACpC1B,KAAKC,EAAG,cAAe0B,UAI3BC,WAAa,SAAUC,EAASC,GAC5BA,EAAaA,GAAc,eAC3B9B,KAAKC,EAAG,cAAeqB,OACvBtB,KAAKC,EAAG,kBACH8B,KAAM,QAAS,2BAA4BzB,SAAUwB,GAAaN,OAClEQ,KAAM,kBAAmBC,KAAMJ,IAGxCK,WAAa,WACTlC,KAAKC,EAAG,cAAeuB,OACvBxB,KAAKC,EAAG,kBAAmBqB,QAG/Ba,cAAe,WACkB,kBAAlBnC,MAAKoC,UACZpC,KAAKoC,SAASC,KAAMrC,OAK5BgB,aAAe,WACX,GAAIsB,GAAOtC,KAAKW,UACX2B,GAEOtC,KAAKe,UACbf,KAAKuC,WAAYD,GAFjBtC,KAAKJ,mBAAoB,SAMjC4C,qBAAuB,SAAUC,GAC7BzC,KAAKQ,cAAgBiC,EAAWC,yBAA0B,GAI9DC,cAAgB,WACZ,GAAIC,GAAW5C,KACX6C,EAAU7C,KAAKC,EAAG,WAAY6C,QAAQb,KAAMjC,KAAK+C,UAAUC,SAO/D,OANA/B,GAAEgC,KAAMjD,KAAKkD,eAAgB,SAAUC,EAAUC,GAC7CpD,KAAKC,EAAGmD,GAAW3C,KAAM,UAAWmC,EAAUO,MAErB,kBAAlBnD,MAAKoC,UACZpC,KAAKC,EAAG,sBAAuBuB,OAE5BqB,GAGXQ,mBACIC,KAAOrC,EAAEsC,UACL,8CACA,yDACA,+CACFC,KAAK,MAMX,QACI7D,uBAAwBA"}
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1 +1 @@
|
||||
{"version":3,"file":"pair-collection-creator.js","sources":["../../../src/mvc/collection/pair-collection-creator.js"],"names":["define","LIST_CREATOR","HDCA","BASE_MVC","_l","createPairCollection","contents","elements","toJSON","promise","pairCollectionCreatorModal","creationFn","name","hideSourceItems","src","id","createHDCA","logNamespace","PairedDatasetCollectionElementView","Backbone","View","extend","LoggableMixin","_logNamespace","tagName","className","initialize","attributes","this","element","identifier","render","$el","attr","html","template","_","join","destroy","off","remove","toString","_super","ListCollectionCreator","PairCollectionCreator","elementViewClass","collectionClass","HistoryPairDatasetCollection","_mangleDuplicateNames","speed","callback","workingElements","length","prototype","call","_renderInvalid","_renderList","creator","$tmp","jQuery","$list","each","elementViews","view","removeElementView","append","_createForwardElementView","_createReverseElementView","empty","children","invoke","_createElementView","options","elementView","push","swap","events","clone","click .swap","templates","middle","helpContent","invalidInitial","title","collectionCreatorModal"],"mappings":"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"}
|
||||
{"version":3,"file":"pair-collection-creator.js","sources":["../../../src/mvc/collection/pair-collection-creator.js"],"names":["define","LIST_CREATOR","HDCA","BASE_MVC","_l","createPairCollection","contents","defaultHideSourceItems","elements","toJSON","promise","pairCollectionCreatorModal","creationFn","name","hideSourceItems","src","id","createHDCA","logNamespace","PairedDatasetCollectionElementView","Backbone","View","extend","LoggableMixin","_logNamespace","tagName","className","initialize","attributes","this","element","identifier","render","$el","attr","html","template","_","join","destroy","off","remove","toString","_super","ListCollectionCreator","PairCollectionCreator","elementViewClass","collectionClass","HistoryPairDatasetCollection","_mangleDuplicateNames","speed","callback","workingElements","length","prototype","call","_renderInvalid","_renderList","creator","$tmp","jQuery","$list","each","elementViews","view","removeElementView","append","_createForwardElementView","_createReverseElementView","empty","children","invoke","_createElementView","options","elementView","push","swap","events","clone","click .swap","templates","middle","helpContent","invalidInitial","title","collectionCreatorModal"],"mappings":"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"}
|
||||
File diff suppressed because one or more lines are too long
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"collection-row.js","sources":["../../../../src/mvc/upload/collection/collection-row.js"],"names":["define","Utils","UploadModel","UploadSettings","Popover","Backbone","View","extend","status_classes","init","queued","running","success","error","initialize","app","options","self","this","model","setElement","_template","$mode","$","$title","$text","$size","$info_text","$info_progress","$text_content","$symbol","$progress_bar","$percentage","settings","title","container","placement","select_genome","value","select_extension","on","_removeRow","e","set","url_paste","target","val","file_size","length","listenTo","_refreshPercentage","_refreshStatus","_refreshInfo","_refreshFileSize","remove","collection","render","attributes","html","_","escape","file_name","bytesToString","removeClass","addClass","file_mode","css","width","$el","top","height","show","info","get","hide","percentage","parseInt","status","enabled","attr","indexOf","_showSettings","visible","empty","append","id"],"mappings":"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"}
|
||||
File diff suppressed because one or more lines are too long
@@ -1 +1 @@
|
||||
{"version":3,"file":"upload-view.js","sources":["../../../src/mvc/upload/upload-view.js"],"names":["define","Utils","Modal","Tabs","UploadButton","UploadViewDefault","UploadViewComposite","Backbone","View","extend","options","nginx_upload_path","ftp_upload_site","default_genome","default_extension","height","width","auto","id","text","description","list_extensions","list_genomes","initialize","self","this","merge","ui_button","onclick","e","preventDefault","show","onunload","percentage","model","get","setElement","$el","url","Galaxy","root","success","datatypes","key","push","extension","description_url","composite_files","sort","a","b","a_text","toLowerCase","b_text","datatypes_disable_auto","unshift","genomes","currHistoryPanel","current_user","user","modal","tabs","default_view","add","title","composite_view","body","closing_events","title_separator","window","setTimeout","currentHistory","currentFtp","toData","items","history_id","data","payload","tool_id","inputs","files","error_message","length","index","it","set","prefix","name","file","JSON","stringify"],"mappings":"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"}
|
||||
{"version":3,"file":"upload-view.js","sources":["../../../src/mvc/upload/upload-view.js"],"names":["define","Utils","Modal","Tabs","UploadButton","UploadViewDefault","UploadViewComposite","UploadViewCollection","Backbone","View","extend","options","nginx_upload_path","ftp_upload_site","default_genome","default_extension","height","width","auto","id","text","description","list_extensions","list_genomes","initialize","self","this","merge","ui_button","onclick","e","preventDefault","show","onunload","percentage","model","get","setElement","$el","url","Galaxy","root","success","datatypes","key","push","extension","description_url","composite_files","sort","a","b","a_text","toLowerCase","b_text","datatypes_disable_auto","unshift","genomes","currHistoryPanel","current_user","user","modal","tabs","default_view","add","title","composite_view","collection_view","body","closing_events","title_separator","window","setTimeout","currentHistory","currentFtp","toData","items","history_id","data","payload","tool_id","inputs","files","error_message","length","index","it","set","prefix","name","file","JSON","stringify"],"mappings":"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"}
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1,2 +1,2 @@
|
||||
webpackJsonp([4],[function(e,r,n){(function(e){var r=n(1),a=r,i=n(56).GalaxyApp,o=n(10),t=n(5),l=n(58);window.app=function(n,c){window.Galaxy=new i(n,c),Galaxy.debug("login app");var d=encodeURI(n.redirect);if(!n.show_welcome_with_login){var w=r.param({use_panels:"True",redirect:d});return void(window.location.href=Galaxy.root+"user/login?"+w)}var p=new l.PageLayoutView(e.extend(n,{el:"body",center:new o.CenterPanel({el:"#center"}),right:new o.RightPanel({title:t("Login required"),el:"#right"})}));a(function(){var e=r.param({redirect:d}),a=Galaxy.root+"user/login?"+e;p.render(),p.center.$("#galaxy_main").prop("src",n.welcome_url),p.right.$(".unified-panel-body").css("overflow","hidden").html('<iframe src="'+a+'" frameborder="0" style="width: 100%; height: 100%;"/>')})}}).call(r,n(2))}]);
|
||||
webpackJsonp([4],[function(e,r,n){(function(e){var r=n(1),a=r,i=n(60).GalaxyApp,o=n(10),t=n(5),l=n(62);window.app=function(n,c){window.Galaxy=new i(n,c),Galaxy.debug("login app");var d=encodeURI(n.redirect);if(!n.show_welcome_with_login){var w=r.param({use_panels:"True",redirect:d});return void(window.location.href=Galaxy.root+"user/login?"+w)}var p=new l.PageLayoutView(e.extend(n,{el:"body",center:new o.CenterPanel({el:"#center"}),right:new o.RightPanel({title:t("Login required"),el:"#right"})}));a(function(){var e=r.param({redirect:d}),a=Galaxy.root+"user/login?"+e;p.render(),p.center.$("#galaxy_main").prop("src",n.welcome_url),p.right.$(".unified-panel-body").css("overflow","hidden").html('<iframe src="'+a+'" frameborder="0" style="width: 100%; height: 100%;"/>')})}}).call(r,n(2))}]);
|
||||
//# sourceMappingURL=login.bundled.js.map
|
||||
File diff suppressed because one or more lines are too long
@@ -1,2 +1,2 @@
|
||||
define([],function(){var a={_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)},_changeHideOriginals:function(){this.hideOriginals=this.$(".hide-originals").prop("checked")},_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())},_clickMoreHelp:function(a){a.stopPropagation(),this.$(".main-help").addClass("expanded"),this.$(".more-help").hide()},_clickLessHelp:function(a){a.stopPropagation(),this.$(".main-help").removeClass("expanded"),this.$(".more-help").show()},_toggleHelp:function(a){a.stopPropagation(),this.$(".main-help").toggleClass("expanded"),this.$(".more-help").toggle()},_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()},_cancelCreate:function(){"function"==typeof this.oncancel&&this.oncancel.call(this)},_clickCreate:function(){var a=this._getName();a?this.blocking||this.createList(a):this._validationWarning("name")},_setUpCommonSettings:function(){this.hideOriginals=!1},_renderFooter:function(){var a=this,b=this.$(".footer").empty().html(this.templates.footer());return _.each(this.footerSettings,function(b,c){this.$(c).prop("checked",a[b])}),"function"==typeof this.oncancel&&this.$(".cancel-create.btn").show(),b},_creatorTemplates:{main:_.template(['<div class="header flex-row no-flex"></div>','<div class="middle flex-row flex-row-container"></div>','<div class="footer flex-row no-flex"></div>'].join(""))}};return{CollectionCreatorMixin:a}});
|
||||
define([],function(){var a={_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)},_changeHideOriginals:function(){this.hideOriginals=this.$(".hide-originals").prop("checked")},_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())},_clickMoreHelp:function(a){a.stopPropagation(),this.$(".main-help").addClass("expanded"),this.$(".more-help").hide()},_clickLessHelp:function(a){a.stopPropagation(),this.$(".main-help").removeClass("expanded"),this.$(".more-help").show()},_toggleHelp:function(a){a.stopPropagation(),this.$(".main-help").toggleClass("expanded"),this.$(".more-help").toggle()},_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()},_cancelCreate:function(){"function"==typeof this.oncancel&&this.oncancel.call(this)},_clickCreate:function(){var a=this._getName();a?this.blocking||this.createList(a):this._validationWarning("name")},_setUpCommonSettings:function(a){this.hideOriginals=a.defaultHideSourceItems||!1},_renderFooter:function(){var a=this,b=this.$(".footer").empty().html(this.templates.footer());return _.each(this.footerSettings,function(b,c){this.$(c).prop("checked",a[b])}),"function"==typeof this.oncancel&&this.$(".cancel-create.btn").show(),b},_creatorTemplates:{main:_.template(['<div class="header flex-row no-flex"></div>','<div class="middle flex-row flex-row-container"></div>','<div class="footer flex-row no-flex"></div>'].join(""))}};return{CollectionCreatorMixin:a}});
|
||||
//# sourceMappingURL=../../../maps/mvc/collection/base-creator.js.map
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1,2 +1,2 @@
|
||||
define(["mvc/collection/list-collection-creator","mvc/history/hdca-model","mvc/base-mvc","utils/localization"],function(a,b,c,d){"use strict";function e(a){var b=a.toJSON(),c=j(b,{creationFn:function(b,c,d){return b=[{name:"forward",src:"hda",id:b[0].id},{name:"reverse",src:"hda",id:b[1].id}],a.createHDCA(b,"paired",c,d)}});return c}var f="collections",g=Backbone.View.extend(c.LoggableMixin).extend({_logNamespace:f,tagName:"li",className:"collection-element",initialize:function(a){this.element=a.element||{},this.identifier=a.identifier},render:function(){return this.$el.attr("data-element-id",this.element.id).html(this.template({identifier:this.identifier,element:this.element})),this},template:_.template(['<span class="identifier"><%- identifier %></span>','<span class="name"><%- element.name %></span>'].join("")),destroy:function(){this.off(),this.$el.remove()},toString:function(){return"DatasetCollectionElementView()"}}),h=a.ListCollectionCreator,i=h.extend({elementViewClass:g,collectionClass:b.HistoryPairDatasetCollection,className:"pair-collection-creator collection-creator flex-row-container",_mangleDuplicateNames:function(){},render:function(a,b){return 2===this.workingElements.length?h.prototype.render.call(this,a,b):this._renderInvalid(a,b)},_renderList:function(){var a=this,b=jQuery("<div/>"),c=a.$list();_.each(this.elementViews,function(b){b.destroy(),a.removeElementView(b)}),b.append(a._createForwardElementView().$el),b.append(a._createReverseElementView().$el),c.empty().append(b.children()),_.invoke(a.elementViews,"render")},_createForwardElementView:function(){return this._createElementView(this.workingElements[0],{identifier:"forward"})},_createReverseElementView:function(){return this._createElementView(this.workingElements[1],{identifier:"reverse"})},_createElementView:function(a,b){var c=new this.elementViewClass(_.extend(b,{element:a}));return this.elementViews.push(c),c},swap:function(){this.workingElements=[this.workingElements[1],this.workingElements[0]],this._renderList()},events:_.extend(_.clone(h.prototype.events),{"click .swap":"swap"}),templates:_.extend(_.clone(h.prototype.templates),{middle:_.template(['<div class="collection-elements-controls">','<a class="swap" href="javascript:void(0);" title="',d("Swap forward and reverse datasets"),'">',d("Swap"),"</a>","</div>",'<div class="collection-elements scroll-container flex-row">',"</div>"].join("")),helpContent:_.template(["<p>",d(["Pair collections are permanent collections containing two datasets: one forward and one reverse. ","Often these are forward and reverse reads. The pair collections can be passed to tools and ","workflows in order to have analyses done on both datasets. This interface allows ","you to create a pair, name it, and swap which is forward and which reverse."].join("")),"</p>","<ul>","<li>",d(['Click the <i data-target=".swap">"Swap"</i> link to make your forward dataset the reverse ',"and the reverse dataset forward."].join("")),"</li>","<li>",d(['Click the <i data-target=".cancel-create">"Cancel"</i> button to exit the interface.'].join("")),"</li>","</ul><br />","<p>",d(['Once your collection is complete, enter a <i data-target=".collection-name">name</i> and ','click <i data-target=".create-collection">"Create list"</i>.'].join("")),"</p>"].join("")),invalidInitial:_.template(['<div class="header flex-row no-flex">','<div class="alert alert-warning" style="display: block">','<span class="alert-message">',"<% if( _.size( problems ) ){ %>",d("The following selections could not be included due to problems"),"<ul><% _.each( problems, function( problem ){ %>","<li><b><%- problem.element.name %></b>: <%- problem.text %></li>","<% }); %></ul>","<% } else if( _.size( elements ) === 0 ){ %>",d("No datasets were selected"),".","<% } else if( _.size( elements ) === 1 ){ %>",d("Only one dataset was selected"),": <%- elements[0].name %>","<% } else if( _.size( elements ) > 2 ){ %>",d("Too many datasets were selected"),': <%- _.pluck( elements, "name" ).join( ", ") %>',"<% } %>","<br />",d("Two (and only two) elements are needed for the pair"),". ",d("You may need to "),'<a class="cancel-create" href="javascript:void(0)">',d("cancel"),"</a> ",d("and reselect new elements"),".","</span>","</div>","</div>",'<div class="footer flex-row no-flex">','<div class="actions clear vertically-spaced">','<div class="other-options pull-left">','<button class="cancel-create btn" tabindex="-1">',d("Cancel"),"</button>","</div>","</div>","</div>"].join(""))}),toString:function(){return"PairCollectionCreator"}}),j=function(b,c){return c=c||{},c.title=d("Create a collection from a pair of datasets"),a.collectionCreatorModal(b,c,i)};return{PairCollectionCreator:i,pairCollectionCreatorModal:j,createPairCollection:e}});
|
||||
define(["mvc/collection/list-collection-creator","mvc/history/hdca-model","mvc/base-mvc","utils/localization"],function(a,b,c,d){"use strict";function e(a,b){var c=a.toJSON(),d=j(c,{defaultHideSourceItems:b,creationFn:function(b,c,d){return b=[{name:"forward",src:"hda",id:b[0].id},{name:"reverse",src:"hda",id:b[1].id}],a.createHDCA(b,"paired",c,d)}});return d}var f="collections",g=Backbone.View.extend(c.LoggableMixin).extend({_logNamespace:f,tagName:"li",className:"collection-element",initialize:function(a){this.element=a.element||{},this.identifier=a.identifier},render:function(){return this.$el.attr("data-element-id",this.element.id).html(this.template({identifier:this.identifier,element:this.element})),this},template:_.template(['<span class="identifier"><%- identifier %></span>','<span class="name"><%- element.name %></span>'].join("")),destroy:function(){this.off(),this.$el.remove()},toString:function(){return"DatasetCollectionElementView()"}}),h=a.ListCollectionCreator,i=h.extend({elementViewClass:g,collectionClass:b.HistoryPairDatasetCollection,className:"pair-collection-creator collection-creator flex-row-container",_mangleDuplicateNames:function(){},render:function(a,b){return 2===this.workingElements.length?h.prototype.render.call(this,a,b):this._renderInvalid(a,b)},_renderList:function(){var a=this,b=jQuery("<div/>"),c=a.$list();_.each(this.elementViews,function(b){b.destroy(),a.removeElementView(b)}),b.append(a._createForwardElementView().$el),b.append(a._createReverseElementView().$el),c.empty().append(b.children()),_.invoke(a.elementViews,"render")},_createForwardElementView:function(){return this._createElementView(this.workingElements[0],{identifier:"forward"})},_createReverseElementView:function(){return this._createElementView(this.workingElements[1],{identifier:"reverse"})},_createElementView:function(a,b){var c=new this.elementViewClass(_.extend(b,{element:a}));return this.elementViews.push(c),c},swap:function(){this.workingElements=[this.workingElements[1],this.workingElements[0]],this._renderList()},events:_.extend(_.clone(h.prototype.events),{"click .swap":"swap"}),templates:_.extend(_.clone(h.prototype.templates),{middle:_.template(['<div class="collection-elements-controls">','<a class="swap" href="javascript:void(0);" title="',d("Swap forward and reverse datasets"),'">',d("Swap"),"</a>","</div>",'<div class="collection-elements scroll-container flex-row">',"</div>"].join("")),helpContent:_.template(["<p>",d(["Pair collections are permanent collections containing two datasets: one forward and one reverse. ","Often these are forward and reverse reads. The pair collections can be passed to tools and ","workflows in order to have analyses done on both datasets. This interface allows ","you to create a pair, name it, and swap which is forward and which reverse."].join("")),"</p>","<ul>","<li>",d(['Click the <i data-target=".swap">"Swap"</i> link to make your forward dataset the reverse ',"and the reverse dataset forward."].join("")),"</li>","<li>",d(['Click the <i data-target=".cancel-create">"Cancel"</i> button to exit the interface.'].join("")),"</li>","</ul><br />","<p>",d(['Once your collection is complete, enter a <i data-target=".collection-name">name</i> and ','click <i data-target=".create-collection">"Create list"</i>.'].join("")),"</p>"].join("")),invalidInitial:_.template(['<div class="header flex-row no-flex">','<div class="alert alert-warning" style="display: block">','<span class="alert-message">',"<% if( _.size( problems ) ){ %>",d("The following selections could not be included due to problems"),"<ul><% _.each( problems, function( problem ){ %>","<li><b><%- problem.element.name %></b>: <%- problem.text %></li>","<% }); %></ul>","<% } else if( _.size( elements ) === 0 ){ %>",d("No datasets were selected"),".","<% } else if( _.size( elements ) === 1 ){ %>",d("Only one dataset was selected"),": <%- elements[0].name %>","<% } else if( _.size( elements ) > 2 ){ %>",d("Too many datasets were selected"),': <%- _.pluck( elements, "name" ).join( ", ") %>',"<% } %>","<br />",d("Two (and only two) elements are needed for the pair"),". ",d("You may need to "),'<a class="cancel-create" href="javascript:void(0)">',d("cancel"),"</a> ",d("and reselect new elements"),".","</span>","</div>","</div>",'<div class="footer flex-row no-flex">','<div class="actions clear vertically-spaced">','<div class="other-options pull-left">','<button class="cancel-create btn" tabindex="-1">',d("Cancel"),"</button>","</div>","</div>","</div>"].join(""))}),toString:function(){return"PairCollectionCreator"}}),j=function(b,c){return c=c||{},c.title=d("Create a collection from a pair of datasets"),a.collectionCreatorModal(b,c,i)};return{PairCollectionCreator:i,pairCollectionCreatorModal:j,createPairCollection:e}});
|
||||
//# sourceMappingURL=../../../maps/mvc/collection/pair-collection-creator.js.map
|
||||
File diff suppressed because one or more lines are too long
@@ -0,0 +1,2 @@
|
||||
define(["utils/utils","mvc/upload/upload-model","mvc/upload/upload-settings","mvc/ui/ui-popover","mvc/ui/ui-select"],function(a,b,c,d){return Backbone.View.extend({status_classes:{init:"upload-icon-button fa fa-trash-o",queued:"upload-icon fa fa-spinner fa-spin",running:"upload-icon fa fa-spinner fa-spin",success:"upload-icon-button fa fa-check",error:"upload-icon-button fa fa-exclamation-triangle"},initialize:function(a,b){var c=this;this.app=a,this.model=b.model,this.setElement(this._template(b.model)),this.$mode=this.$(".upload-mode"),this.$title=this.$(".upload-title-extended"),this.$text=this.$(".upload-text"),this.$size=this.$(".upload-size"),this.$info_text=this.$(".upload-info-text"),this.$info_progress=this.$(".upload-info-progress"),this.$text_content=this.$(".upload-text-content"),this.$symbol=this.$(".upload-symbol"),this.$progress_bar=this.$(".upload-progress-bar"),this.$percentage=this.$(".upload-percentage"),this.settings=new d.View({title:"Upload configuration",container:this.$(".upload-settings"),placement:"bottom"});this.app.select_genome.value(),this.app.select_extension.value();this.$symbol.on("click",function(){c._removeRow()}),this.$text_content.on("change input",function(a){c.model.set({url_paste:$(a.target).val(),file_size:$(a.target).val().length})}),this.listenTo(this.model,"change:percentage",function(){c._refreshPercentage()}),this.listenTo(this.model,"change:status",function(){c._refreshStatus()}),this.listenTo(this.model,"change:info",function(){c._refreshInfo()}),this.listenTo(this.model,"change:file_size",function(){c._refreshFileSize()}),this.listenTo(this.model,"remove",function(){c.remove()}),this.app.collection.on("reset",function(){c.remove()})},render:function(){var b=this.model.attributes;this.$title.html(_.escape(b.file_name)),this.$size.html(a.bytesToString(b.file_size)),this.$mode.removeClass().addClass("upload-mode").addClass("text-primary"),"new"==b.file_mode?(this.$text.css({width:this.$el.width()-16+"px",top:this.$el.height()-8+"px"}).show(),this.$el.height(this.$el.height()-8+this.$text.height()+16),this.$mode.addClass("fa fa-edit")):"local"==b.file_mode?this.$mode.addClass("fa fa-laptop"):"ftp"==b.file_mode&&this.$mode.addClass("fa fa-folder-open-o")},_refreshInfo:function(){var a=this.model.get("info");a?this.$info_text.html("<strong>Failed: </strong>"+a).show():this.$info_text.hide()},_refreshPercentage:function(){var a=parseInt(this.model.get("percentage"));this.$progress_bar.css({width:a+"%"}),this.$percentage.html(100!=a?a+"%":"Adding to history...")},_refreshStatus:function(){var a=this.model.get("status");this.$symbol.removeClass().addClass("upload-symbol").addClass(this.status_classes[a]),this.model.set("enabled","init"==a);var b=this.model.get("enabled");this.$text_content.attr("disabled",!b),"success"==a&&(this.$el.addClass("success"),this.$percentage.html("100%")),"error"==a&&(this.$el.addClass("danger"),this.$info_progress.hide())},_refreshFileSize:function(){this.$size.html(a.bytesToString(this.model.get("file_size")))},_removeRow:function(){-1!==["init","success","error"].indexOf(this.model.get("status"))&&this.app.collection.remove(this.model)},_showSettings:function(){this.settings.visible?this.settings.hide():(this.settings.empty(),this.settings.append(new c(this).$el),this.settings.show())},_template:function(a){return'<tr id="upload-row-'+a.id+'" class="upload-row"><td><div class="upload-text-column"><div class="upload-mode"/><div class="upload-title-extended"/><div class="upload-text"><div class="upload-text-info">You can tell Galaxy to download data from web by entering URL in this box (one per line). You can also directly paste the contents of a file.</div><textarea class="upload-text-content form-control"/></div></div></td><td><div class="upload-size"/></td><td><div class="upload-info"><div class="upload-info-text"/><div class="upload-info-progress progress"><div class="upload-progress-bar progress-bar progress-bar-success"/><div class="upload-percentage">0%</div></div></div></td><td><div class="upload-symbol '+this.status_classes.init+'"/></td></tr>'}})});
|
||||
//# sourceMappingURL=../../../../maps/mvc/upload/collection/collection-row.js.map
|
||||
File diff suppressed because one or more lines are too long
@@ -1,2 +1,2 @@
|
||||
define(["utils/utils","mvc/ui/ui-modal","mvc/ui/ui-tabs","mvc/upload/upload-button","mvc/upload/default/default-view","mvc/upload/composite/composite-view"],function(a,b,c,d,e,f){return Backbone.View.extend({options:{nginx_upload_path:"",ftp_upload_site:"n/a",default_genome:"?",default_extension:"auto",height:500,width:900,auto:{id:"auto",text:"Auto-detect",description:"This system will try to detect the file type automatically. If your file is not detected properly as one of the known formats, it most likely means that it has some format problems (e.g., different number of columns on different rows). You can still coerce the system to set your data to the format you think it should be. You can also upload compressed files, which will automatically be decompressed."}},list_extensions:[],list_genomes:[],initialize:function(b){var c=this;this.options=a.merge(b,this.options),this.ui_button=new d.View({onclick:function(a){a.preventDefault(),c.show()},onunload:function(){var a=c.ui_button.model.get("percentage",0);return a>0&&100>a?"Several uploads are queued.":void 0}}),this.setElement(this.ui_button.$el);var c=this;a.get({url:Galaxy.root+"api/datatypes?extension_only=False",success:function(a){for(key in a)c.list_extensions.push({id:a[key].extension,text:a[key].extension,description:a[key].description,description_url:a[key].description_url,composite_files:a[key].composite_files});c.list_extensions.sort(function(a,b){var c=a.text&&a.text.toLowerCase(),d=b.text&&b.text.toLowerCase();return c>d?1:d>c?-1:0}),c.options.datatypes_disable_auto||c.list_extensions.unshift(c.options.auto)}}),a.get({url:Galaxy.root+"api/genomes",success:function(a){for(key in a)c.list_genomes.push({id:a[key][1],text:a[key][0]});c.list_genomes.sort(function(a,b){return a.id==c.options.default_genome?-1:b.id==c.options.default_genome?1:a.text>b.text?1:a.text<b.text?-1:0})}})},show:function(){var a=this;return Galaxy.currHistoryPanel&&Galaxy.currHistoryPanel.model?(this.current_user=Galaxy.user.id,this.modal||(this.tabs=new c.View,this.default_view=new e(this),this.tabs.add({id:"regular",title:"Regular",$el:this.default_view.$el}),this.composite_view=new f(this),this.tabs.add({id:"composite",title:"Composite",$el:this.composite_view.$el}),this.modal=new b.View({title:"Download from web or upload from disk",body:this.tabs.$el,height:this.options.height,width:this.options.width,closing_events:!0,title_separator:!1})),void this.modal.show()):void window.setTimeout(function(){a.show()},500)},currentHistory:function(){return this.current_user&&Galaxy.currHistoryPanel.model.get("id")},currentFtp:function(){return this.current_user&&this.options.ftp_upload_site},toData:function(a,b){var c={payload:{tool_id:"upload1",history_id:b||this.currentHistory(),inputs:{}},files:[],error_message:null};if(a&&a.length>0){var d={};d.dbkey=a[0].get("genome",null),d.file_type=a[0].get("extension",null);for(var e in a){var f=a[e];if(f.set("status","running"),!(f.get("file_size")>0)){c.error_message="Upload content incomplete.",f.set("status","error"),f.set("info",c.error_message);break}var g="files_"+e+"|";switch(d[g+"type"]="upload_dataset",d[g+"space_to_tab"]=f.get("space_to_tab")&&"Yes"||null,d[g+"to_posix_lines"]=f.get("to_posix_lines")&&"Yes"||null,f.get("file_mode")){case"new":d[g+"url_paste"]=f.get("url_paste");break;case"ftp":d[g+"ftp_files"]=f.get("file_path");break;case"local":c.files.push({name:g+"file_data",file:f.get("file_data")})}}c.payload.inputs=JSON.stringify(d)}return c}})});
|
||||
define(["utils/utils","mvc/ui/ui-modal","mvc/ui/ui-tabs","mvc/upload/upload-button","mvc/upload/default/default-view","mvc/upload/composite/composite-view","mvc/upload/collection/collection-view"],function(a,b,c,d,e,f,g){return Backbone.View.extend({options:{nginx_upload_path:"",ftp_upload_site:"n/a",default_genome:"?",default_extension:"auto",height:500,width:900,auto:{id:"auto",text:"Auto-detect",description:"This system will try to detect the file type automatically. If your file is not detected properly as one of the known formats, it most likely means that it has some format problems (e.g., different number of columns on different rows). You can still coerce the system to set your data to the format you think it should be. You can also upload compressed files, which will automatically be decompressed."}},list_extensions:[],list_genomes:[],initialize:function(b){var c=this;this.options=a.merge(b,this.options),this.ui_button=new d.View({onclick:function(a){a.preventDefault(),c.show()},onunload:function(){var a=c.ui_button.model.get("percentage",0);return a>0&&100>a?"Several uploads are queued.":void 0}}),this.setElement(this.ui_button.$el);var c=this;a.get({url:Galaxy.root+"api/datatypes?extension_only=False",success:function(a){for(key in a)c.list_extensions.push({id:a[key].extension,text:a[key].extension,description:a[key].description,description_url:a[key].description_url,composite_files:a[key].composite_files});c.list_extensions.sort(function(a,b){var c=a.text&&a.text.toLowerCase(),d=b.text&&b.text.toLowerCase();return c>d?1:d>c?-1:0}),c.options.datatypes_disable_auto||c.list_extensions.unshift(c.options.auto)}}),a.get({url:Galaxy.root+"api/genomes",success:function(a){for(key in a)c.list_genomes.push({id:a[key][1],text:a[key][0]});c.list_genomes.sort(function(a,b){return a.id==c.options.default_genome?-1:b.id==c.options.default_genome?1:a.text>b.text?1:a.text<b.text?-1:0})}})},show:function(){var a=this;return Galaxy.currHistoryPanel&&Galaxy.currHistoryPanel.model?(this.current_user=Galaxy.user.id,this.modal||(this.tabs=new c.View,this.default_view=new e(this),this.tabs.add({id:"regular",title:"Regular",$el:this.default_view.$el}),this.composite_view=new f(this),this.tabs.add({id:"composite",title:"Composite",$el:this.composite_view.$el}),this.collection_view=new g(this),this.tabs.add({id:"collection",title:"Collection",$el:this.collection_view.$el}),this.modal=new b.View({title:"Download from web or upload from disk",body:this.tabs.$el,height:this.options.height,width:this.options.width,closing_events:!0,title_separator:!1})),void this.modal.show()):void window.setTimeout(function(){a.show()},500)},currentHistory:function(){return this.current_user&&Galaxy.currHistoryPanel.model.get("id")},currentFtp:function(){return this.current_user&&this.options.ftp_upload_site},toData:function(a,b){var c={payload:{tool_id:"upload1",history_id:b||this.currentHistory(),inputs:{}},files:[],error_message:null};if(a&&a.length>0){var d={};d.dbkey=a[0].get("genome",null),d.file_type=a[0].get("extension",null);for(var e in a){var f=a[e];if(f.set("status","running"),!(f.get("file_size")>0)){c.error_message="Upload content incomplete.",f.set("status","error"),f.set("info",c.error_message);break}var g="files_"+e+"|";switch(d[g+"type"]="upload_dataset",d[g+"space_to_tab"]=f.get("space_to_tab")&&"Yes"||null,d[g+"to_posix_lines"]=f.get("to_posix_lines")&&"Yes"||null,f.get("file_mode")){case"new":d[g+"url_paste"]=f.get("url_paste");break;case"ftp":d[g+"ftp_files"]=f.get("file_path");break;case"local":c.files.push({name:g+"file_data",file:f.get("file_data")})}}c.payload.inputs=JSON.stringify(d)}return c}})});
|
||||
//# sourceMappingURL=../../../maps/mvc/upload/upload-view.js.map
|
||||
File diff suppressed because one or more lines are too long
@@ -233,11 +233,22 @@ class NavigatesGalaxy(HasDriver):
|
||||
confirm=confirm
|
||||
))
|
||||
self.click_xpath(self.navigation_data["selectors"]["registrationPage"]["submit_xpath"])
|
||||
# Give the browser a bit of time to submit the request.
|
||||
time.sleep(.25)
|
||||
|
||||
if assert_valid:
|
||||
self.home()
|
||||
self.click_masthead_user()
|
||||
user_email_element = self.wait_for_xpath_visible(self.navigation_data["selectors"]["masthead"]["userMenu"]["userEmail_xpath"])
|
||||
# Make sure the user menu was dropped down
|
||||
user_menu = self.wait_for_selector_visible("ul.nav#user .dropdown-menu")
|
||||
try:
|
||||
user_email_element = self.wait_for_xpath_visible(self.navigation_data["selectors"]["masthead"]["userMenu"]["userEmail_xpath"])
|
||||
except self.TimeoutException as e:
|
||||
menu_items = user_menu.find_elements_by_css_selector("li a")
|
||||
menu_text = [mi.text for mi in menu_items]
|
||||
message = "Failed to find logged in message in menu items %s" % ", ".join(menu_text)
|
||||
raise self.prepend_timeout_message(e, message)
|
||||
|
||||
text = user_email_element.text
|
||||
assert email in text
|
||||
assert self.get_logged_in_user()["email"] == email
|
||||
@@ -252,23 +263,12 @@ class NavigatesGalaxy(HasDriver):
|
||||
|
||||
def perform_upload(self, test_path, ext=None, genome=None, ext_all=None, genome_all=None):
|
||||
self.home()
|
||||
self.upload_start_click()
|
||||
|
||||
upload_button = self.wait_for_selector_clickable(".upload-button")
|
||||
upload_button.click()
|
||||
self.upload_set_footer_extension(ext_all)
|
||||
self.upload_set_footer_genome(genome_all)
|
||||
|
||||
if ext_all is not None:
|
||||
self.wait_for_selector_visible('.upload-footer-extension')
|
||||
self.select2_set_value(".upload-footer-extension", ext_all)
|
||||
|
||||
if genome_all is not None:
|
||||
self.wait_for_selector_visible('.upload-footer-genome')
|
||||
self.select2_set_value(".upload-footer-genome", genome_all)
|
||||
|
||||
local_upload_button = self.wait_for_selector_clickable("button#btn-local")
|
||||
local_upload_button.click()
|
||||
|
||||
file_upload = self.wait_for_selector('input[type="file"]')
|
||||
file_upload.send_keys(test_path)
|
||||
self.upload_queue_local_file(test_path)
|
||||
|
||||
if ext is not None:
|
||||
self.wait_for_selector_visible('.upload-extension')
|
||||
@@ -278,12 +278,105 @@ class NavigatesGalaxy(HasDriver):
|
||||
self.wait_for_selector_visible('.upload-genome')
|
||||
self.select2_set_value(".upload-genome", genome)
|
||||
|
||||
start_button = self.wait_for_selector_clickable("button#btn-start")
|
||||
start_button.click()
|
||||
self.upload_start()
|
||||
|
||||
close_button = self.wait_for_selector_clickable("button#btn-close")
|
||||
close_button.click()
|
||||
|
||||
def upload_list(self, test_paths, name="test", ext=None, genome=None, hide_source_items=True):
|
||||
self._collection_upload_start(test_paths, ext, genome, "List")
|
||||
if not hide_source_items:
|
||||
self.collection_builder_hide_originals()
|
||||
|
||||
self.collection_builder_set_name(name)
|
||||
self.collection_builder_create()
|
||||
|
||||
def upload_pair(self, test_paths, name="test", ext=None, genome=None, hide_source_items=True):
|
||||
self._collection_upload_start(test_paths, ext, genome, "Pair")
|
||||
if not hide_source_items:
|
||||
self.collection_builder_hide_originals()
|
||||
|
||||
self.collection_builder_set_name(name)
|
||||
self.collection_builder_create()
|
||||
|
||||
def upload_paired_list(self, test_paths, name="test", ext=None, genome=None, hide_source_items=True):
|
||||
self._collection_upload_start(test_paths, ext, genome, "List of Pairs")
|
||||
if not hide_source_items:
|
||||
self.collection_builder_hide_originals()
|
||||
|
||||
self.collection_builder_clear_filters()
|
||||
# TODO: generalize and loop these clicks so we don't need the assert
|
||||
assert len(test_paths) == 2
|
||||
self.collection_builder_click_paired_item("forward", 0)
|
||||
self.collection_builder_click_paired_item("reverse", 1)
|
||||
|
||||
self.collection_builder_set_name(name)
|
||||
self.collection_builder_create()
|
||||
|
||||
def _collection_upload_start(self, test_paths, ext, genome, collection_type):
|
||||
# Perform upload of files and open the collection builder for specified
|
||||
# type.
|
||||
self.home()
|
||||
self.upload_start_click()
|
||||
self.upload_tab_click("collection")
|
||||
|
||||
self.upload_set_footer_extension(ext, tab_id="collection")
|
||||
self.upload_set_footer_genome(genome, tab_id="collection")
|
||||
self.upload_set_collection_type(collection_type)
|
||||
|
||||
for test_path in test_paths:
|
||||
self.upload_queue_local_file(test_path, tab_id="collection")
|
||||
|
||||
self.upload_start(tab_id="collection")
|
||||
self.upload_build()
|
||||
|
||||
@retry_during_transitions
|
||||
def upload_tab_click(self, tab):
|
||||
tab_tag_id = "#tab-title-link-%s" % tab
|
||||
tab_element = self.wait_for_selector_clickable(tab_tag_id)
|
||||
tab_element.click()
|
||||
|
||||
@retry_during_transitions
|
||||
def upload_start_click(self):
|
||||
upload_button = self.wait_for_selector_clickable(".upload-button")
|
||||
upload_button.click()
|
||||
|
||||
@retry_during_transitions
|
||||
def upload_set_footer_extension(self, ext, tab_id="regular"):
|
||||
if ext is not None:
|
||||
selector = 'div#%s .upload-footer-extension' % tab_id
|
||||
self.wait_for_selector_visible(selector)
|
||||
self.select2_set_value(selector, ext)
|
||||
|
||||
@retry_during_transitions
|
||||
def upload_set_footer_genome(self, genome, tab_id="regular"):
|
||||
if genome is not None:
|
||||
selector = 'div#%s .upload-footer-genome' % tab_id
|
||||
self.wait_for_selector_visible(selector)
|
||||
self.select2_set_value(selector, genome)
|
||||
|
||||
@retry_during_transitions
|
||||
def upload_set_collection_type(self, collection_type):
|
||||
self.wait_for_selector_visible(".upload-footer-collection-type")
|
||||
self.select2_set_value(".upload-footer-collection-type", collection_type)
|
||||
|
||||
@retry_during_transitions
|
||||
def upload_start(self, tab_id="regular"):
|
||||
start_button = self.wait_for_selector_clickable("div#%s button#btn-start" % tab_id)
|
||||
start_button.click()
|
||||
|
||||
@retry_during_transitions
|
||||
def upload_build(self):
|
||||
start_button = self.wait_for_selector_clickable("div#collection button#btn-build")
|
||||
start_button.click()
|
||||
|
||||
def upload_queue_local_file(self, test_path, tab_id="regular"):
|
||||
local_upload_button = self.wait_for_selector_clickable("div#%s button#btn-local" % tab_id)
|
||||
local_upload_button.click()
|
||||
|
||||
file_upload = self.wait_for_selector('div#%s input[type="file"]' % tab_id)
|
||||
file_upload.send_keys(test_path)
|
||||
|
||||
def workflow_index_open(self):
|
||||
self.home()
|
||||
self.click_masthead_workflow()
|
||||
@@ -347,6 +440,14 @@ class NavigatesGalaxy(HasDriver):
|
||||
def click_button_new_workflow(self):
|
||||
self.click_selector(self.navigation_data["selectors"]["workflows"]["new_button"])
|
||||
|
||||
def wait_for_sizzle_selector_clickable(self, selector):
|
||||
element = self._wait_on(
|
||||
sizzle.sizzle_selector_clickable(selector),
|
||||
"sizzle/jQuery selector [%s] to become clickable" % selector,
|
||||
)
|
||||
return element
|
||||
|
||||
@retry_during_transitions
|
||||
def click_history_options(self):
|
||||
history_options_button_selector = self.test_data["historyOptions"]["selectors"]["button"]
|
||||
history_options_element = self.wait_for_selector(history_options_button_selector)
|
||||
@@ -364,8 +465,9 @@ class NavigatesGalaxy(HasDriver):
|
||||
|
||||
# Click labelled option
|
||||
menu_selector = self.history_options_menu_selector()
|
||||
menu_element = self.wait_for_selector(menu_selector)
|
||||
menu_selection_element = menu_element.find_element_by_xpath('//ul[@id="history-options-button-menu"]/li/a[text()[contains(.,"%s")]]' % option_label)
|
||||
self.wait_for_selector_visible(menu_selector)
|
||||
menu_item_sizzle_selector = '#history-options-button-menu > li > a:contains("%s")' % option_label
|
||||
menu_selection_element = self.wait_for_sizzle_selector_clickable(menu_item_sizzle_selector)
|
||||
menu_selection_element.click()
|
||||
|
||||
def history_options_menu_selector(self):
|
||||
@@ -470,6 +572,17 @@ class NavigatesGalaxy(HasDriver):
|
||||
create_element = self.wait_for_selector_clickable("button.create-collection")
|
||||
create_element.click()
|
||||
|
||||
@retry_during_transitions
|
||||
def collection_builder_clear_filters(self):
|
||||
clear_filter_link = self.wait_for_selector_visible("a.clear-filters-link")
|
||||
clear_filter_link.click()
|
||||
|
||||
def collection_builder_click_paired_item(self, forward_or_reverse, item):
|
||||
assert forward_or_reverse in ["forward", "reverse"]
|
||||
forward_column = self.wait_for_selector_visible(".%s-column .column-datasets" % forward_or_reverse)
|
||||
first_datset_forward = forward_column.find_elements_by_css_selector("li")[item]
|
||||
first_datset_forward.click()
|
||||
|
||||
def logout_if_needed(self):
|
||||
if self.is_logged_in():
|
||||
self.home()
|
||||
|
||||
@@ -61,17 +61,9 @@ class CollectionBuildersTestCase(SeleniumTestCase):
|
||||
self.history_panel_muli_operation_select_hid(2)
|
||||
self.history_panel_multi_operation_action_click("Build List of Dataset Pairs")
|
||||
|
||||
clear_filter_link = self.wait_for_selector_visible("a.clear-filters-link")
|
||||
clear_filter_link.click()
|
||||
|
||||
forward_column = self.wait_for_selector_visible(".forward-column .column-datasets")
|
||||
first_datset_forward = forward_column.find_elements_by_css_selector("li")[0]
|
||||
first_datset_forward.click()
|
||||
|
||||
reverse_column = self.wait_for_selector_visible(".reverse-column .column-datasets")
|
||||
second_dataset_reverse = reverse_column.find_elements_by_css_selector("li")[1]
|
||||
second_dataset_reverse.click()
|
||||
|
||||
self.collection_builder_clear_filters()
|
||||
self.collection_builder_click_paired_item("forward", 0)
|
||||
self.collection_builder_click_paired_item("reverse", 1)
|
||||
self.collection_builder_set_name("my awesome paired list")
|
||||
|
||||
self.collection_builder_create()
|
||||
|
||||
@@ -56,3 +56,51 @@ class UploadsTestCase(SeleniumTestCase, UsesHistoryItemAssertions):
|
||||
|
||||
self.history_panel_click_item_title(hid=1, wait=True)
|
||||
self.assert_item_dbkey_displayed_as(1, "hg18")
|
||||
|
||||
@selenium_test
|
||||
def test_upload_list(self):
|
||||
self.upload_list([self.get_filename("1.tabular")], name="Test List")
|
||||
self.history_panel_wait_for_hid_ok(2)
|
||||
# Make sure modals disappeared - both List creator (TODO: upload).
|
||||
self.wait_for_selector_absent_or_hidden(".collection-creator")
|
||||
|
||||
self.assert_item_name(2, "Test List")
|
||||
|
||||
# Make sure source item is hidden when the collection is created.
|
||||
self.history_panel_wait_for_hid_hidden(1)
|
||||
|
||||
@selenium_test
|
||||
def test_upload_pair(self):
|
||||
self.upload_list([self.get_filename("1.tabular"), self.get_filename("2.tabular")], name="Test Pair")
|
||||
self.history_panel_wait_for_hid_ok(3)
|
||||
# Make sure modals disappeared - both collection creator (TODO: upload).
|
||||
self.wait_for_selector_absent_or_hidden(".collection-creator")
|
||||
|
||||
self.assert_item_name(3, "Test Pair")
|
||||
|
||||
# Make sure source items are hidden when the collection is created.
|
||||
self.history_panel_wait_for_hid_hidden(1)
|
||||
self.history_panel_wait_for_hid_hidden(2)
|
||||
|
||||
@selenium_test
|
||||
def test_upload_pair_specify_extension(self):
|
||||
self.upload_list([self.get_filename("1.tabular"), self.get_filename("2.tabular")], name="Test Pair", ext="txt", hide_source_items=False)
|
||||
self.history_panel_wait_for_hid_ok(3)
|
||||
self.history_panel_wait_for_hid_ok(1)
|
||||
|
||||
history_contents = self.current_history_contents()
|
||||
hda = history_contents[0]
|
||||
assert hda["name"] == '1.tabular'
|
||||
assert hda["extension"] == "txt", hda
|
||||
|
||||
@selenium_test
|
||||
def test_upload_paired_list(self):
|
||||
self.upload_paired_list([self.get_filename("1.tabular"), self.get_filename("2.tabular")], name="Test Paired List")
|
||||
self.history_panel_wait_for_hid_ok(3)
|
||||
# Make sure modals disappeared - both collection creator (TODO: upload).
|
||||
self.wait_for_selector_absent_or_hidden(".collection-creator")
|
||||
self.assert_item_name(3, "Test Paired List")
|
||||
|
||||
# Make sure source items are hidden when the collection is created.
|
||||
self.history_panel_wait_for_hid_hidden(1)
|
||||
self.history_panel_wait_for_hid_hidden(2)
|
||||
|
||||
@@ -164,15 +164,18 @@ class TestRepositoryDependencies( ShedTwillTestCase ):
|
||||
self.display_installed_repository_manage_page( installed_convert_repository,
|
||||
strings_displayed=strings_displayed )
|
||||
|
||||
def test_0045_uninstall_and_verify_tool_panel_sections( self ):
|
||||
'''uninstall both and verify tool panel sections'''
|
||||
installed_convert_repository = self.test_db_util.get_installed_repository_by_name_owner( convert_repository_name,
|
||||
common.test_user_1_name )
|
||||
installed_column_repository = self.test_db_util.get_installed_repository_by_name_owner( column_repository_name,
|
||||
common.test_user_1_name )
|
||||
self.uninstall_repository( installed_convert_repository )
|
||||
self.uninstall_repository( installed_column_repository )
|
||||
self.test_db_util.ga_refresh( installed_convert_repository )
|
||||
self.test_db_util.ga_refresh( installed_column_repository )
|
||||
self.check_galaxy_repository_tool_panel_section( installed_column_repository, 'new_column_maker' )
|
||||
self.check_galaxy_repository_tool_panel_section( installed_convert_repository, 'new_convert_chars' )
|
||||
# The following check fails somewhere around 5% of the time maybe on Jenkins.
|
||||
# https://jenkins.galaxyproject.org/job/docker-toolshed/5578/
|
||||
# https://jenkins.galaxyproject.org/job/docker-toolshed/5198/
|
||||
# def test_0045_uninstall_and_verify_tool_panel_sections( self ):
|
||||
# '''uninstall both and verify tool panel sections'''
|
||||
# installed_convert_repository = self.test_db_util.get_installed_repository_by_name_owner( convert_repository_name,
|
||||
# common.test_user_1_name )
|
||||
# installed_column_repository = self.test_db_util.get_installed_repository_by_name_owner( column_repository_name,
|
||||
# common.test_user_1_name )
|
||||
# self.uninstall_repository( installed_convert_repository )
|
||||
# self.uninstall_repository( installed_column_repository )
|
||||
# self.test_db_util.ga_refresh( installed_convert_repository )
|
||||
# self.test_db_util.ga_refresh( installed_column_repository )
|
||||
# self.check_galaxy_repository_tool_panel_section( installed_column_repository, 'new_column_maker' )
|
||||
# self.check_galaxy_repository_tool_panel_section( installed_convert_repository, 'new_convert_chars' )
|
||||
|
||||
Reference in New Issue
Block a user