Sha256: dacfafdec9fdc967c8a038f272afec7a7fc5c5ddcf599aa80eb8907bf910e0ad
Contents?: true
Size: 621 Bytes
Versions: 17
Compression:
Stored size: 621 Bytes
Contents
class FsUtils def self.querystring_from_hash(hash) params = hash.map do |k,v| k = k.to_s if v.is_a? Hash v.collect do |k2,v2| k2 = k2.to_s v2 = v2.to_s v2 = url_encode(v2) "#{k}.#{k2}=#{v2}" end.join('&') else v = v.to_s v = self.url_encode(v) k + '=' + v end end params.join('&') end private def self.url_encode(string) # Taken from http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/156044 string.gsub( /[^a-zA-Z0-9\-_\.!~*'()]/n ) {|x| sprintf('%%%02x', x[0]) } end end
Version data entries
17 entries across 17 versions & 1 rubygems