docs: def hydrate_input_uploads(input_, input_schema, hydrate_values=True):
      """Hydrate input basic:upload types with upload location.
  
      Find basic:upload fields in input.
      Add the upload location for relative paths.
  
      """
      from resolwe.flow.managers import manager
  
      files = []
      for field_schema, fields in iterate_fields(input_, input_schema):
          name = field_schema['name']
          value = fields[name]
          if 'type' in field_schema:
              if field_schema['type'] == 'basic:file:':
                  files.append(value)
  
              elif field_schema['type'] == 'list:basic:file:':
                  files.extend(value)
  
      urlregex = re.compile(r'^(https?|ftp)://[-A-Za-z0-9\+&@#/%?=~_|!:,.;]*[-A-Za-z0-9\+&@#/%=~_|]')
      for value in files:
          if 'file_temp' in value:
              if isinstance(value['file_temp'], str):
                  # If file_temp not url, hydrate path.
                  if not urlregex.search(value['file_temp']):
                      value['file_temp'] = manager.get_executor().resolve_upload_path(value['file_temp'])
              else:
                  # Something very strange happened.
                  value['file_temp'] = 'Invalid value for file_temp in DB'