Sha256: 5a3d80ba789e20f43e708af49cb42d7308e0ddf79b01128dd9aa9c8125ecbe52

Contents?: true

Size: 749 Bytes

Versions: 7

Compression:

Stored size: 749 Bytes

Contents

# LeadTune API Ruby Gem
#
# http://github.com/leadtune/leadtune-ruby
# Eric Wollesen (mailto:devs@leadtune.com)
# Copyright 2010 LeadTune LLC

module Leadtune
  class Util

    # File merb/core_ext/hash.rb, line 87, with slight tweaks

    def self.to_params(hash)
      params = ''
      stack = []

      hash.each do |k, v|
        if v.is_a?(Hash)
          stack << [k,v]
        else
          params << "#{k}=#{v}&"
        end
      end

      stack.each do |parent, sub_hash|
        sub_hash.each do |k, v|
          if v.is_a?(Hash)
            stack << ["#{parent}[#{k}]", v]
          else
            params << "#{parent}[#{k}]=#{v}&"
          end
        end
      end

      params.chop! # trailing &
      params
    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
leadtune-0.0.9 lib/leadtune/util.rb
leadtune-0.0.8 lib/leadtune/util.rb
leadtune-0.0.7 lib/leadtune/util.rb
leadtune-0.0.6 lib/leadtune/util.rb
leadtune-0.0.5 lib/leadtune/util.rb
leadtune-0.0.4 lib/leadtune/util.rb
leadtune-0.0.3 lib/leadtune/util.rb