diff options
author | Jean-Philippe Lang <jp_lang@yahoo.fr> | 2013-07-29 16:37:45 +0000 |
---|---|---|
committer | Jean-Philippe Lang <jp_lang@yahoo.fr> | 2013-07-29 16:37:45 +0000 |
commit | 1502da5726cf0c4053e0f8f96ad65fc5a307584d (patch) | |
tree | d228aff126c41b22de0a480bf8fd485d276e07da /app/models | |
parent | 27c3299f328164f3e1abbece59248f1f68ef0b8c (diff) | |
download | redmine-1502da5726cf0c4053e0f8f96ad65fc5a307584d.tar.gz redmine-1502da5726cf0c4053e0f8f96ad65fc5a307584d.zip |
Use the default project when receiving an email with an invalid project keyword (#14491).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@12067 e93f8b46-1217-0410-a6f0-8f06a7374b81
Diffstat (limited to 'app/models')
-rw-r--r-- | app/models/mail_handler.rb | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/app/models/mail_handler.rb b/app/models/mail_handler.rb index fb30374bd..864609ce0 100644 --- a/app/models/mail_handler.rb +++ b/app/models/mail_handler.rb @@ -28,6 +28,7 @@ class MailHandler < ActionMailer::Base @@handler_options = options.dup @@handler_options[:issue] ||= {} + @@handler_options[:issue].symbolize_keys! if @@handler_options[:allow_override].is_a?(String) @@handler_options[:allow_override] = @@handler_options[:allow_override].split(',').collect(&:strip) @@ -333,6 +334,13 @@ class MailHandler < ActionMailer::Base # * parse the email To field # * specific project (eg. Setting.mail_handler_target_project) target = Project.find_by_identifier(get_keyword(:project)) + if target.nil? + # Invalid project keyword, use the project specified as the default one + default_project = @@handler_options[:issue][:project] + if default_project.present? + target = Project.find_by_identifier(default_project) + end + end raise MissingInformation.new('Unable to determine target project') if target.nil? target end |