mirror of
https://github.com/discourse/discourse.git
synced 2025-09-05 08:59:27 +08:00
FEATURE: new 'ignore_by_title' site setting
This commit is contained in:
parent
69dc706ba1
commit
c75d58ab21
5 changed files with 27 additions and 1 deletions
|
@ -38,14 +38,20 @@ module Email
|
|||
end
|
||||
|
||||
def process!
|
||||
return if is_blacklisted?
|
||||
@from_email, @from_display_name = parse_from_field
|
||||
@incoming_email = find_or_create_incoming_email
|
||||
process_internal
|
||||
rescue => e
|
||||
@incoming_email.update_columns(error: e.to_s)
|
||||
@incoming_email.update_columns(error: e.to_s) if @incoming_email
|
||||
raise
|
||||
end
|
||||
|
||||
def is_blacklisted?
|
||||
return false if SiteSetting.ignore_by_title.blank?
|
||||
Regexp.new(SiteSetting.ignore_by_title) =~ @mail.subject
|
||||
end
|
||||
|
||||
def find_or_create_incoming_email
|
||||
IncomingEmail.find_or_create_by(message_id: @message_id) do |ie|
|
||||
ie.raw = @raw_email
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue