Commit a200e976 authored by Jean-Philippe Lang's avatar Jean-Philippe Lang

* Emails footer can now be customized from the admin interface (Admin -> Email notifications).

* Added html part to all email templates.

git-svn-id: http://redmine.rubyforge.org/svn/trunk@858 e93f8b46-1217-0410-a6f0-8f06a7374b81
parent 2ee11c90
......@@ -49,6 +49,7 @@ class AdminController < ApplicationController
@notifiables = %w(issue_added issue_updated news_added document_added file_added message_posted)
if request.post?
Setting.notified_events = (params[:notified_events] || [])
Setting.emails_footer = params[:emails_footer] if params[:emails_footer]
flash[:notice] = l(:notice_successful_update)
redirect_to :controller => 'admin', :action => 'mail_options'
end
......
......@@ -8,12 +8,15 @@
<fieldset class="box"><legend><%=l(:text_select_mail_notifications)%></legend>
<% @notifiables.each do |notifiable| %>
<p><label><%= check_box_tag "notified_events[]", notifiable, Setting.notified_events.include?(notifiable) %>
<%= notifiable.humanize %></label></p>
<label><%= check_box_tag "notified_events[]", notifiable, Setting.notified_events.include?(notifiable) %>
<%= notifiable.humanize %></label><br />
<% end %>
<div class="clear"></div>
<p><%= check_all_links('mail-options-form') %></p>
</fieldset>
<fieldset class="box"><legend>Emails footer</legend>
<%= text_area_tag 'emails_footer', Setting.emails_footer, :class => 'wiki-edit', :rows => 5 %>
</fieldset>
<p><%= check_all_links('mail-options-form') %></p>
<%= submit_tag l(:button_save) %>
<% end %>
......@@ -7,3 +7,6 @@ Log in: <%= url_for :only_path => false, :host => Setting.host_name, :controller
<% unless @user.auth_source %>
You can change your password here: <%= url_for :only_path => false, :host => Setting.host_name, :controller => 'my', :action => 'account' %>
<% end %>
----------------------------------------
<%= Setting.emails_footer %>
......@@ -7,3 +7,6 @@ Pour se connecter à l'application: <%= url_for :only_path => false, :host => Se
<% unless @user.auth_source %>
Vous pouvez changer votre mot de passe à l'adresse: <%= url_for :only_path => false, :host => Setting.host_name, :controller => 'my', :action => 'account' %>
<% end %>
----------------------------------------
<%= Setting.emails_footer %>
......@@ -7,3 +7,6 @@ Zaloguj: <%= url_for :only_path => false, :host => Setting.host_name, :controlle
<% unless @user.auth_source %>
Możesz zmienić swoje hasło tutaj: <%= url_for :only_path => false, :host => Setting.host_name, :controller => 'my', :action => 'account' %>
<% end %>
----------------------------------------
<%= Setting.emails_footer %>
......@@ -3,3 +3,5 @@
<ul><% @attachments.each do |attachment | %>
<li><%= attachment.filename %></li>
<% end %></ul>
<hr />
<small><em><%= textilizable Setting.emails_footer %></em></small>
......@@ -2,3 +2,5 @@
- <%= attachment.filename %><% end %>
<%= url_for @url %>
----------------------------------------
<%= Setting.emails_footer %>
......@@ -2,3 +2,5 @@
(<%= @document.category.name %>)<br />
<br />
<%= textilizable(@document.description) %>
<hr />
<small><em><%= textilizable Setting.emails_footer %></em></small>
......@@ -2,3 +2,5 @@
<%= url_for :only_path => false, :host => Setting.host_name, :controller => 'documents', :action => 'show', :id => @document %>
<%= @document.description %>
----------------------------------------
<%= Setting.emails_footer %>
<%= l(:text_issue_added, "##{@issue.id}") %>
<hr />
<%= render :file => "_issue_text_html", :use_full_path => true, :locals => { :issue => @issue } %>
<hr />
<small><em><%= textilizable Setting.emails_footer %></em></small>
<%= l(:text_issue_added, "##{@issue.id}") %>
----------------------------------------
<%= render :file => "_issue_text_plain", :use_full_path => true, :locals => { :issue => @issue } %>
----------------------------------------
<%= Setting.emails_footer %>
......@@ -8,3 +8,5 @@
<%= textilizable(@journal.notes) %>
<hr />
<%= render :file => "_issue_text_html", :use_full_path => true, :locals => { :issue => @issue } %>
<hr />
<small><em><%= textilizable Setting.emails_footer %></em></small>
......@@ -6,3 +6,5 @@
<%= @journal.notes if @journal.notes? %>
----------------------------------------
<%= render :file => "_issue_text_plain", :use_full_path => true, :locals => { :issue => @issue } %>
----------------------------------------
<%= Setting.emails_footer %>
<%= l(:mail_body_lost_password) %>
<%= url_for :only_path => false, :host => Setting.host_name, :controller => 'account', :action => 'lost_password', :token => @token.value %>
----------------------------------------
<%= Setting.emails_footer %>
<%=h @message.board.project.name %> - <%=h @message.board.name %>: <%= link_to @message.subject, :only_path => false, :host => Setting.host_name, :controller => 'messages', :action => 'show', :board_id => @message.board_id, :id => @message.root %><br />
<em><%= @message.author.name %></em>
<%= textilizable @message.content %>
<hr />
<small><em><%= textilizable Setting.emails_footer %></em></small>
<%= l(:field_author) %>: <%= @message.author.name %>
<%= url_for :only_path => false, :host => Setting.host_name, :controller => 'messages', :action => 'show', :board_id => @message.board_id, :id => @message.root %>
<%= @message.author.name %>
<%= @message.content %>
----------------------------------------
<%= Setting.emails_footer %>
......@@ -2,3 +2,5 @@
<em><%= @news.author.name %></em>
<%= textilizable(@news.description) %>
<hr />
<small><em><%= textilizable Setting.emails_footer %></em></small>
......@@ -3,3 +3,5 @@
<%= @news.author.name %>
<%= @news.description %>
----------------------------------------
<%= Setting.emails_footer %>
<%= l(:mail_body_register) %>
<%= url_for :only_path => false, :host => Setting.host_name, :controller => 'account', :action => 'register', :token => @token.value %>
----------------------------------------
<%= Setting.emails_footer %>
<p>This is a test email sent by Redmine.<br />
Redmine URL: <%= link_to url_for(:only_path => false, :host => Setting.host_name, :controller => 'welcome'),
url_for(:only_path => false, :host => Setting.host_name, :controller => 'welcome') %></p>
<hr />
<small><em><%= textilizable Setting.emails_footer %></em></small>
This is a test email sent by Redmine.
Redmine URL: <%= url_for :only_path => false, :host => Setting.host_name, :controller => 'welcome' %>
----------------------------------------
<%= Setting.emails_footer %>
......@@ -96,4 +96,8 @@ repositories_encodings:
default: ''
ui_theme:
default: ''
emails_footer:
default: |-
You have received this notification because you have either subscribed to it, or are involved in.
To change your notification preferences, please click here: http://hostname/my/account
\ No newline at end of file
......@@ -531,3 +531,4 @@ text_user_mail_option: "For unselected projects, you will only receive notificat
label_user_mail_option_selected: "For any event on the selected projects only..."
label_user_mail_option_all: "For any event on all my projects"
label_user_mail_option_none: "Only for things I watch or I'm involved in"
setting_emails_footer: Emails footer
......@@ -531,3 +531,4 @@ text_user_mail_option: "For unselected projects, you will only receive notificat
label_user_mail_option_selected: "For any event on the selected projects only..."
label_user_mail_option_all: "For any event on all my projects"
label_user_mail_option_none: "Only for things I watch or I'm involved in"
setting_emails_footer: Emails footer
......@@ -531,3 +531,4 @@ text_user_mail_option: "For unselected projects, you will only receive notificat
label_user_mail_option_selected: "For any event on the selected projects only..."
label_user_mail_option_all: "For any event on all my projects"
label_user_mail_option_none: "Only for things I watch or I'm involved in"
setting_emails_footer: Emails footer
......@@ -188,6 +188,7 @@ setting_date_format: Date format
setting_cross_project_issue_relations: Allow cross-project issue relations
setting_issue_list_default_columns: Default columns displayed on the issue list
setting_repositories_encodings: Repositories encodings
setting_emails_footer: Emails footer
label_user: User
label_user_plural: Users
......
......@@ -534,3 +534,4 @@ text_user_mail_option: "For unselected projects, you will only receive notificat
label_user_mail_option_selected: "For any event on the selected projects only..."
label_user_mail_option_all: "For any event on all my projects"
label_user_mail_option_none: "Only for things I watch or I'm involved in"
setting_emails_footer: Emails footer
......@@ -188,6 +188,7 @@ setting_date_format: Format de date
setting_cross_project_issue_relations: Autoriser les relations entre demandes de différents projets
setting_issue_list_default_columns: Colonnes affichées par défaut sur la liste des demandes
setting_repositories_encodings: Encodages des dépôts
setting_emails_footer: Pied-de-page des emails
label_user: Utilisateur
label_user_plural: Utilisateurs
......
......@@ -531,3 +531,4 @@ text_user_mail_option: "For unselected projects, you will only receive notificat
label_user_mail_option_selected: "For any event on the selected projects only..."
label_user_mail_option_all: "For any event on all my projects"
label_user_mail_option_none: "Only for things I watch or I'm involved in"
setting_emails_footer: Emails footer
......@@ -531,3 +531,4 @@ text_user_mail_option: "For unselected projects, you will only receive notificat
label_user_mail_option_selected: "For any event on the selected projects only..."
label_user_mail_option_all: "For any event on all my projects"
label_user_mail_option_none: "Only for things I watch or I'm involved in"
setting_emails_footer: Emails footer
......@@ -532,3 +532,4 @@ text_user_mail_option: "For unselected projects, you will only receive notificat
label_user_mail_option_selected: "For any event on the selected projects only..."
label_user_mail_option_all: "For any event on all my projects"
label_user_mail_option_none: "Only for things I watch or I'm involved in"
setting_emails_footer: Emails footer
......@@ -532,3 +532,4 @@ text_user_mail_option: "For unselected projects, you will only receive notificat
label_user_mail_option_selected: "For any event on the selected projects only..."
label_user_mail_option_all: "For any event on all my projects"
label_user_mail_option_none: "Only for things I watch or I'm involved in"
setting_emails_footer: Emails footer
......@@ -531,3 +531,4 @@ text_user_mail_option: "For unselected projects, you will only receive notificat
label_user_mail_option_selected: "For any event on the selected projects only..."
label_user_mail_option_all: "For any event on all my projects"
label_user_mail_option_none: "Only for things I watch or I'm involved in"
setting_emails_footer: Emails footer
......@@ -531,3 +531,4 @@ text_user_mail_option: "For unselected projects, you will only receive notificat
label_user_mail_option_selected: "For any event on the selected projects only..."
label_user_mail_option_all: "For any event on all my projects"
label_user_mail_option_none: "Only for things I watch or I'm involved in"
setting_emails_footer: Emails footer
......@@ -531,3 +531,4 @@ text_user_mail_option: "For unselected projects, you will only receive notificat
label_user_mail_option_selected: "For any event on the selected projects only..."
label_user_mail_option_all: "For any event on all my projects"
label_user_mail_option_none: "Only for things I watch or I'm involved in"
setting_emails_footer: Emails footer
......@@ -531,3 +531,4 @@ text_user_mail_option: "For unselected projects, you will only receive notificat
label_user_mail_option_selected: "For any event on the selected projects only..."
label_user_mail_option_all: "For any event on all my projects"
label_user_mail_option_none: "Only for things I watch or I'm involved in"
setting_emails_footer: Emails footer
......@@ -532,3 +532,4 @@ text_user_mail_option: "For unselected projects, you will only receive notificat
label_user_mail_option_selected: "For any event on the selected projects only..."
label_user_mail_option_all: "For any event on all my projects"
label_user_mail_option_none: "Only for things I watch or I'm involved in"
setting_emails_footer: Emails footer
......@@ -534,3 +534,4 @@ text_user_mail_option: "For unselected projects, you will only receive notificat
label_user_mail_option_selected: "For any event on the selected projects only..."
label_user_mail_option_all: "For any event on all my projects"
label_user_mail_option_none: "Only for things I watch or I'm involved in"
setting_emails_footer: Emails footer
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment