Module: GravatarImageTag
- Defined in:
- lib/gravatar_image_tag.rb
Defined Under Namespace
Modules: InstanceMethods Classes: Configuration
Class Attribute Summary collapse
-
.configuration ⇒ Object
Returns the value of attribute configuration.
Class Method Summary collapse
- .configure {|configuration| ... } ⇒ Object
- .gravatar_id(email, filetype = nil) ⇒ Object
- .gravatar_url(email, overrides = {}) ⇒ Object
- .gravatar_url_base ⇒ Object
- .included(base) ⇒ Object
- .url_params(gravatar_params) ⇒ Object
Class Attribute Details
.configuration ⇒ Object
Returns the value of attribute configuration.
5 6 7 |
# File 'lib/gravatar_image_tag.rb', line 5 def configuration @configuration end |
Class Method Details
.configure {|configuration| ... } ⇒ Object
12 13 14 |
# File 'lib/gravatar_image_tag.rb', line 12 def self.configure yield(configuration) end |
.gravatar_id(email, filetype = nil) ⇒ Object
49 50 51 |
# File 'lib/gravatar_image_tag.rb', line 49 def self.gravatar_id(email, filetype = nil) "#{Digest::MD5.hexdigest(email)}#{".#{filetype}" unless filetype.nil?}" unless email.nil? end |
.gravatar_url(email, overrides = {}) ⇒ Object
34 35 36 37 38 39 40 41 42 43 |
# File 'lib/gravatar_image_tag.rb', line 34 def self.gravatar_url(email, overrides = {}) overrides ||= {} gravatar_params = { default: GravatarImageTag.configuration.default_image, filetype: GravatarImageTag.configuration.filetype, rating: GravatarImageTag.configuration., size: GravatarImageTag.configuration.size }.merge(overrides).delete_if { |_key, value| value.nil? } "#{gravatar_url_base}/#{gravatar_id(email, gravatar_params.delete(:filetype))}#{url_params(gravatar_params)}" end |
.gravatar_url_base ⇒ Object
45 46 47 |
# File 'lib/gravatar_image_tag.rb', line 45 def self.gravatar_url_base 'https://gravatar.com/avatar' end |
.included(base) ⇒ Object
20 21 22 23 |
# File 'lib/gravatar_image_tag.rb', line 20 def self.included(base) GravatarImageTag.configure { |_c| nil } base.send :include, InstanceMethods end |
.url_params(gravatar_params) ⇒ Object
53 54 55 56 57 |
# File 'lib/gravatar_image_tag.rb', line 53 def self.url_params(gravatar_params) return nil if gravatar_params.keys.empty? "?#{gravatar_params.map { |key, value| "#{key}=#{CGI.escape(value.is_a?(String) ? value : value.to_s)}" }.join('&')}" end |