]> source.dussan.org Git - redmine.git/commitdiff
Added an option to turn user Gravatars on or off
authorEric Davis <edavis@littlestreamsoftware.com>
Fri, 31 Oct 2008 00:41:28 +0000 (00:41 +0000)
committerEric Davis <edavis@littlestreamsoftware.com>
Fri, 31 Oct 2008 00:41:28 +0000 (00:41 +0000)
* Option can be found in Administration > General, called
  "Use Gravatar user icons"
* Defaulting Gravatars to off
* Added a helper gravatar_for_mail to check the setting before rendering
  the Gravatar.

  #1776

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@1972 e93f8b46-1217-0410-a6f0-8f06a7374b81

app/helpers/application_helper.rb
app/views/account/show.rhtml
app/views/issues/_history.rhtml
app/views/issues/show.rhtml
app/views/projects/activity.rhtml
app/views/settings/_general.rhtml
app/views/users/list.rhtml
config/settings.yml
lang/en.yml

index 556b9551fa3a96cd60605ffbd868856131087d0f..b944a4a00703b4bd03bb672e68785c9c6526f191 100644 (file)
@@ -561,6 +561,12 @@ module ApplicationHelper
     (@has_content && @has_content[name]) || false
   end
 
+  def gravatar_for_mail(mail, options = { })
+    if Setting.gravatar_enabled?
+      return gravatar(mail, options) rescue nil
+    end
+  end
+
   private
   
   def wiki_helper
index 64fb8bf5f85277ca04561c9d3cb0045d5b771b82..305629a9c1d6f655a80104200f2e9f248969260f 100644 (file)
@@ -2,7 +2,7 @@
 <%= link_to(l(:button_edit), {:controller => 'users', :action => 'edit', :id => @user}, :class => 'icon icon-edit') if User.current.admin? %>
 </div>
 
-<h2><%= gravatar @user.mail unless @user.mail.empty? %> <%=h @user.name %></h2>
+<h2><%= gravatar_for_mail @user.mail unless @user.mail.empty? %> <%=h @user.name %></h2>
 
 <p>
 <%= mail_to(h(@user.mail)) unless @user.pref.hide_mail %>
@@ -29,4 +29,4 @@
 <h3><%=l(:label_activity)%></h3>
 <p>
 <%=l(:label_reported_issues)%>: <%= Issue.count(:conditions => ["author_id=?", @user.id]) %>
-</p>
\ No newline at end of file
+</p>
index 65b34d7c5e340ed0aa41726b7c6d97e117cff06c..e65c4d4d6b379b78c818a4b5e4eea3a25cfb7299 100644 (file)
@@ -4,7 +4,7 @@
     <h4><div style="float:right;"><%= link_to "##{journal.indice}", :anchor => "note-#{journal.indice}" %></div>
     <%= content_tag('a', '', :name => "note-#{journal.indice}")%>
     <%= format_time(journal.created_on) %> - <%= journal.user.name %></h4>
-    <%= gravatar(journal.user.mail.blank? ? "" : journal.user.mail, :size => "32") %>
+    <%= gravatar_for_mail(journal.user.mail.blank? ? "" : journal.user.mail, :size => "32") %>
     <ul>
     <% for detail in journal.details %>
        <li><%= show_detail(detail) %></li>
index 05996f2fae2fe567ec4b21a35fa0db0ab15e887d..15b7b050e60eadf39c755f048d9ee1c84ed7b7c8 100644 (file)
@@ -10,7 +10,7 @@
 <h2><%= @issue.tracker.name %> #<%= @issue.id %></h2>
 
 <div class="issue <%= "status-#{@issue.status.position} priority-#{@issue.priority.position}" %>">
-        <%= gravatar(@issue.author.mail, :size => "64") rescue nil %>
+        <%= gravatar_for_mail(@issue.author.mail, :size => "64") %>
         <h3><%=h @issue.subject %></h3>
         <p class="author">
         <%= authoring @issue.created_on, @issue.author %>.
@@ -27,7 +27,7 @@
     <td class="due-date"><b><%=l(:field_due_date)%>:</b></td><td class="due-date"><%= format_date(@issue.due_date) %></td>
 </tr>
 <tr>
-    <td class="assigned-to"><b><%=l(:field_assigned_to)%>:</b></td><td><%= gravatar(@issue.assigned_to.mail, :size => "14") unless @issue.assigned_to.blank?%><%= @issue.assigned_to ? link_to_user(@issue.assigned_to) : "-" %></td>
+    <td class="assigned-to"><b><%=l(:field_assigned_to)%>:</b></td><td><%= gravatar_for_mail(@issue.assigned_to.mail, :size => "14") unless @issue.assigned_to.blank?%><%= @issue.assigned_to ? link_to_user(@issue.assigned_to) : "-" %></td>
     <td class="progress"><b><%=l(:field_done_ratio)%>:</b></td><td class="progress"><%= progress_bar @issue.done_ratio, :width => '80px', :legend => "#{@issue.done_ratio}%" %></td>
 </tr>
 <tr>
index 47d32e6a390e9a7a856e779bfdb1968b6e4bf90b..1c2591e09c93c4030aad5a473baaff9951cc4f1a 100644 (file)
@@ -7,9 +7,9 @@
 <dl>
 <% @events_by_day[day].sort {|x,y| y.event_datetime <=> x.event_datetime }.each do |e| -%>
   <dt class="<%= e.event_type %>  <%= User.current.logged? && e.respond_to?(:event_author) && User.current == e.event_author ? 'me' : nil %>">
-       <%= gravatar(e.user.mail, :size => "24") if e.respond_to?(:user) rescue nil%>
-       <%= gravatar(e.author.mail, :size => "24") if e.respond_to?(:author) rescue nil%>
-       <%= gravatar(e.committer.match('\\<.+?\\>')[0].gsub(/[<>]/, ''), :size => "24") if e.respond_to?(:committer) rescue nil%>
+       <%= gravatar_for_mail(e.user.mail, :size => "24") if e.respond_to?(:user) %>
+       <%= gravatar_for_mail(e.author.mail, :size => "24") if e.respond_to?(:author) %>
+       <%= gravatar_for_mail(e.committer.match('\\<.+?\\>')[0].gsub(/[<>]/, ''), :size => "24") if e.respond_to?(:committer) rescue nil %>
   <span class="time"><%= format_time(e.event_datetime, false) %></span>
   <%= content_tag('span', h(e.project), :class => 'project') if @project.nil? || @project != e.project %>
   <%= link_to format_activity_title(e.event_title), e.event_url %></dt>
index f8d4e67fb2a31466aa4ae965d8afe7055bb8224f..85b459720c7e3743aab64daff9083d28744bb5fa 100644 (file)
@@ -46,6 +46,9 @@
 
 <p><label><%= l(:setting_feeds_limit) %></label>
 <%= text_field_tag 'settings[feeds_limit]', Setting.feeds_limit, :size => 6 %></p>
+
+<p><label><%= l(:setting_gravatar_enabled) %></label>
+<%= check_box_tag 'settings[gravatar_enabled]', 1, Setting.gravatar_enabled? %><%= hidden_field_tag 'settings[gravatar_enabled]', 0 %></p>
 </div>
 
 <%= submit_tag l(:button_save) %>
index 69f64910a2f28c2e93c2bbe0a8aa142bf87832e5..2b1cd144946b7555c508461151e26cc4ad0b6644 100644 (file)
@@ -29,7 +29,7 @@
   <tbody>
 <% for user in @users -%>
   <tr class="user <%= cycle("odd", "even") %> <%= %w(anon active registered locked)[user.status] %>">
-       <td class="username"><%= gravatar(user.mail.blank? ? "" : user.mail, :size => "24") %><%= link_to h(user.login), :action => 'edit', :id => user %></td>
+       <td class="username"><%= gravatar_for_mail(user.mail.blank? ? "" : user.mail, :size => "24") %><%= link_to h(user.login), :action => 'edit', :id => user %></td>
        <td class="firstname"><%= h(user.firstname) %></td>
        <td class="lastname"><%= h(user.lastname) %></td>
        <td class="email"><%= mail_to(h(user.mail)) %></td>
index 7d6a9d1dfb941d2b3965d2d4c36a42dbef4170d7..02f0b13b50304acd075d050899b3bea5e93785a9 100644 (file)
@@ -135,4 +135,5 @@ emails_footer:
   default: |-
     You have received this notification because you have either subscribed to it, or are involved in it.
     To change your notification preferences, please click here: http://hostname/my/account
-  
+gravatar_enabled:  
+  default: 0
index 01b1d1c3bba2dafeeb7d995d705a29230ddb934f..42c4e96a64adf4fb7da5317120bc96c9779e3a4a 100644 (file)
@@ -222,6 +222,7 @@ setting_enabled_scm: Enabled SCM
 setting_mail_handler_api_enabled: Enable WS for incoming emails
 setting_mail_handler_api_key: API key
 setting_sequential_project_identifiers: Generate sequential project identifiers
+setting_gravatar_enabled: Use Gravatar user icons
 
 permission_edit_project: Edit project
 permission_select_project_modules: Select project modules