Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

Move avatar_url method to posts helper because view stuff shouldn't b…

…e in the model.
  • Loading branch information...
commit 1f1b0f278be73091763b9133db6660b504f63fac 1 parent 46877fb
@ugisozols ugisozols authored
View
5 app/helpers/refinery/blog/posts_helper.rb
@@ -28,6 +28,11 @@ def blog_archive_dates(cutoff=Time.now.beginning_of_month)
Refinery::Blog::Post.published_dates_older_than(cutoff)
end
+ def avatar_url(email, options = {:size => 60})
+ require 'digest/md5'
+ "http://gravatar.com/avatar/#{Digest::MD5.hexdigest(email.to_s.strip.downcase)}?s=#{options[:size]}.jpg"
+ end
+
class ArchiveWidget
delegate :t, :link_to, :refinery, :render, :to => :view_context
attr_reader :view_context
View
7 app/models/refinery/blog/comment.rb
@@ -33,13 +33,6 @@ def rejected
self.per_page = Refinery::Blog.comments_per_page
- def avatar_url(options = {})
- options = {:size => 60}
- require 'digest/md5'
- size = ("?s=#{options[:size]}" if options[:size])
- "http://gravatar.com/avatar/#{Digest::MD5.hexdigest(self.email.to_s.strip.downcase)}#{size}.jpg"
- end
-
def approve!
self.update_column(:state, 'approved')
end
View
2  app/views/refinery/blog/posts/_comment.html.erb
@@ -1,5 +1,5 @@
<article class='blog_comment_message' id='<%= "comment-#{comment.to_param}" %>'>
- <%= image_tag comment.avatar_url, :alt => comment.name, :class => 'avatar' %>
+ <%= image_tag avatar_url(comment.email), :alt => comment.name, :class => 'avatar' %>
<%= simple_format auto_link(comment.message.to_s) %>
<footer class='blog_comment_author'>
<p>
View
12 spec/helpers/refinery/blog/posts_helper_spec.rb
@@ -66,6 +66,18 @@ module Blog
end
end
end
+
+ describe "#avatar_url" do
+ let(:email) { "test@test.com" }
+
+ it "returns gravatar url" do
+ helper.avatar_url(email).should eq("http://gravatar.com/avatar/b642b4217b34b1e8d3bd915fc65c4452?s=60.jpg")
+ end
+
+ it "accepts options hash to change default size" do
+ helper.avatar_url(email, :size => 55).should eq("http://gravatar.com/avatar/b642b4217b34b1e8d3bd915fc65c4452?s=55.jpg")
+ end
+ end
end
end
end
Please sign in to comment.
Something went wrong with that request. Please try again.