Sha256: f18cb2147e58195a4d1e238568419e85aacc9916334ea2dd4f760eb7b1ece525

Contents?: true

Size: 786 Bytes

Versions: 3

Compression:

Stored size: 786 Bytes

Contents

module UrlForFix
  # TODO (uwe): Can be removed when using EdgeRails of Rails >= 1.3
  def url_for(org_options = {}, *parameters_for_method_reference)
    return super(org_options, *parameters_for_method_reference) if org_options.is_a? String
    new_options = {}
    org_options.each do |param, value|
      add_option(new_options, param, value)
    end
    super new_options, *parameters_for_method_reference
  end

  # Used with AplicationHelper::url_for
  def add_option(options, param, value)
    case value
    when Hash:
      value.each do |key, value|
        add_option(options, "#{param}[#{key}]", value)
      end
    when Array:
      hash.each do |value|
        add_option(options, "#{param}[]", value)
      end
    else
      options[param] = value
    end
  end
  
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
backlog-0.10.0 lib/url_for_fix.rb
backlog-0.10.1 lib/url_for_fix.rb
backlog-0.10.2 lib/url_for_fix.rb