diff --git a/client/galaxy/scripts/mvc/ui/ui-select-default.js b/client/galaxy/scripts/mvc/ui/ui-select-default.js index fda11eed1a8..61bc233be07 100644 --- a/client/galaxy/scripts/mvc/ui/ui-select-default.js +++ b/client/galaxy/scripts/mvc/ui/ui-select-default.js @@ -208,6 +208,7 @@ var View = Backbone.View.extend({ if (this.options.searchable) { this.$select.select2('destroy'); this.$select.select2(); + this.$( '.select2-container .select2-search input' ).off( 'blur' ); } // set previous value diff --git a/client/grunt-tasks/style.js b/client/grunt-tasks/style.js index 02d1f5fed19..47be772bf8d 100644 --- a/client/grunt-tasks/style.js +++ b/client/grunt-tasks/style.js @@ -32,16 +32,19 @@ module.exports = function( grunt ){ 'history-buttons': { src: fmt( '%s/history-buttons/*.png', imagesPath ), destImg: fmt( '%s/sprite-history-buttons.png', styleDistPath ), + imgPath: fmt( 'sprite-history-buttons.png' ), destCSS: fmt( '%s/sprite-history-buttons.less', lessPath ) }, 'history-states': { src: fmt( '%s/history-states/*.png', imagesPath ), destImg: fmt( '%s/sprite-history-states.png', styleDistPath ), + imgPath: fmt( 'sprite-history-states.png' ), destCSS: fmt( '%s/sprite-history-states.less', lessPath ) }, 'fugue': { src: fmt( '%s/fugue/*.png', imagesPath ), destImg: fmt( '%s/sprite-fugue.png', styleDistPath ), + imgPath: fmt( 'sprite-fugue.png' ), destCSS: fmt( '%s/sprite-fugue.less', lessPath ) } }); diff --git a/config/galaxy.ini.sample b/config/galaxy.ini.sample index c9be8ab844a..8b956a924bf 100644 --- a/config/galaxy.ini.sample +++ b/config/galaxy.ini.sample @@ -350,8 +350,9 @@ paste.app_factory = galaxy.web.buildapp:app_factory # If your SMTP server requires SSL from the beginning of the connection # smtp_ssl = False -# On the user registration form, users may choose to join the mailing list. -# This is the address of the list they'll be subscribed to. +# On the user registration form, users may choose to join a mailing list. This +# is the address used to subscribe to the list. Uncomment and leave empty if you +# want to remove this option from the user registration form. #mailing_join_addr = galaxy-announce-join@bx.psu.edu # Datasets in an error state include a link to report the error. Those reports diff --git a/lib/galaxy/managers/workflows.py b/lib/galaxy/managers/workflows.py index d4cd0ebdc9c..7f4ef608f19 100644 --- a/lib/galaxy/managers/workflows.py +++ b/lib/galaxy/managers/workflows.py @@ -585,8 +585,8 @@ class WorkflowContentsManager(UsesAnnotations): yield step_dict def __module_from_dict( self, trans, step_dict, secure ): - """ Create a WorkflowStep model object and corrsponding module representing - type-specific functionality from the incoming dicitionary. + """ Create a WorkflowStep model object and corresponding module + representing type-specific functionality from the incoming dictionary. """ step = model.WorkflowStep() # TODO: Consider handling position inside module. diff --git a/lib/galaxy/tools/test.py b/lib/galaxy/tools/test.py index babdcb84fe2..07837255dc2 100644 --- a/lib/galaxy/tools/test.py +++ b/lib/galaxy/tools/test.py @@ -71,9 +71,8 @@ class ToolTestBuilder( object ): # No explicit value for param in test case, determine from default query_value = test_param.checked else: - # Test case supplied value, check cases against this. - query_value = string_as_bool( declared_value ) - matches_declared_value = lambda case_value: string_as_bool(case_value) == query_value + query_value = _process_bool_param_value( test_param, declared_value ) + matches_declared_value = lambda case_value: _process_bool_param_value( test_param, case_value ) == query_value elif isinstance(test_param, galaxy.tools.parameters.basic.SelectToolParameter): if declared_value is not None: # Test case supplied explicit value to check against. @@ -166,7 +165,8 @@ class ToolTestBuilder( object ): # as a new instance with value defined and hence enter # an infinite loop - hence the "case_value is not None" # check. - expanded_inputs[ case_context.for_state() ] = expanded_case_value + processed_value = _process_simple_value( value.test_param, expanded_case_value ) + expanded_inputs[ case_context.for_state() ] = processed_value elif isinstance( value, galaxy.tools.parameters.grouping.Section ): context = ParamContext( name=value.name, parent_context=parent_context ) for r_name, r_value in value.inputs.iteritems(): @@ -203,33 +203,8 @@ class ToolTestBuilder( object ): for ( name, value, extra ) in collection_def.collect_inputs(): require_file( name, value, extra, self.required_files ) processed_value = collection_def - elif isinstance( value, galaxy.tools.parameters.basic.SelectToolParameter ) and hasattr( value, 'static_options' ): - # Tests may specify values as either raw value or the value - # as they appear in the list - the API doesn't and shouldn't - # accept the text value - so we need to convert the text - # into the form value. - def process_param_value( param_value ): - found_value = False - value_for_text = None - if value.static_options: - for (text, opt_value, selected) in value.static_options: - if param_value == opt_value: - found_value = True - if value_for_text is None and param_value == text: - value_for_text = opt_value - if not found_value and value_for_text is not None: - processed_value = value_for_text - else: - processed_value = param_value - return processed_value - # Do replacement described above for lists or singleton - # values. - if isinstance( param_value, list ): - processed_value = map( process_param_value, param_value ) - else: - processed_value = process_param_value( param_value ) else: - processed_value = param_value + processed_value = _process_simple_value( value, param_value ) expanded_inputs[ context.for_state() ] = processed_value return expanded_inputs @@ -240,6 +215,54 @@ class ToolTestBuilder( object ): return require_file( name, value, extra, self.required_files ) +def _process_simple_value( param, param_value ): + if isinstance( param, galaxy.tools.parameters.basic.SelectToolParameter ) and hasattr( param, 'static_options' ): + # Tests may specify values as either raw value or the value + # as they appear in the list - the API doesn't and shouldn't + # accept the text value - so we need to convert the text + # into the form value. + def process_param_value( param_value ): + found_value = False + value_for_text = None + if param.static_options: + for (text, opt_value, selected) in param.static_options: + if param_value == opt_value: + found_value = True + if value_for_text is None and param_value == text: + value_for_text = opt_value + if not found_value and value_for_text is not None: + processed_value = value_for_text + else: + processed_value = param_value + return processed_value + # Do replacement described above for lists or singleton + # values. + if isinstance( param_value, list ): + processed_value = map( process_param_value, param_value ) + else: + processed_value = process_param_value( param_value ) + elif isinstance( param, galaxy.tools.parameters.basic.BooleanToolParameter ): + # Like above, tests may use the tool define values of simply + # true/false. + processed_value = _process_bool_param_value( param, param_value ) + else: + processed_value = param_value + return processed_value + + +def _process_bool_param_value( param, param_value ): + assert isinstance( param, galaxy.tools.parameters.basic.BooleanToolParameter ) + if isinstance( param_value, list ): + param_value = param_value[0] + if param.truevalue == param_value: + processed_value = True + elif param.falsevalue == param_value: + processed_value = False + else: + processed_value = string_as_bool( param_value ) + return processed_value + + @nottest def test_data_iter( required_files ): for fname, extra in required_files: diff --git a/static/maps/mvc/ui/ui-select-default.js.map b/static/maps/mvc/ui/ui-select-default.js.map index dd589a69328..9d1e91c997a 100644 --- a/static/maps/mvc/ui/ui-select-default.js.map +++ b/static/maps/mvc/ui/ui-select-default.js.map @@ -1 +1 @@ -{"version":3,"file":"ui-select-default.js","sources":["../../../src/mvc/ui/ui-select-default.js"],"names":["define","Utils","ButtonCheck","View","Backbone","extend","optionsDefault","id","uid","cls","error_text","empty_text","visible","wait","multiple","searchable","optional","initialize","options","self","this","merge","setElement","_template","$select","$el","find","$icon","$button","all_button","onclick","new_value","value","_availableOptions","trigger","prepend","addClass","prop","remove","update","data","undefined","hide","show","on","onchange","exists","val","select2","current","_getValue","$","isArray","length","_size","first","text","unwait","removeClass","disabled","is","enable","disable","append","_templateOption","label","key","setOnChange","callback","validate","available","each","i","e","push","attr"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"ui-select-default.js","sources":["../../../src/mvc/ui/ui-select-default.js"],"names":["define","Utils","ButtonCheck","View","Backbone","extend","optionsDefault","id","uid","cls","error_text","empty_text","visible","wait","multiple","searchable","optional","initialize","options","self","this","merge","setElement","_template","$select","$el","find","$icon","$button","all_button","onclick","new_value","value","_availableOptions","trigger","prepend","addClass","prop","remove","update","data","undefined","hide","show","on","onchange","exists","val","select2","current","_getValue","$","isArray","length","_size","first","text","unwait","removeClass","disabled","is","enable","disable","append","_templateOption","label","key","off","setOnChange","callback","validate","available","each","i","e","push","attr"],"mappings":"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"} \ No newline at end of file diff --git a/static/scripts/mvc/ui/ui-select-default.js b/static/scripts/mvc/ui/ui-select-default.js index 06f3126396d..5b63052ee10 100644 --- a/static/scripts/mvc/ui/ui-select-default.js +++ b/static/scripts/mvc/ui/ui-select-default.js @@ -1,2 +1,2 @@ -define(["utils/utils","mvc/ui/ui-button-check"],function(a,b){var c=Backbone.View.extend({optionsDefault:{id:a.uid(),cls:"ui-select",error_text:"No data available",empty_text:"No selection",visible:!0,wait:!1,multiple:!1,searchable:!0,optional:!1},initialize:function(c){var d=this;this.options=a.merge(c,this.optionsDefault),this.setElement(this._template(this.options)),this.$select=this.$el.find(".select"),this.$icon=this.$el.find(".icon"),this.$button=this.$el.find(".button"),this.options.multiple&&(this.options.searchable&&(this.all_button=new b({onclick:function(){var a=[];0!==d.all_button.value()&&(a=d._availableOptions()),d.value(a),d.trigger("change")}}),this.$el.prepend(this.all_button.$el)),this.$el.addClass("ui-select-multiple"),this.$select.prop("multiple",!0),this.$button.remove()),this.update(this.options.data),void 0!==this.options.value&&this.value(this.options.value),this.options.visible||this.hide(),this.options.wait?this.wait():this.show(),this.$select.on("change",function(){d.trigger("change")}),this.on("change",function(){d.options.onchange&&d.options.onchange(this.value())})},value:function(a){void 0!==a&&(null===a&&(a="__null__"),(this.exists(a)||this.options.multiple)&&(this.$select.val(a),this.$select.select2&&this.$select.select2("val",a)));var b=this._getValue();return this.all_button&&this.all_button.value($.isArray(b)&&b.length||0,this._size()),b},first:function(){var a=this.$select.find("option").first();return a.length>0?a.val():null},text:function(){return this.$select.find("option:selected").text()},show:function(){this.unwait(),this.$select.show(),this.$el.show()},hide:function(){this.$el.hide()},wait:function(){this.$icon.removeClass(),this.$icon.addClass("fa fa-spinner fa-spin")},unwait:function(){this.$icon.removeClass(),this.$icon.addClass("fa fa-caret-down")},disabled:function(){return this.$select.is(":disabled")},enable:function(){this.$select.prop("disabled",!1)},disable:function(){this.$select.prop("disabled",!0)},update:function(a){var b=this._getValue();this.$select.find("option").remove(),!this.options.multiple&&this.options.optional&&this.$select.append(this._templateOption({value:"__null__",label:this.options.empty_text}));for(var c in a)this.$select.append(this._templateOption(a[c]));0==this._size()?(this.disable(),this.$select.append(this._templateOption({value:"__null__",label:this.options.error_text}))):this.enable(),this.options.searchable&&(this.$select.select2("destroy"),this.$select.select2()),this.value(b),null!==this._getValue()||this.options.multiple&&this.options.optional||this.value(this.first())},setOnChange:function(a){this.options.onchange=a},exists:function(a){return this.$select.find('option[value="'+a+'"]').length>0},_getValue:function(){var b=this.$select.val();return a.validate(b)?b:null},_availableOptions:function(){var a=[];return this.$select.find("option").each(function(b,c){a.push($(c).attr("value"))}),a},_size:function(){return this.$select.find("option").length},_templateOption:function(a){return'"},_template:function(a){return'
'}});return{View:c}}); //# sourceMappingURL=../../../maps/mvc/ui/ui-select-default.js.map \ No newline at end of file diff --git a/static/style/blue/base.css b/static/style/blue/base.css index 6aab8aef859..215bd179b41 100644 --- a/static/style/blue/base.css +++ b/static/style/blue/base.css @@ -2159,25 +2159,25 @@ div.historyItem .historyItemTitle{font-weight:bold;line-height:16px} .historyItemContainer:last-child div.historyItem{border-bottom:solid #bfbfbf 1px} div.historyItem div.historyItem{margin-right:-11px} div.historyItem-ok,div.historyItem-failed_metadata{background:#aff1af}div.historyItem-ok .state-icon,div.historyItem-failed_metadata .state-icon{display:none} -div.historyItem-error{background:#f9c7c5}div.historyItem-error .state-icon{background-image:url(../../../../../static/style/blue/sprite-history-states.png);background-position:0px -15px;width:15px;height:15px;height:15px} -div.historyItem-empty{background:#f9c7c5}div.historyItem-empty .state-icon{background-image:url(../../../../../static/style/blue/sprite-history-states.png);background-position:0px 0px;width:15px;height:15px;height:15px} +div.historyItem-error{background:#f9c7c5}div.historyItem-error .state-icon{background-image:url(sprite-history-states.png);background-position:0px -15px;width:15px;height:15px;height:15px} +div.historyItem-empty{background:#f9c7c5}div.historyItem-empty .state-icon{background-image:url(sprite-history-states.png);background-position:0px 0px;width:15px;height:15px;height:15px} div.historyItem-running{background:#ffc}div.historyItem-running .state-icon{background-image:url(data_running.gif)} div.historyItem-setting_metadata{background:#ffc}div.historyItem-setting_metadata .state-icon{background-image:url(data_running.gif)} div.historyItem-upload{background:#a6e4f7}div.historyItem-upload .state-icon{background-image:url(data_upload.gif)} -div.historyItem-queued{background:#eee}div.historyItem-queued .state-icon{background-image:url(../../../../../static/style/blue/sprite-history-states.png);background-position:0px -45px;width:15px;height:15px;height:15px} +div.historyItem-queued{background:#eee}div.historyItem-queued .state-icon{background-image:url(sprite-history-states.png);background-position:0px -45px;width:15px;height:15px;height:15px} div.historyItem-noPermission{filter:alpha(opacity=60);-moz-opacity:.60;opacity:.60}div.historyItem-noPermission .state-icon{line-height:16px;display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-moz-osx-font-smoothing:grayscale;font-family:FontAwesome;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}div.historyItem-noPermission .state-icon:before{content:"\f05e"} div.historyItem-paused{background:#d9edf7}div.historyItem-paused .state-icon{line-height:16px;display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-moz-osx-font-smoothing:grayscale;font-family:FontAwesome;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}div.historyItem-paused .state-icon:before{content:"\f04c"} div.historyItem-new .state-icon{line-height:16px;display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-moz-osx-font-smoothing:grayscale;font-family:FontAwesome;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}div.historyItem-new .state-icon:before{content:"\f071"} div.historyItemTitleBar.spinner .state-icon{background:url(data_running.gif) 0 1px no-repeat !important} -div.historyItemButtons{float:right}div.historyItemButtons .icon-button.display{background-image:url(../../../../../static/style/blue/sprite-history-buttons.png);background-position:0px -48px;width:16px;height:16px;height:16px} -div.historyItemButtons .icon-button.display:hover{background-image:url(../../../../../static/style/blue/sprite-history-buttons.png);background-position:0px -64px;width:16px;height:16px;height:16px} -div.historyItemButtons .icon-button.display_disabled{background-image:url(../../../../../static/style/blue/sprite-history-buttons.png);background-position:0px -80px;width:16px;height:16px;height:16px} -div.historyItemButtons .icon-button.delete{background-image:url(../../../../../static/style/blue/sprite-history-buttons.png);background-position:0px 0px;width:16px;height:16px;height:16px} -div.historyItemButtons .icon-button.delete:hover{background-image:url(../../../../../static/style/blue/sprite-history-buttons.png);background-position:0px -16px;width:16px;height:16px;height:16px} -div.historyItemButtons .icon-button.delete_disabled{background-image:url(../../../../../static/style/blue/sprite-history-buttons.png);background-position:0px -32px;width:16px;height:16px;height:16px} -div.historyItemButtons .icon-button.edit{background-image:url(../../../../../static/style/blue/sprite-history-buttons.png);background-position:0px -96px;width:16px;height:16px;height:16px} -div.historyItemButtons .icon-button.edit:hover{background-image:url(../../../../../static/style/blue/sprite-history-buttons.png);background-position:0px -112px;width:16px;height:16px;height:16px} -div.historyItemButtons .icon-button.edit_disabled{background-image:url(../../../../../static/style/blue/sprite-history-buttons.png);background-position:0px -128px;width:16px;height:16px;height:16px} +div.historyItemButtons{float:right}div.historyItemButtons .icon-button.display{background-image:url(sprite-history-buttons.png);background-position:0px -48px;width:16px;height:16px;height:16px} +div.historyItemButtons .icon-button.display:hover{background-image:url(sprite-history-buttons.png);background-position:0px -64px;width:16px;height:16px;height:16px} +div.historyItemButtons .icon-button.display_disabled{background-image:url(sprite-history-buttons.png);background-position:0px -80px;width:16px;height:16px;height:16px} +div.historyItemButtons .icon-button.delete{background-image:url(sprite-history-buttons.png);background-position:0px 0px;width:16px;height:16px;height:16px} +div.historyItemButtons .icon-button.delete:hover{background-image:url(sprite-history-buttons.png);background-position:0px -16px;width:16px;height:16px;height:16px} +div.historyItemButtons .icon-button.delete_disabled{background-image:url(sprite-history-buttons.png);background-position:0px -32px;width:16px;height:16px;height:16px} +div.historyItemButtons .icon-button.edit{background-image:url(sprite-history-buttons.png);background-position:0px -96px;width:16px;height:16px;height:16px} +div.historyItemButtons .icon-button.edit:hover{background-image:url(sprite-history-buttons.png);background-position:0px -112px;width:16px;height:16px;height:16px} +div.historyItemButtons .icon-button.edit_disabled{background-image:url(sprite-history-buttons.png);background-position:0px -128px;width:16px;height:16px;height:16px} div.historyItemBody div{padding-top:2px} pre.peek{background:white;color:black;width:100%;font-size:10px;overflow:auto}pre.peek th{color:white;background:#5f6990} pre.peek table,pre.peek th,pre.peek tr,pre.peek td{font-family:Monaco,Menlo,Consolas,"Courier New",monospace;font-size:10px} @@ -2349,30 +2349,30 @@ div.toolTitleNoSection{padding-bottom:5px;font-weight:bold} .btn-primary .text-and-autocomplete-select:after,.btn-success .text-and-autocomplete-select:after,.btn-warning .text-and-autocomplete-select:after,.btn-danger .text-and-autocomplete-select:after,.btn-info .text-and-autocomplete-select:after{border-top-color:#fff} .icon-button.general-question{background:url(question-octagon-frame.png) no-repeat;float:right;margin-top:3px;margin-right:4px} .icon-button.tag-question{background:url(question-balloon.png) no-repeat;float:right;margin-top:3px;margin-right:4px} -.icon-button.tag{background-image:url(../../../../../static/style/blue/sprite-fugue.png);background-position:0px -912px;width:16px;height:16px;height:16px} -.icon-button.tags{background-image:url(../../../../../static/style/blue/sprite-fugue.png);background-position:0px -928px;width:16px;height:16px;height:16px} -.icon-button.tag--plus{background-image:url(../../../../../static/style/blue/sprite-fugue.png);background-position:0px -896px;width:16px;height:16px;height:16px} -.icon-button.toggle-expand{background-image:url(../../../../../static/style/blue/sprite-fugue.png);background-position:0px -976px;width:16px;height:16px;height:16px} -.icon-button.toggle{background-image:url(../../../../../static/style/blue/sprite-fugue.png);background-position:0px -944px;width:16px;height:16px;height:16px} -.icon-button.toggle:hover{background-image:url(../../../../../static/style/blue/sprite-fugue.png);background-position:0px -992px;width:16px;height:16px;height:16px} -.icon-button.arrow-circle{background-image:url(../../../../../static/style/blue/sprite-fugue.png);background-position:0px -64px;width:16px;height:16px;height:16px} -.icon-button.chevron{background-image:url(../../../../../static/style/blue/sprite-fugue.png);background-position:0px -352px;width:16px;height:16px;height:16px} -.icon-button.bug{background-image:url(../../../../../static/style/blue/sprite-fugue.png);background-position:0px -288px;width:16px;height:16px;height:16px} -.icon-button.disk{background-image:url(../../../../../static/style/blue/sprite-fugue.png);background-position:0px -496px;width:16px;height:16px;height:16px} -.icon-button.information{background-image:url(../../../../../static/style/blue/sprite-fugue.png);background-position:0px -656px;width:16px;height:16px;height:16px} -.icon-button.annotate{background-image:url(../../../../../static/style/blue/sprite-fugue.png);background-position:0px -880px;width:16px;height:16px;height:16px} -.icon-button.go-to-full-screen{background-image:url(../../../../../static/style/blue/sprite-fugue.png);background-position:0px 0px;width:16px;height:16px;height:16px} -.icon-button.import{background-image:url(../../../../../static/style/blue/sprite-fugue.png);background-position:0px -864px;width:16px;height:16px;height:16px} -.icon-button.plus-button{background-image:url(../../../../../static/style/blue/sprite-fugue.png);background-position:0px -832px;width:16px;height:16px;height:16px} -.icon-button.plus-button:hover{background-image:url(../../../../../static/style/blue/sprite-fugue.png);background-position:0px -848px;width:16px;height:16px;height:16px} -.icon-button.gear{background-image:url(../../../../../static/style/blue/sprite-fugue.png);background-position:0px -576px;width:16px;height:16px;height:16px} -.icon-button.chart_curve{background-image:url(../../../../../static/style/blue/sprite-fugue.png);background-position:0px -304px;width:16px;height:16px;height:16px} -.icon-button.disk--arrow{background-image:url(../../../../../static/style/blue/sprite-fugue.png);background-position:0px -464px;width:16px;height:16px;height:16px} -.icon-button.disk--arrow:hover{background-image:url(../../../../../static/style/blue/sprite-fugue.png);background-position:0px -480px;width:16px;height:16px;height:16px} -.icon-button.cross-circle{background-image:url(../../../../../static/style/blue/sprite-fugue.png);background-position:0px -400px;width:16px;height:16px;height:16px} -.icon-button.cross-circle:hover{background-image:url(../../../../../static/style/blue/sprite-fugue.png);background-position:0px -416px;width:16px;height:16px;height:16px} -.icon-button.arrow-split{background-image:url(../../../../../static/style/blue/sprite-fugue.png);background-position:0px -112px;width:16px;height:16px;height:16px} -.icon-button.arrow-split:hover{background-image:url(../../../../../static/style/blue/sprite-fugue.png);background-position:0px -128px;width:16px;height:16px;height:16px} -.icon-button.chevron-expand:hover{background-image:url(../../../../../static/style/blue/sprite-fugue.png);background-position:0px -336px;width:16px;height:16px;height:16px} -.icon-button.chevron-expand{background-image:url(../../../../../static/style/blue/sprite-fugue.png);background-position:0px -320px;width:16px;height:16px;height:16px} +.icon-button.tag{background-image:url(sprite-fugue.png);background-position:0px -912px;width:16px;height:16px;height:16px} +.icon-button.tags{background-image:url(sprite-fugue.png);background-position:0px -928px;width:16px;height:16px;height:16px} +.icon-button.tag--plus{background-image:url(sprite-fugue.png);background-position:0px -896px;width:16px;height:16px;height:16px} +.icon-button.toggle-expand{background-image:url(sprite-fugue.png);background-position:0px -976px;width:16px;height:16px;height:16px} +.icon-button.toggle{background-image:url(sprite-fugue.png);background-position:0px -944px;width:16px;height:16px;height:16px} +.icon-button.toggle:hover{background-image:url(sprite-fugue.png);background-position:0px -992px;width:16px;height:16px;height:16px} +.icon-button.arrow-circle{background-image:url(sprite-fugue.png);background-position:0px -64px;width:16px;height:16px;height:16px} +.icon-button.chevron{background-image:url(sprite-fugue.png);background-position:0px -352px;width:16px;height:16px;height:16px} +.icon-button.bug{background-image:url(sprite-fugue.png);background-position:0px -288px;width:16px;height:16px;height:16px} +.icon-button.disk{background-image:url(sprite-fugue.png);background-position:0px -496px;width:16px;height:16px;height:16px} +.icon-button.information{background-image:url(sprite-fugue.png);background-position:0px -656px;width:16px;height:16px;height:16px} +.icon-button.annotate{background-image:url(sprite-fugue.png);background-position:0px -880px;width:16px;height:16px;height:16px} +.icon-button.go-to-full-screen{background-image:url(sprite-fugue.png);background-position:0px 0px;width:16px;height:16px;height:16px} +.icon-button.import{background-image:url(sprite-fugue.png);background-position:0px -864px;width:16px;height:16px;height:16px} +.icon-button.plus-button{background-image:url(sprite-fugue.png);background-position:0px -832px;width:16px;height:16px;height:16px} +.icon-button.plus-button:hover{background-image:url(sprite-fugue.png);background-position:0px -848px;width:16px;height:16px;height:16px} +.icon-button.gear{background-image:url(sprite-fugue.png);background-position:0px -576px;width:16px;height:16px;height:16px} +.icon-button.chart_curve{background-image:url(sprite-fugue.png);background-position:0px -304px;width:16px;height:16px;height:16px} +.icon-button.disk--arrow{background-image:url(sprite-fugue.png);background-position:0px -464px;width:16px;height:16px;height:16px} +.icon-button.disk--arrow:hover{background-image:url(sprite-fugue.png);background-position:0px -480px;width:16px;height:16px;height:16px} +.icon-button.cross-circle{background-image:url(sprite-fugue.png);background-position:0px -400px;width:16px;height:16px;height:16px} +.icon-button.cross-circle:hover{background-image:url(sprite-fugue.png);background-position:0px -416px;width:16px;height:16px;height:16px} +.icon-button.arrow-split{background-image:url(sprite-fugue.png);background-position:0px -112px;width:16px;height:16px;height:16px} +.icon-button.arrow-split:hover{background-image:url(sprite-fugue.png);background-position:0px -128px;width:16px;height:16px;height:16px} +.icon-button.chevron-expand:hover{background-image:url(sprite-fugue.png);background-position:0px -336px;width:16px;height:16px;height:16px} +.icon-button.chevron-expand{background-image:url(sprite-fugue.png);background-position:0px -320px;width:16px;height:16px;height:16px} #for_bears{display:none} diff --git a/static/welcome.html.sample b/static/welcome.html.sample index 2d4eb5fceea..53adc1abfa1 100644 --- a/static/welcome.html.sample +++ b/static/welcome.html.sample @@ -2,6 +2,7 @@ + Homepage diff --git a/templates/user/register.mako b/templates/user/register.mako index 0c7f85cc207..81cbd535d5d 100644 --- a/templates/user/register.mako +++ b/templates/user/register.mako @@ -152,7 +152,7 @@ def inherit(context): %endif - %if trans.app.config.smtp_server: + %if trans.app.config.smtp_server and trans.app.config.mailing_join_addr:
%if subscribe_checked: diff --git a/templates/webapps/galaxy/dataset/errors.mako b/templates/webapps/galaxy/dataset/errors.mako index bd914f135a3..7e7f989c7cf 100644 --- a/templates/webapps/galaxy/dataset/errors.mako +++ b/templates/webapps/galaxy/dataset/errors.mako @@ -80,9 +80,9 @@ else: user_email = '' %> -

Report this error to the Galaxy Team

+

Report this error to the local Galaxy administrators

- The Galaxy team regularly reviews errors that occur in the application. + Usually the local Galaxy administrators regularly review errors that occur on the server. However, if you would like to provide additional information (such as what you were trying to do when the error occurred) and a contact e-mail address, we will be better able to investigate your problem and get back diff --git a/test/functional/tools/boolean_conditional.xml b/test/functional/tools/boolean_conditional.xml new file mode 100644 index 00000000000..df699e267a8 --- /dev/null +++ b/test/functional/tools/boolean_conditional.xml @@ -0,0 +1,53 @@ + + + echo "$p1.p1val" >> $out_file1; + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/test/functional/tools/samples_tool_conf.xml b/test/functional/tools/samples_tool_conf.xml index deabd1d0062..68c81052ee7 100644 --- a/test/functional/tools/samples_tool_conf.xml +++ b/test/functional/tools/samples_tool_conf.xml @@ -3,6 +3,7 @@ + diff --git a/test/functional/tools/simple_constructs.xml b/test/functional/tools/simple_constructs.xml index d67c0c282ee..6fdde0ff154 100644 --- a/test/functional/tools/simple_constructs.xml +++ b/test/functional/tools/simple_constructs.xml @@ -61,5 +61,17 @@ + + + + + + + + + + + + diff --git a/tool-data/shared/gbrowse/gbrowse_build_sites.txt b/tool-data/shared/gbrowse/gbrowse_build_sites.txt index 289af693b69..df21421f090 100644 --- a/tool-data/shared/gbrowse/gbrowse_build_sites.txt +++ b/tool-data/shared/gbrowse/gbrowse_build_sites.txt @@ -18,7 +18,7 @@ wormbase_ws225 WormBase WS225 http://ws225.wormbase.org/db/gb2/gbrowse/ caeAng1, tair tair http://arabidopsis.org/cgi-bin/gbrowse/ arabidopsis_tair8,arabidopsis,Arabidopsis_thaliana_TAIR10 arabidopsis_tair8,arabidopsis_tair9,arabidopsis #modENCODE -modencode modENCODE http://modencode.oicr.on.ca/fgb2/gbrowse/ ce6,dm2 worm,fly +modencode modENCODE http://gbrowse.modencode.org/fgb2/gbrowse/ ce10,dm3 worm,fly #Saccharomyces Genome Database (SGD) sgd_yeast Saccharomyces Genome Database http://browse.yeastgenome.org/fgb2/gbrowse/ Saccharomyces_cerevisiae_S288C_SGD2010 scgenome diff --git a/tools/data_source/fly_modencode.xml b/tools/data_source/fly_modencode.xml index 7b14302ebec..3d3f5b8e533 100644 --- a/tools/data_source/fly_modencode.xml +++ b/tools/data_source/fly_modencode.xml @@ -1,21 +1,21 @@ - + server data_source.py $output $__app__.config.output_size_limit - + go to modENCODE fly server $GALAXY_URL - + - + - + diff --git a/tools/data_source/worm_modencode.xml b/tools/data_source/worm_modencode.xml index 074792cccf7..b021f4a0ddf 100644 --- a/tools/data_source/worm_modencode.xml +++ b/tools/data_source/worm_modencode.xml @@ -1,21 +1,21 @@ - + server data_source.py $output $__app__.config.output_size_limit - + go to modENCODE worm server $GALAXY_URL - + - + - +