Commit 3f916835 by Julien Jorry

Receipt of cotisation : change email notifications

parent 7f30a647
...@@ -65,7 +65,9 @@ class UserController extends AbstractController ...@@ -65,7 +65,9 @@ class UserController extends AbstractController
$form->handleRequest($request); $form->handleRequest($request);
if ('nextyear' === $type) { if ('nextyear' === $type) {
$nextYear = new \DateTime('+1 year'); $nextYear = new \DateTime('+1 year');
$kohYear = (string) $nextYear->format('Y'); $startDate = $this->cotisationUtils->isCotisationValid($this->getUser());
$endDate = new \DateTime(date('Y-m-d H:i:s', strtotime('+1 year', strtotime($startDate->format('Y-m-d H:i:s')))));
$kohYear = (string) $endDate->format('Y');
} else { } else {
$now = new \DateTime(); $now = new \DateTime();
$kohYear = (string) $now->format('Y'); $kohYear = (string) $now->format('Y');
...@@ -80,12 +82,11 @@ class UserController extends AbstractController ...@@ -80,12 +82,11 @@ class UserController extends AbstractController
} }
if ('nextyear' === $type) { if ('nextyear' === $type) {
// Cotiser pour l'année suivante // Cotiser pour l'année suivante
$nextYear = new \DateTime('+1 year');
$startDate = $this->cotisationUtils->isCotisationValid($this->getUser()); $startDate = $this->cotisationUtils->isCotisationValid($this->getUser());
$cotisation->getCotisationInfos()->setAnnee((string) $nextYear->format('Y'));
$cotisation->getCotisationInfos()->setDebut($startDate); $cotisation->getCotisationInfos()->setDebut($startDate);
$endDate = new \DateTime(date('Y-m-d H:i:s', strtotime('+1 year', strtotime($startDate->format('Y-m-d H:i:s'))))); $endDate = new \DateTime(date('Y-m-d H:i:s', strtotime('+1 year', strtotime($startDate->format('Y-m-d H:i:s')))));
$cotisation->getCotisationInfos()->setFin($endDate); $cotisation->getCotisationInfos()->setFin($endDate);
$cotisation->getCotisationInfos()->setAnnee((string) $endDate->format('Y'));
} }
if (MoyenEnum::MOYEN_EMLC == $cotisation->getMoyen()) { if (MoyenEnum::MOYEN_EMLC == $cotisation->getMoyen()) {
try { try {
......
...@@ -211,6 +211,7 @@ class MLCEventListener implements EventSubscriberInterface ...@@ -211,6 +211,7 @@ class MLCEventListener implements EventSubscriberInterface
$template = $this->getEmailTemplate($flux, $type); $template = $this->getEmailTemplate($flux, $type);
} }
$usertype = (('exp' == $type && $flux->getExpediteur() instanceof Prestataire) || ('des' == $type && $flux->getDestinataire() instanceof Prestataire)) ? 'prestataire' : 'adhérent'; $usertype = (('exp' == $type && $flux->getExpediteur() instanceof Prestataire) || ('des' == $type && $flux->getDestinataire() instanceof Prestataire)) ? 'prestataire' : 'adhérent';
$subject = $this->translator->trans($type . '_' . $flux->getType() . '_email_subject', [ $subject = $this->translator->trans($type . '_' . $flux->getType() . '_email_subject', [
'%mlcshortname%' => $this->em->getRepository(GlobalParameter::class)->val(GlobalParameter::MLC_NAME_SMALL), '%mlcshortname%' => $this->em->getRepository(GlobalParameter::class)->val(GlobalParameter::MLC_NAME_SMALL),
'%mlcname%' => $this->em->getRepository(GlobalParameter::class)->val(GlobalParameter::MLC_NAME), '%mlcname%' => $this->em->getRepository(GlobalParameter::class)->val(GlobalParameter::MLC_NAME),
...@@ -223,6 +224,7 @@ class MLCEventListener implements EventSubscriberInterface ...@@ -223,6 +224,7 @@ class MLCEventListener implements EventSubscriberInterface
'%moyen%' => $flux->getMoyen(), '%moyen%' => $flux->getMoyen(),
'%montant%' => $flux->getMontant(), '%montant%' => $flux->getMontant(),
], 'flux'); ], 'flux');
$mail = (new \Swift_Message($subject)) $mail = (new \Swift_Message($subject))
->setFrom($this->em->getRepository(GlobalParameter::class)->val(GlobalParameter::MLC_NOTIF_EMAIL)) ->setFrom($this->em->getRepository(GlobalParameter::class)->val(GlobalParameter::MLC_NOTIF_EMAIL))
->setTo($user->getEmail()) ->setTo($user->getEmail())
...@@ -254,9 +256,9 @@ class MLCEventListener implements EventSubscriberInterface ...@@ -254,9 +256,9 @@ class MLCEventListener implements EventSubscriberInterface
$template = '@kohinos/email/notification_flux.html.twig'; $template = '@kohinos/email/notification_flux.html.twig';
if ($this->templating->getLoader()->exists('@kohinos/email/flux/' . $type . '_' . $flux->getParentType() . '.html.twig')) { if ($this->templating->getLoader()->exists('@kohinos/email/flux/' . $type . '_' . $flux->getParentType() . '.html.twig')) {
$template = '@kohinos/email/flux/' . $type . '_' . $flux->getParentType() . '.html.twig'; $template = '@kohinos/email/flux/' . $type . '_' . $flux->getParentType() . '.html.twig';
if ($this->templating->getLoader()->exists('@kohinos/email/flux/' . $type . '_' . $flux->getParentType() . '-' . $flux->getType() . '.html.twig')) { }
$template = '@kohinos/email/flux/' . $type . '_' . $flux->getParentType() . '-' . $flux->getType() . '.html.twig'; if ($this->templating->getLoader()->exists('@kohinos/email/flux/' . $type . '_' . $flux->getType() . '.html.twig')) {
} $template = '@kohinos/email/flux/' . $type . '_' . $flux->getType() . '.html.twig';
} }
return $template; return $template;
......
{% extends '@kohinos/email/email_layout.html.twig' %}
{% set title %}{% spaceless %}
{{ subject }}
{% endspaceless %}
{% endset %}
{% block content %}
<h2 style="font-size: 18px; color: #111111; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; font-weight: bold; line-height: 1.2em; margin: 40px 0 10px;"><strong><u>Objet :</u> Cotisation annuelle de l'adherent {{ flux.expediteur }}</strong></h2><br/>
<p>De : {{ flux.operateur.email }}</p>
<br/>
<p>Expéditeur : {{ flux.expediteur }}</p>
<p>Destinataire : {{ flux.destinataire }}</p>
<p>Date :</p>
<p>Valable du {{ flux.cotisationInfos ? flux.cotisationInfos.debut|date('d/m/Y') }} au {{ flux.cotisationInfos ? flux.cotisationInfos.fin|date('d/m/Y') }}</p>
<p>Montant : <strong>{{ flux.montant|number_format(2) }} </strong></p>
<p>Moyen : {{ flux.moyen }}</p>
<br/>
{% endblock %}
\ No newline at end of file
{% extends '@kohinos/email/email_layout.html.twig' %}
{% set title %}{% spaceless %}
{{ subject }}
{% endspaceless %}
{% endset %}
{% block content %}
<h2 style="font-size: 18px; color: #111111; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; font-weight: bold; line-height: 1.2em; margin: 40px 0 10px;"><strong><u>Objet :</u> Cotisation annuelle du prestataire {{ flux.expediteur }}</strong></h2><br/>
<p>De : {{ flux.operateur.email }}</p>
<br/>
<p>Expéditeur : {{ flux.expediteur }}</p>
<p>Destinataire : {{ flux.destinataire }}</p>
<p>Date :</p>
<p>Valable du {{ flux.cotisationInfos ? flux.cotisationInfos.debut|date('d/m/Y') }} au {{ flux.cotisationInfos ? flux.cotisationInfos.fin|date('d/m/Y') }}</p>
<p>Montant : <strong>{{ flux.montant|number_format(2) }} </strong></p>
<p>Moyen : {{ flux.moyen }}</p>
<br/>
{% endblock %}
\ No newline at end of file
{% extends '@kohinos/email/email_layout.html.twig' %} {% extends '@kohinos/email/email_layout.html.twig' %}
{% set title %}{% spaceless %} {% set title %}{% spaceless %}
{{ subject }} {{ subject }}
{% endspaceless %} {% endspaceless %}
{% endset %} {% endset %}
{% block content %} {% block content %}
<h2 style="font-size: 18px; color: #111111; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; font-weight: bold; line-height: 1.2em; margin: 40px 0 10px;">{{ user.name|title }}</h2><br/> <h2 style="font-size: 18px; color: #111111; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; font-weight: bold; line-height: 1.2em; margin: 40px 0 10px;"><strong><u>Objet :</u> Reçu de votre cotisation annuelle à l'association {{KOH_MLC_NAME_SMALL}}</strong></h2><br/>
<h3> <p>De : {{ flux.operateur.email }}</p>
{{ flux.parenttype|capitalize }} : {{ flux.type|replace({'_' : ' => '}) }} <br/>
</h3> <p>Expéditeur : {{ flux.expediteur }}</p>
<p>De {{ flux.expediteur }} à {{ flux.destinataire }}</p> <p>Destinataire : {{ flux.destinataire }}</p>
<p>Montant de {{ flux.montant|number_format(2) }} (Moyen : {{ flux.moyen }})</p> <p>Date :</p>
<p>Référence : {{ flux.reference }}</p> <p>Valable du {{ flux.cotisationInfos ? flux.cotisationInfos.debut|date('d/m/Y') }} au {{ flux.cotisationInfos ? flux.cotisationInfos.fin|date('d/m/Y') }}</p>
<p>Opérateur : {{ flux.operateur ? flux.operateur.name : '' }}</p> <p>Montant : <strong>{{ flux.montant|number_format(2) }} </strong></p>
<p>Moyen : {{ flux.moyen }}</p>
<p>Nous vous remercions de votre soutien</p>
<br/>
<br/>
<hr/>
<br/>
<p>"TVA non applicable, article 293 B du Code général des impôts"</p>
{% endblock %} {% endblock %}
\ No newline at end of file
...@@ -42,8 +42,8 @@ exp_validate_demande_achat_monnaie_email_subject: 'Validation d''achat de monnai ...@@ -42,8 +42,8 @@ exp_validate_demande_achat_monnaie_email_subject: 'Validation d''achat de monnai
exp_validate_achat_monnaie_prestataire_email_subject: 'Validation d''achat de monnaie numérique' exp_validate_achat_monnaie_prestataire_email_subject: 'Validation d''achat de monnaie numérique'
exp_demande_achat_monnaie_adherent_email_subject: 'Demande d''achat de monnaie numérique' exp_demande_achat_monnaie_adherent_email_subject: 'Demande d''achat de monnaie numérique'
exp_demande_achat_monnaie_prestataire_email_subject: 'Demande d''achat de monnaie numérique' exp_demande_achat_monnaie_prestataire_email_subject: 'Demande d''achat de monnaie numérique'
exp_cotisation_adherent_email_subject: Cotisation exp_cotisation_adherent_email_subject: 'Reçu de votre cotisation annuelle à l''association %mlcshortname%'
exp_cotisation_prestataire_email_subject: Cotisation exp_cotisation_prestataire_email_subject: 'Reçu de votre cotisation annuelle à l''association %mlcshortname%'
exp_reconversion_prestataire_email_subject: Reconversion exp_reconversion_prestataire_email_subject: Reconversion
exp_retrait_adherent_email_subject: 'Retrait de billets d''un adhérent' exp_retrait_adherent_email_subject: 'Retrait de billets d''un adhérent'
exp_retrait_prestataire_email_subject: 'Retrait de billets d''un prestataire' exp_retrait_prestataire_email_subject: 'Retrait de billets d''un prestataire'
...@@ -70,8 +70,8 @@ des_validate_achat_monnaie_adherent_email_subject: 'Demande d''achat de monnaie ...@@ -70,8 +70,8 @@ des_validate_achat_monnaie_adherent_email_subject: 'Demande d''achat de monnaie
des_validate_achat_monnaie_prestataire_email_subject: 'Demande d''achat de monnaie numérique validée, votre compte est crédité' des_validate_achat_monnaie_prestataire_email_subject: 'Demande d''achat de monnaie numérique validée, votre compte est crédité'
des_demande_achat_monnaie_adherent_email_subject: 'Demande d''achat de monnaie numérique' des_demande_achat_monnaie_adherent_email_subject: 'Demande d''achat de monnaie numérique'
des_demande_achat_monnaie_prestataire_email_subject: 'Demande d''achat de monnaie numérique' des_demande_achat_monnaie_prestataire_email_subject: 'Demande d''achat de monnaie numérique'
des_cotisation_adherent_email_subject: Cotisation des_cotisation_adherent_email_subject: 'Cotisation annuelle de l''adherent %expediteur%'
des_cotisation_prestataire_email_subject: Cotisation des_cotisation_prestataire_email_subject: 'Cotisation annuelle du prestataire %expediteur%'
des_reconversion_prestataire_email_subject: Reconversion des_reconversion_prestataire_email_subject: Reconversion
des_retrait_adherent_email_subject: 'Retrait de billets d''un adhérent' des_retrait_adherent_email_subject: 'Retrait de billets d''un adhérent'
des_retrait_prestataire_email_subject: 'Retrait de billets d''un prestataire' des_retrait_prestataire_email_subject: 'Retrait de billets d''un prestataire'
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment