Changeset 1562:26ae03082033

Show
Ignore:
Timestamp:
10/20/08 12:44:33 (3 months ago)
Author:
Dan Blankenberg <dan@bx.psu.edu>
branch:
default
Message:

Fix for implicit conversion checking on multiple paged tools. Conversion is never allowed on multi-paged tools.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • lib/galaxy/tools/parameters/basic.py

    r1557 r1562  
    10071007        ToolParameter.__init__( self, tool, elem ) 
    10081008        # Add metadata validator 
    1009         self.validators.append( validation.MetadataValidator() ) 
     1009        if not str_bool( elem.get( 'no_validation', False ) ): 
     1010            self.validators.append( validation.MetadataValidator() ) 
    10101011        # Build tuple of classes for supported data formats 
    10111012        formats = [] 
     
    11081109        def dataset_collector( datasets ): 
    11091110            def is_convertable( dataset ): 
    1110                 target_ext, converted_dataset = dataset.find_conversion_destination( self.formats, converter_safe = True ) #need to assume converter_safe = True, since we don't know about other parameter values here 
     1111                target_ext, converted_dataset = dataset.find_conversion_destination( self.formats, converter_safe = self.converter_safe( None, trans ) ) 
    11111112                if target_ext is not None: 
    11121113                    return True 
     
    11811182 
    11821183    def converter_safe( self, other_values, trans ): 
    1183         if not hasattr( trans, 'workflow_building_mode' ) or trans.workflow_building_mode: 
     1184        if self.tool.has_multiple_pages or not hasattr( trans, 'workflow_building_mode' ) or trans.workflow_building_mode: 
    11841185            return False 
     1186        if other_values is None: 
     1187            return True # we don't know other values, so we can't check, assume ok 
    11851188        converter_safe = [True] 
    11861189        def visitor( prefix, input, value, parent = None ):