Utilisation d'un suffixe pour les mails, par exemple [AdL], qui perme de modifier par instance
This commit is contained in:
parent
9911dc0658
commit
a3760b57b8
@ -1,8 +1,9 @@
|
|||||||
ActiveAdmin.register I18n::Backend::ActiveRecord::Translation do
|
ActiveAdmin.register I18n::Backend::ActiveRecord::Translation do
|
||||||
permit_params :key, :value
|
permit_params :locale, :key, :value
|
||||||
|
|
||||||
form do |f|
|
form do |f|
|
||||||
f.inputs do
|
f.inputs do
|
||||||
|
f.input :locale
|
||||||
f.input :key
|
f.input :key
|
||||||
f.input :value, as: :pagedown_text
|
f.input :value, as: :pagedown_text
|
||||||
f.actions
|
f.actions
|
||||||
|
@ -8,7 +8,8 @@ class EventMailer < ActionMailer::Base
|
|||||||
mail 'Message-ID' =>
|
mail 'Message-ID' =>
|
||||||
"<event-#{event.id}@#{ActionMailer::Base.default_url_options[:host]}>",
|
"<event-#{event.id}@#{ActionMailer::Base.default_url_options[:host]}>",
|
||||||
to: event.submitter,
|
to: event.submitter,
|
||||||
subject: t('event_mailer.create.subject', subject: event.title)
|
subject: t('mail_suffix') +
|
||||||
|
t('event_mailer.create.subject', subject: event.title)
|
||||||
end
|
end
|
||||||
|
|
||||||
def accept(event, current_user)
|
def accept(event, current_user)
|
||||||
@ -18,7 +19,8 @@ class EventMailer < ActionMailer::Base
|
|||||||
mail 'In-Reply-To' =>
|
mail 'In-Reply-To' =>
|
||||||
"<event-#{event.id}@#{ActionMailer::Base.default_url_options[:host]}>",
|
"<event-#{event.id}@#{ActionMailer::Base.default_url_options[:host]}>",
|
||||||
to: event.submitter,
|
to: event.submitter,
|
||||||
subject: t('event_mailer.accept.subject', subject: event.title)
|
subject: t('mail_suffix') +
|
||||||
|
t('event_mailer.accept.subject', subject: event.title)
|
||||||
end
|
end
|
||||||
|
|
||||||
def destroy(event, current_user, reason)
|
def destroy(event, current_user, reason)
|
||||||
@ -29,6 +31,7 @@ class EventMailer < ActionMailer::Base
|
|||||||
mail 'In-Reply-To' =>
|
mail 'In-Reply-To' =>
|
||||||
"<event-#{event.id}@#{ActionMailer::Base.default_url_options[:host]}>",
|
"<event-#{event.id}@#{ActionMailer::Base.default_url_options[:host]}>",
|
||||||
to: event.submitter,
|
to: event.submitter,
|
||||||
subject: t('event_mailer.destroy.subject', subject: event.title)
|
subject: t('mail_suffix') +
|
||||||
|
t('event_mailer.destroy.subject', subject: event.title)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
@ -7,7 +7,8 @@ class ModerationMailer < ActionMailer::Base
|
|||||||
|
|
||||||
mail 'Message-ID' =>
|
mail 'Message-ID' =>
|
||||||
"<mod-#{event.id}@#{ActionMailer::Base.default_url_options[:host]}>",
|
"<mod-#{event.id}@#{ActionMailer::Base.default_url_options[:host]}>",
|
||||||
subject: t('moderation_mailer.create.subject', subject: event.title)
|
subject: t('mail_suffix') +
|
||||||
|
t('moderation_mailer.create.subject', subject: event.title)
|
||||||
end
|
end
|
||||||
|
|
||||||
def update(older_event, event, current_user)
|
def update(older_event, event, current_user)
|
||||||
@ -17,7 +18,8 @@ class ModerationMailer < ActionMailer::Base
|
|||||||
|
|
||||||
mail 'In-Reply-To' =>
|
mail 'In-Reply-To' =>
|
||||||
"<mod-#{event.id}@#{ActionMailer::Base.default_url_options[:host]}>",
|
"<mod-#{event.id}@#{ActionMailer::Base.default_url_options[:host]}>",
|
||||||
subject: t('moderation_mailer.update.subject', subject: event.title)
|
subject: t('mail_suffix') +
|
||||||
|
t('moderation_mailer.update.subject', subject: event.title)
|
||||||
end
|
end
|
||||||
|
|
||||||
def accept(event, current_user)
|
def accept(event, current_user)
|
||||||
@ -26,7 +28,8 @@ class ModerationMailer < ActionMailer::Base
|
|||||||
|
|
||||||
mail 'In-Reply-To' =>
|
mail 'In-Reply-To' =>
|
||||||
"<mod-#{event.id}@#{ActionMailer::Base.default_url_options[:host]}>",
|
"<mod-#{event.id}@#{ActionMailer::Base.default_url_options[:host]}>",
|
||||||
subject: t('moderation_mailer.accept.subject', subject: event.title)
|
subject: t('mail_suffix') +
|
||||||
|
t('moderation_mailer.accept.subject', subject: event.title)
|
||||||
end
|
end
|
||||||
|
|
||||||
def destroy(event, current_user, reason)
|
def destroy(event, current_user, reason)
|
||||||
@ -36,6 +39,7 @@ class ModerationMailer < ActionMailer::Base
|
|||||||
|
|
||||||
mail 'In-Reply-To' =>
|
mail 'In-Reply-To' =>
|
||||||
"<mod-#{event.id}@#{ActionMailer::Base.default_url_options[:host]}>",
|
"<mod-#{event.id}@#{ActionMailer::Base.default_url_options[:host]}>",
|
||||||
subject: t('moderation_mailer.destroy.subject', subject: event.title)
|
subject: t('mail_suffix') +
|
||||||
|
t('moderation_mailer.destroy.subject', subject: event.title)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
@ -9,7 +9,8 @@ class NoteMailer < ActionMailer::Base
|
|||||||
"<event-#{note.event.id}@" \
|
"<event-#{note.event.id}@" \
|
||||||
+ "#{ActionMailer::Base.default_url_options[:host]}>",
|
+ "#{ActionMailer::Base.default_url_options[:host]}>",
|
||||||
to: note.event.submitter,
|
to: note.event.submitter,
|
||||||
subject: t('note_mailer.notify.subject', subject: note.event.title)
|
subject: t('mail_suffix') +
|
||||||
|
t('note_mailer.notify.subject', subject: note.event.title)
|
||||||
end
|
end
|
||||||
|
|
||||||
def create(note)
|
def create(note)
|
||||||
@ -17,6 +18,7 @@ class NoteMailer < ActionMailer::Base
|
|||||||
|
|
||||||
mail 'In-Reply-To' =>
|
mail 'In-Reply-To' =>
|
||||||
"<mod-#{note.event.id}@#{ActionMailer::Base.default_url_options[:host]}>",
|
"<mod-#{note.event.id}@#{ActionMailer::Base.default_url_options[:host]}>",
|
||||||
subject: t('note_mailer.create.subject', subject: note.event.title)
|
subject: t('mail_suffix') +
|
||||||
|
t('note_mailer.create.subject', subject: note.event.title)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
@ -304,7 +304,7 @@ Exemple: `%{daylimit}`"
|
|||||||
|
|
||||||
event_mailer:
|
event_mailer:
|
||||||
create:
|
create:
|
||||||
subject: "[Agenda du Libre] Votre événement: '%{subject}' est en attente
|
subject: "Votre événement: '%{subject}' est en attente
|
||||||
de modération"
|
de modération"
|
||||||
title: Bonjour,
|
title: Bonjour,
|
||||||
body: "Votre événement intitulé '%{subject}',
|
body: "Votre événement intitulé '%{subject}',
|
||||||
@ -316,7 +316,7 @@ pouvez éditer votre événement à l'adresse:"
|
|||||||
delete_link: "et vous pouvez l'annuler en utilisant l'adresse:"
|
delete_link: "et vous pouvez l'annuler en utilisant l'adresse:"
|
||||||
signature: "Merci de votre participation!\n\n-- \nAgenda du Libre"
|
signature: "Merci de votre participation!\n\n-- \nAgenda du Libre"
|
||||||
accept:
|
accept:
|
||||||
subject: "[Agenda du Libre] Événement '%{subject}' modéré"
|
subject: "Événement '%{subject}' modéré"
|
||||||
title: Bonjour,
|
title: Bonjour,
|
||||||
body: "L'événement que vous avez soumis a été modéré par %{moderator}. Il
|
body: "L'événement que vous avez soumis a été modéré par %{moderator}. Il
|
||||||
est maintenant visible dans l'Agenda à l'adresse:"
|
est maintenant visible dans l'Agenda à l'adresse:"
|
||||||
@ -327,7 +327,7 @@ pouvez éditer votre événement à l'adresse:"
|
|||||||
signature: "Merci de votre contribution à l'Agenda du Libre et à
|
signature: "Merci de votre contribution à l'Agenda du Libre et à
|
||||||
bientôt!\n\n-- \nL'équipe de modération"
|
bientôt!\n\n-- \nL'équipe de modération"
|
||||||
destroy:
|
destroy:
|
||||||
subject: "[Agenda du Libre] Événement '%{subject}' refusé"
|
subject: "Événement '%{subject}' refusé"
|
||||||
title: Bonjour,
|
title: Bonjour,
|
||||||
body: Vous avez soumis l'événement suivant dans l'Agenda du Libre, et
|
body: Vous avez soumis l'événement suivant dans l'Agenda du Libre, et
|
||||||
nous vous remercions de cette contribution.
|
nous vous remercions de cette contribution.
|
||||||
@ -338,25 +338,25 @@ pouvez éditer votre événement à l'adresse:"
|
|||||||
\nL'équipe de modération"
|
\nL'équipe de modération"
|
||||||
moderation_mailer:
|
moderation_mailer:
|
||||||
create:
|
create:
|
||||||
subject: "[Agenda du Libre] Nouvel événement à modérer: '%{subject}'"
|
subject: "Nouvel événement à modérer: '%{subject}'"
|
||||||
title: Bonjour,
|
title: Bonjour,
|
||||||
body: Un nouvel événement est à modérer sur
|
body: Un nouvel événement est à modérer sur
|
||||||
signature: "Merci!\n\n-- \nAgenda du Libre"
|
signature: "Merci!\n\n-- \nAgenda du Libre"
|
||||||
update:
|
update:
|
||||||
subject: "[Agenda du Libre] Édition de l'événement '%{subject}'"
|
subject: "Édition de l'événement '%{subject}'"
|
||||||
title: Bonjour,
|
title: Bonjour,
|
||||||
body: "L'événement '%{subject}' a été modifié par
|
body: "L'événement '%{subject}' a été modifié par
|
||||||
%{author}.\n\nModifications apportées:"
|
%{author}.\n\nModifications apportées:"
|
||||||
submitter: le soumetteur
|
submitter: le soumetteur
|
||||||
signature: "Bonne journée\n\n-- \nL'équipe de modération"
|
signature: "Bonne journée\n\n-- \nL'équipe de modération"
|
||||||
accept:
|
accept:
|
||||||
subject: "[Agenda du Libre] Événement '%{subject}' modéré"
|
subject: "Événement '%{subject}' modéré"
|
||||||
title: Bonjour,
|
title: Bonjour,
|
||||||
body: L'événement a été modéré par %{author}.
|
body: L'événement a été modéré par %{author}.
|
||||||
access: "Vous pouvez le consulter ici:"
|
access: "Vous pouvez le consulter ici:"
|
||||||
signature: "-- \nL'équipe de modération"
|
signature: "-- \nL'équipe de modération"
|
||||||
destroy:
|
destroy:
|
||||||
subject: "[Agenda du Libre] Événement '%{subject}' refusé"
|
subject: "Événement '%{subject}' refusé"
|
||||||
title: Bonjour,
|
title: Bonjour,
|
||||||
body: "L'événement '%{subject}' a été rejeté par %{author} pour la raison
|
body: "L'événement '%{subject}' a été rejeté par %{author} pour la raison
|
||||||
suivante:\n\n"
|
suivante:\n\n"
|
||||||
@ -364,7 +364,7 @@ pouvez éditer votre événement à l'adresse:"
|
|||||||
signature: "-- \nL'équipe des modérateurs de l'Agenda du Libre"
|
signature: "-- \nL'équipe des modérateurs de l'Agenda du Libre"
|
||||||
note_mailer:
|
note_mailer:
|
||||||
notify:
|
notify:
|
||||||
subject: "[Agenda du Libre] Demande d'informations sur l'événement '%{subject}'"
|
subject: "Demande d'informations sur l'événement '%{subject}'"
|
||||||
title: Bonjour,
|
title: Bonjour,
|
||||||
body: "Nous avons bien reçu votre proposition d'événement '%{subject}',
|
body: "Nous avons bien reçu votre proposition d'événement '%{subject}',
|
||||||
\net celui-ci a toute sa place dans l'Agenda du Libre. Néanmoins, avant
|
\net celui-ci a toute sa place dans l'Agenda du Libre. Néanmoins, avant
|
||||||
@ -375,7 +375,7 @@ pouvez éditer votre événement à l'adresse:"
|
|||||||
signature: "Avec tous nos remerciements pour votre contribution,\n\n--
|
signature: "Avec tous nos remerciements pour votre contribution,\n\n--
|
||||||
\nL'équipe des modérateurs de l'Agenda du Libre"
|
\nL'équipe des modérateurs de l'Agenda du Libre"
|
||||||
create:
|
create:
|
||||||
subject: "[Agenda du Libre] Une note a été rajoutée à l'événement '%{subject}'"
|
subject: "Une note a été rajoutée à l'événement '%{subject}'"
|
||||||
title: Bonjour,
|
title: Bonjour,
|
||||||
body: "Une note a été rajoutée à '%{subject}':"
|
body: "Une note a été rajoutée à '%{subject}':"
|
||||||
signature: "-- \nL'équipe de modération"
|
signature: "-- \nL'équipe de modération"
|
||||||
|
@ -20,6 +20,8 @@ AdminUser.create email: 'admin@example.com', password: 'password'
|
|||||||
|
|
||||||
# rubocop:disable Metrics/LineLength
|
# rubocop:disable Metrics/LineLength
|
||||||
I18n::Backend::ActiveRecord::Translation.create([
|
I18n::Backend::ActiveRecord::Translation.create([
|
||||||
|
{ locale: 'fr', key: 'mail_suffix', value: '[AdL] ' },
|
||||||
|
|
||||||
{ locale: 'fr', key: 'layouts.application.subtitle',
|
{ locale: 'fr', key: 'layouts.application.subtitle',
|
||||||
value: 'Les événements du Libre en France' },
|
value: 'Les événements du Libre en France' },
|
||||||
|
|
||||||
|
@ -8,7 +8,7 @@ class ModerationMailerTest < ActionMailer::TestCase
|
|||||||
|
|
||||||
test 'create' do
|
test 'create' do
|
||||||
mail = ModerationMailer.create Event.unscoped.last
|
mail = ModerationMailer.create Event.unscoped.last
|
||||||
assert_match(/\[Agenda du Libre\] Nouvel événement à modérer: .*/,
|
assert_match(/Nouvel événement à modérer: .*/,
|
||||||
mail.subject)
|
mail.subject)
|
||||||
assert_equal ['moderateurs@agendadulibre.org'], mail.to
|
assert_equal ['moderateurs@agendadulibre.org'], mail.to
|
||||||
assert_equal ['moderateurs@agendadulibre.org'], mail.from
|
assert_equal ['moderateurs@agendadulibre.org'], mail.from
|
||||||
@ -24,7 +24,7 @@ class ModerationMailerTest < ActionMailer::TestCase
|
|||||||
hello world'
|
hello world'
|
||||||
|
|
||||||
mail = ModerationMailer.update older_event, event, User.last
|
mail = ModerationMailer.update older_event, event, User.last
|
||||||
assert_match(/\[Agenda du Libre\] Édition de l'événement .*/, mail.subject)
|
assert_match(/Édition de l'événement .*/, mail.subject)
|
||||||
assert_equal ['moderateurs@agendadulibre.org'], mail.to
|
assert_equal ['moderateurs@agendadulibre.org'], mail.to
|
||||||
assert_equal ['moderateurs@agendadulibre.org'], mail.from
|
assert_equal ['moderateurs@agendadulibre.org'], mail.from
|
||||||
assert_match(/^{/, mail.body.to_s)
|
assert_match(/^{/, mail.body.to_s)
|
||||||
@ -32,7 +32,7 @@ hello world'
|
|||||||
|
|
||||||
test 'accept' do
|
test 'accept' do
|
||||||
mail = ModerationMailer.accept Event.unscoped.last, User.last
|
mail = ModerationMailer.accept Event.unscoped.last, User.last
|
||||||
assert_match(/\[Agenda du Libre\] Événement .* modéré/, mail.subject)
|
assert_match(/Événement .* modéré/, mail.subject)
|
||||||
assert_equal ['moderateurs@agendadulibre.org'], mail.to
|
assert_equal ['moderateurs@agendadulibre.org'], mail.to
|
||||||
assert_equal ['moderateurs@agendadulibre.org'], mail.from
|
assert_equal ['moderateurs@agendadulibre.org'], mail.from
|
||||||
end
|
end
|
||||||
@ -40,7 +40,7 @@ hello world'
|
|||||||
test 'destroy' do
|
test 'destroy' do
|
||||||
mail = ModerationMailer.destroy Event.unscoped.last, User.last,
|
mail = ModerationMailer.destroy Event.unscoped.last, User.last,
|
||||||
'hello world'
|
'hello world'
|
||||||
assert_match(/\[Agenda du Libre\] Événement .* refusé/, mail.subject)
|
assert_match(/Événement .* refusé/, mail.subject)
|
||||||
assert_equal ['moderateurs@agendadulibre.org'], mail.to
|
assert_equal ['moderateurs@agendadulibre.org'], mail.to
|
||||||
assert_equal ['moderateurs@agendadulibre.org'], mail.from
|
assert_equal ['moderateurs@agendadulibre.org'], mail.from
|
||||||
end
|
end
|
||||||
|
@ -9,7 +9,7 @@ class NoteMailerTest < ActionMailer::TestCase
|
|||||||
|
|
||||||
test 'notify' do
|
test 'notify' do
|
||||||
mail = NoteMailer.notify Note.last
|
mail = NoteMailer.notify Note.last
|
||||||
assert_match(/\[Agenda du Libre\] Demande d'informations sur l'événement.*/,
|
assert_match(/Demande d'informations sur l'événement.*/,
|
||||||
mail.subject)
|
mail.subject)
|
||||||
assert_equal [Note.last.event.contact], mail.to
|
assert_equal [Note.last.event.contact], mail.to
|
||||||
assert_equal ['moderateurs@agendadulibre.org'], mail.from
|
assert_equal ['moderateurs@agendadulibre.org'], mail.from
|
||||||
@ -17,7 +17,7 @@ class NoteMailerTest < ActionMailer::TestCase
|
|||||||
|
|
||||||
test 'create' do
|
test 'create' do
|
||||||
mail = NoteMailer.create Note.last
|
mail = NoteMailer.create Note.last
|
||||||
assert_match(/\[Agenda du Libre\] Une note a été rajoutée à l'événement.*/,
|
assert_match(/Une note a été rajoutée à l'événement.*/,
|
||||||
mail.subject)
|
mail.subject)
|
||||||
assert_not_equal [Note.last.event.contact], mail.to
|
assert_not_equal [Note.last.event.contact], mail.to
|
||||||
assert_equal ['moderateurs@agendadulibre.org'], mail.from
|
assert_equal ['moderateurs@agendadulibre.org'], mail.from
|
||||||
|
Loading…
Reference in New Issue
Block a user