Sha256: f8dac2c5eb5ab2905bddcfbceab83470248a3a99118df69927196da7682336a9

Contents?: true

Size: 1014 Bytes

Versions: 10

Compression:

Stored size: 1014 Bytes

Contents

module Ramaze
  module Helper
    module Gravatar

      # fetches a gravatar from http//www.gravatar.com based on 'email'
      # and 'size'. Falls back to 'fallback_path' if no gravatar is found.
      # default 'fallback_path' is "/images/gravatar_default.jpg".
      # example:
      #
      # class GravatarController < Ramaze::Controller
      #    helper :gravatar
      #
      #    def index
      #      @gravatar_thumbnail_src = gravatar(session[:email] || 'riku@helloit.fi')
      #    end
      # end
      #
      #  /view/gravatar/index.html:
      #  <img src="#{@gravatar_thumbnail_src}" />

      def gravatar(email, size = 32, fallback_path = "/images/gravatar_default.jpg")
        emailhash = Digest::MD5.hexdigest(email)

        fallback = Request.current.domain
        fallback.path = fallback_path
        default = Rack::Utils.escape(fallback.to_s)

        return "http://www.gravatar.com/avatar.php?gravatar_id=#{emailhash}&default=#{default}&size=#{size}"
      end
    end
  end
end

Version data entries

10 entries across 10 versions & 4 rubygems

Version Path
Pistos-ramaze-2008.12 lib/ramaze/helper/gravatar.rb
Pistos-ramaze-2009.01 lib/ramaze/helper/gravatar.rb
Pistos-ramaze-2009.02 lib/ramaze/helper/gravatar.rb
manveru-ramaze-2008.12 lib/ramaze/helper/gravatar.rb
manveru-ramaze-2009.01 lib/ramaze/helper/gravatar.rb
ptomato-ramaze-2009.02.1 lib/ramaze/helper/gravatar.rb
ptomato-ramaze-2009.02 lib/ramaze/helper/gravatar.rb
ramaze-2009.01 lib/ramaze/helper/gravatar.rb
ramaze-2009.03 lib/ramaze/helper/gravatar.rb
ramaze-2009.02 lib/ramaze/helper/gravatar.rb