Skip to content

Instantly share code, notes, and snippets.

@jnunemaker
Created January 4, 2010 19:39
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 3 You must be signed in to fork a gist
  • Save jnunemaker/268793 to your computer and use it in GitHub Desktop.
Save jnunemaker/268793 to your computer and use it in GitHub Desktop.
example of how easy gravatar support is without a plugin/gem
class Comment
include MongoMapper::EmbeddedDocument
include Gravatarable
key :name, String
key :email, String
key :url, String
key :body, String
key :created_at, Time
def post
_root_document
end
def to_liquid
CommentDrop.new(self)
end
end
require 'digest/md5'
module Gravatarable
# override this in your class if email key is not named email
def gravatar_email
email.downcase
end
def gravatar_id
Digest::MD5.hexdigest(gravatar_email)
end
def gravatar(size=50, default=nil)
url = "http://www.gravatar.com/avatar/#{gravatar_id}?s=#{size}"
url += "&d=#{default}" if default
url
end
def gravatarable?
true
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment