fix dedup email messages

pull/696/head
Pete Matsyburka 1 month ago
parent 3cb37748e9
commit e4c0b30284

@ -6,12 +6,8 @@ module EmailMessages
def find_or_create_for_account_user(account, user, subject, body) def find_or_create_for_account_user(account, user, subject, body)
subject = I18n.t(:you_are_invited_to_sign_a_document) if subject.blank? subject = I18n.t(:you_are_invited_to_sign_a_document) if subject.blank?
sha1 = Digest::SHA1.hexdigest({ subject:, body: }.to_json) message = account.email_messages.new(author: user, subject:, body:).tap(&:validate)
message = account.email_messages.find_by(sha1:) account.email_messages.find_by(sha1: message.sha1) || message.tap { |m| m.save!(validate: false) }
message ||= account.email_messages.create!(author: user, subject:, body:)
message
end end
end end

Loading…
Cancel
Save