Merge pull request #4058 from scossar/validate-user-locale

FIX: validate user locale for email notifications
This commit is contained in:
Sam 2016-03-07 14:11:12 +11:00
commit 726b34ea78
2 changed files with 15 additions and 1 deletions

View File

@ -188,7 +188,7 @@ class UserNotifications < ActionMailer::Base
protected
def user_locale(user)
user.respond_to?(:locale) ? user.locale : nil
(user.locale.present? && I18n.available_locales.include?(user.locale.to_sym)) ? user.locale : nil
end
def email_post_markdown(post)

View File

@ -429,5 +429,19 @@ describe UserNotifications do
end
end
end
context "user locale is an empty string" do
%w(signup signup_after_approval authorize_email forgot_password admin_login account_created).each do |mail_type|
include_examples "notification derived from template" do
SiteSetting.default_locale = "en"
let(:locale) { "" }
let(:mail_type) { mail_type }
it "sets the locale" do
expects_build_with(has_entry(:locale, nil))
end
end
end
end
end
end