Commit 4dbed7ca88c2fe8f127deb752f82a5ee9ab4cade
1 parent
7066444f
Exists in
master
and in
4 other branches
Use secure.gravatar.com when running over SSL
Showing
2 changed files
with
38 additions
and
1 deletions
Show diff stats
app/helpers/application_helper.rb
1 | 1 | require 'digest/md5' |
2 | 2 | module ApplicationHelper |
3 | + | |
3 | 4 | def gravatar_icon(user_email) |
4 | - "http://www.gravatar.com/avatar/#{Digest::MD5.hexdigest(user_email)}?s=40&d=identicon" | |
5 | + gravatar_host = request.ssl? ? "https://secure.gravatar.com" : "http://www.gravatar.com" | |
6 | + "#{gravatar_host}/avatar/#{Digest::MD5.hexdigest(user_email)}?s=40&d=identicon" | |
5 | 7 | end |
6 | 8 | |
7 | 9 | def fixed_mode? | ... | ... |
... | ... | @@ -0,0 +1,35 @@ |
1 | +require 'spec_helper' | |
2 | + | |
3 | +describe ApplicationHelper do | |
4 | + context ".gravatar_icon" do | |
5 | + context "over http" do | |
6 | + it "returns the correct URL to www.gravatar.com" do | |
7 | + expected = "http://www.gravatar.com/avatar/f7daa65b2aa96290bb47c4d68d11fe6a?s=40&d=identicon" | |
8 | + | |
9 | + # Pretend we're running over HTTP | |
10 | + helper.stub(:request) do | |
11 | + request = double('request') | |
12 | + request.stub(:ssl?) { false } | |
13 | + request | |
14 | + end | |
15 | + | |
16 | + helper.gravatar_icon("admin@local.host").should == expected | |
17 | + end | |
18 | + end | |
19 | + | |
20 | + context "over https" do | |
21 | + it "returns the correct URL to secure.gravatar.com" do | |
22 | + expected = "https://secure.gravatar.com/avatar/f7daa65b2aa96290bb47c4d68d11fe6a?s=40&d=identicon" | |
23 | + | |
24 | + # Pretend we're running over HTTPS | |
25 | + helper.stub(:request) do | |
26 | + request = double('request') | |
27 | + request.stub(:ssl?) { true } | |
28 | + request | |
29 | + end | |
30 | + | |
31 | + helper.gravatar_icon("admin@local.host").should == expected | |
32 | + end | |
33 | + end | |
34 | + end | |
35 | +end | ... | ... |