Sha256: f8f4bfe10aa8591277e6cf79434b8244676ea1cdb425fcd045415ac740cc1783
Contents?: true
Size: 1.12 KB
Versions: 2
Compression:
Stored size: 1.12 KB
Contents
require "date" require "cgi" module Picasa module Utils def safe_retrieve(hash, *keys) return if !hash.kind_of?(Hash) || !hash.has_key?(keys.first) if keys.size == 1 hash[keys.first] elsif keys.size > 1 Utils.safe_retrieve(hash[keys.first], *keys[1..-1]) end end # Ported from activesupport gem def array_wrap(object) if object.nil? [] elsif object.respond_to?(:to_ary) object.to_ary || [object] else [object] end end def map_to_integer(value) value && value.to_i end def map_to_date(value) value && DateTime.parse(value) end def map_to_boolean(value) return unless value case value when "true" then true when "false" then false end end def inline_query(query) query.map do |key, value| dasherized = key.to_s.gsub("_", "-") "#{CGI.escape(dasherized)}=#{CGI.escape(value.to_s)}" end.join("&") end module_function :safe_retrieve, :array_wrap, :map_to_integer, :map_to_boolean, :map_to_date, :inline_query end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
picasa-0.5.4 | lib/picasa/utils.rb |
picasa-0.5.3 | lib/picasa/utils.rb |