Merge pull request #2787 from betagouv/fix_mailjet_mistakes
Mailjet: i'm loving it
This commit is contained in:
commit
59c0374ec8
1 changed files with 94 additions and 0 deletions
94
lib/tasks/2018_10_09_fix_mailjet_mistakes.rake
Normal file
94
lib/tasks/2018_10_09_fix_mailjet_mistakes.rake
Normal file
|
@ -0,0 +1,94 @@
|
||||||
|
namespace :'2018_10_03_fix_mailjet_mistakes' do
|
||||||
|
task activation_emails: :environment do
|
||||||
|
activation_file_path = ENV['ACTIVATION']
|
||||||
|
|
||||||
|
if File.file?(activation_file_path)
|
||||||
|
rake_puts "loading #{activation_file_path} file for account activation"
|
||||||
|
else
|
||||||
|
rake_puts "no file #{activation_file_path} found"
|
||||||
|
end
|
||||||
|
|
||||||
|
emails = File.new(activation_file_path).readlines.map(&:strip)
|
||||||
|
|
||||||
|
emails.each do |email|
|
||||||
|
user = User.find_by(email: email)
|
||||||
|
if user.present?
|
||||||
|
rake_puts "sending activation mail for #{email}"
|
||||||
|
if user.confirmed?
|
||||||
|
UserMailer.new_account_warning(user).deliver_later
|
||||||
|
else
|
||||||
|
user.resend_confirmation_instructions
|
||||||
|
end
|
||||||
|
else
|
||||||
|
rake_puts "user #{email} does not exist"
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
task password_emails: :environment do
|
||||||
|
password_file_path = ENV['PASSWORD']
|
||||||
|
|
||||||
|
if File.file?(password_file_path)
|
||||||
|
rake_puts "loading #{password_file_path} file for changing password"
|
||||||
|
else
|
||||||
|
rake_puts "no file #{password_file_path} found"
|
||||||
|
end
|
||||||
|
|
||||||
|
emails = File.new(password_file_path).readlines.map(&:strip)
|
||||||
|
|
||||||
|
emails.each do |email|
|
||||||
|
user = User.find_by(email: email)
|
||||||
|
if user.present?
|
||||||
|
rake_puts "sending changing password mail for #{email}"
|
||||||
|
user.send_reset_password_instructions
|
||||||
|
else
|
||||||
|
rake_puts "user #{email} does not exist"
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
task notification_emails: :environment do
|
||||||
|
notification_file_path = ENV['NOTIFICATION']
|
||||||
|
|
||||||
|
if File.file?(notification_file_path)
|
||||||
|
rake_puts "loading #{notification_file_path} file for notification"
|
||||||
|
else
|
||||||
|
rake_puts "no file #{notification_file_path} found"
|
||||||
|
end
|
||||||
|
|
||||||
|
lines = File.new(notification_file_path).readlines.map(&:strip)
|
||||||
|
|
||||||
|
lines.each do |line|
|
||||||
|
email, *subject = line.split(',')
|
||||||
|
subject = *subject.join
|
||||||
|
|
||||||
|
user = User.find_by(email: email)
|
||||||
|
|
||||||
|
body = <<-EOS
|
||||||
|
Bonjour,
|
||||||
|
|
||||||
|
Suite à un incident technique concernant les envois d'emails sur le site demarches-simplifiees.fr, nous n'avons pas pu vous remettre l'email intitulé #{subject}.
|
||||||
|
|
||||||
|
Vous pouvez néanmoins le consulter directement dans la messagerie de votre dossier en vous connectant sur https://www.demarches-simplifiees.fr/users/sign_in .
|
||||||
|
|
||||||
|
Veuillez nous excuser pour la gêne occasionnée.
|
||||||
|
|
||||||
|
Cordialement,
|
||||||
|
|
||||||
|
L'équipe de demarches-simplifiees.fr
|
||||||
|
EOS
|
||||||
|
|
||||||
|
if user.present?
|
||||||
|
rake_puts "sending notification for #{email}"
|
||||||
|
ActionMailer::Base.mail(
|
||||||
|
from: "contact@demarches-simplifiees.fr",
|
||||||
|
to: email,
|
||||||
|
subject: subject,
|
||||||
|
body: body
|
||||||
|
).deliver_later
|
||||||
|
else
|
||||||
|
rake_puts "user #{email} does not exist"
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
Loading…
Reference in a new issue