From 5ef63ec4bb722b19310b371309aac6b088a5ffd9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Felix=20Sch=C3=A4fer?= Date: Sun, 10 Jun 2012 19:42:52 +0200 Subject: [PATCH] Fix option parsing for gravatars #1034 In addition to that: * the default size was 50px in the old lib, this has been restored * some tests to test the default and option parsing --- app/helpers/application_helper.rb | 4 +++- test/unit/helpers/application_helper_test.rb | 5 +++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/app/helpers/application_helper.rb b/app/helpers/application_helper.rb index 3cfc5628..80a8a50d 100644 --- a/app/helpers/application_helper.rb +++ b/app/helpers/application_helper.rb @@ -959,7 +959,9 @@ module ApplicationHelper def gravatar(email, options={}) gravatarify_options = {} gravatarify_options[:secure] = options.delete :ssl - [:default, :size, :rating, :filetype].each {|key| gravatarify_options[:key] = options.delete :key} + [:default, :size, :rating, :filetype].each {|key| gravatarify_options[key] = options.delete key} + # Default size is 50x50 px + gravatarify_options[:size] ||= 50 gravatarify_options[:html] = options gravatar_tag email, gravatarify_options end diff --git a/test/unit/helpers/application_helper_test.rb b/test/unit/helpers/application_helper_test.rb index 8c9af006..00985c3c 100644 --- a/test/unit/helpers/application_helper_test.rb +++ b/test/unit/helpers/application_helper_test.rb @@ -664,6 +664,11 @@ RAW Setting.gravatar_enabled = '1' assert avatar(User.find_by_mail('jsmith@somenet.foo')).include?(Digest::MD5.hexdigest('jsmith@somenet.foo')) assert avatar('jsmith ').include?(Digest::MD5.hexdigest('jsmith@somenet.foo')) + # Default size is 50 + assert avatar('jsmith ').include?('s=50') + assert avatar('jsmith ', :size => 24).include?('s=24') + # Non-avatar options should be considered html options + assert avatar('jsmith ', :title => 'John Smith').include?('title="John Smith"') assert_nil avatar('jsmith') assert_nil avatar(nil)