manager: refactor SendInBlue unblock action

This commit is contained in:
Pierre de La Morinerie 2021-04-08 17:46:11 +02:00
parent 76e74003ad
commit 5e8327ff09
3 changed files with 32 additions and 13 deletions

View file

@ -52,14 +52,14 @@ module Manager
@sent_mails = Sendinblue::API.new.sent_mails(@user.email)
end
def unblock_user
@user = User.find(params[:id])
transactionnal_api = ::SibApiV3Sdk::TransactionalEmailsApi.new
transactionnal_api.smtp_blocked_contacts_email_delete(@user.email)
rescue ::SibApiV3Sdk::ApiError => e
flash.alert = "Impossible de débloquer cet email auprès de Sendinblue : #{e.message}"
def unblock_email
@user = User.find(params[:user_id])
if Sendinblue::API.new.unblock_user(@user.email)
flash.notice = "L'adresse email a été débloquée auprès de Sendinblue"
else
flash.alert = "Impossible de débloquer cette addresse email auprès de Sendinblue"
end
redirect_to emails_manager_user_path(@user)
end
end
end

View file

@ -55,6 +55,15 @@ class Sendinblue::API
[]
end
def unblock_user(email_address)
client = ::SibApiV3Sdk::TransactionalEmailsApi.new
client.smtp_blocked_contacts_email_delete(email_address)
true
rescue ::SibApiV3Sdk::ApiError => e
Rails.logger.error e.message
false
end
def run
hydra.run
@hydra = nil

View file

@ -98,8 +98,12 @@ https://www.demarches-simplifiees.fr/users/password/new
Cordialement</pre>
<% end %>
<p><strong>Compte <a href="https://app-smtp.sendinblue.com/block">bloqué</a> chez Sendinblue ?</strong> Vous pouvez le <%= link_to('débloquer', manager_user_unblock_email_path(@user), method: :put, class: 'button', remote: true) %> puis lui envoyer <button class="btn btn-secondary btn-small" onclick="reveal_email('#unblock_email')">le mail suivant</button></p>
<pre class="hidden" id="unblock_email">
<p>
<strong>Compte <a href="https://app-smtp.sendinblue.com/block">bloqué</a> chez Sendinblue ?</strong>
Vous pouvez le <%= link_to('débloquer', manager_user_unblock_email_path(@user), method: :put, class: 'button') %>
puis lui envoyer <button class="btn btn-secondary btn-small" onclick="reveal_email('#unblock_email')">le mail suivant</button>
</p>
<pre class="hidden" id="unblock_email">
Bonjour,
votre email était bloqué par notre prestataire.
@ -109,12 +113,18 @@ Cela peut arriver si vous, ou ceux qui gèrent vos emails, marquent nos emails c
Nous vous invitons donc à autoriser les emails émis depuis demarches-simplifiees.fr
Bien cordialement</pre>
<p><strong>Problème chez Sendinblue ?</strong> Regardez leur <a href="https://status.sendinblue.com/">page de status</a>. <button class="btn btn-secondary btn-small" onclick="reveal_email('#pb-sendinblue')">Voir la suggestion demail</button></p>
Bien cordialement
</pre>
<p>
<strong>Problème chez Sendinblue ?</strong>
Regardez leur <a href="https://status.sendinblue.com/">page de status</a>.
<button class="btn btn-secondary btn-small" onclick="reveal_email('#pb-sendinblue')">Voir la suggestion demail</button>
</p>
<pre class="hidden" id="pb-sendinblue">
Bonjour,
Désolé, notre prestataire d'envoi d'email subit actuellement des soucis avec sa plateforme ;
vous allez recevoir cet email sous peu.
Bien cordialement,</pre>
Bien cordialement,
</pre>
</section>