@@ -43,6 +43,7 @@ use domain\Distribution\Distribution\Distribution; | |||
use domain\Document\DeliveryNote\DeliveryNote; | |||
use domain\Order\Order\Order; | |||
use domain\Payment\Payment; | |||
use domain\Producer\Producer\Producer; | |||
use domain\Product\Product\Product; | |||
use domain\Ticket\Ticket\Ticket; | |||
use domain\Ticket\TicketMessage\TicketMessage; | |||
@@ -223,6 +224,10 @@ return [ | |||
TicketMessage::class => [ | |||
// Envoi email nouveau message ticket à l'administrateur | |||
\domain\Ticket\TicketMessage\Event\TicketMessageObserver::class, | |||
], | |||
Producer::class => [ | |||
// Envoi d'un email à l'administrateur quand un nouveau témoignage est saisi par un producteur | |||
domain\Producer\Producer\Event\ProducerObserver::class | |||
] | |||
], | |||
], |
@@ -0,0 +1,45 @@ | |||
<?php | |||
/** | |||
Copyright Souke (2018) | |||
contact@souke.fr | |||
Ce logiciel est un programme informatique servant à aider les producteurs | |||
à distribuer leur production en circuits courts. | |||
Ce logiciel est régi par la licence CeCILL soumise au droit français et | |||
respectant les principes de diffusion des logiciels libres. Vous pouvez | |||
utiliser, modifier et/ou redistribuer ce programme sous les conditions | |||
de la licence CeCILL telle que diffusée par le CEA, le CNRS et l'INRIA | |||
sur le site "http://www.cecill.info". | |||
En contrepartie de l'accessibilité au code source et des droits de copie, | |||
de modification et de redistribution accordés par cette licence, il n'est | |||
offert aux utilisateurs qu'une garantie limitée. Pour les mêmes raisons, | |||
seule une responsabilité restreinte pèse sur l'auteur du programme, le | |||
titulaire des droits patrimoniaux et les concédants successifs. | |||
A cet égard l'attention de l'utilisateur est attirée sur les risques | |||
associés au chargement, à l'utilisation, à la modification et/ou au | |||
développement et à la reproduction du logiciel par l'utilisateur étant | |||
donné sa spécificité de logiciel libre, qui peut le rendre complexe à | |||
manipuler et qui le réserve donc à des développeurs et des professionnels | |||
avertis possédant des connaissances informatiques approfondies. Les | |||
utilisateurs sont donc invités à charger et tester l'adéquation du | |||
logiciel à leurs besoins dans des conditions permettant d'assurer la | |||
sécurité de leurs systèmes et ou de leurs données et, plus généralement, | |||
à l'utiliser et l'exploiter dans les mêmes conditions de sécurité. | |||
Le fait que vous puissiez accéder à cet en-tête signifie que vous avez | |||
pris connaissance de la licence CeCILL, et que vous en avez accepté les | |||
termes. | |||
*/ | |||
use yii\helpers\Html; | |||
?> | |||
<p>Un nouveau témoignage vient d'être ajouté par <strong><?= Html::encode($producer->name) ?></strong>.</p> | |||
@@ -0,0 +1,45 @@ | |||
<?php | |||
/** | |||
Copyright Souke (2018) | |||
contact@souke.fr | |||
Ce logiciel est un programme informatique servant à aider les producteurs | |||
à distribuer leur production en circuits courts. | |||
Ce logiciel est régi par la licence CeCILL soumise au droit français et | |||
respectant les principes de diffusion des logiciels libres. Vous pouvez | |||
utiliser, modifier et/ou redistribuer ce programme sous les conditions | |||
de la licence CeCILL telle que diffusée par le CEA, le CNRS et l'INRIA | |||
sur le site "http://www.cecill.info". | |||
En contrepartie de l'accessibilité au code source et des droits de copie, | |||
de modification et de redistribution accordés par cette licence, il n'est | |||
offert aux utilisateurs qu'une garantie limitée. Pour les mêmes raisons, | |||
seule une responsabilité restreinte pèse sur l'auteur du programme, le | |||
titulaire des droits patrimoniaux et les concédants successifs. | |||
A cet égard l'attention de l'utilisateur est attirée sur les risques | |||
associés au chargement, à l'utilisation, à la modification et/ou au | |||
développement et à la reproduction du logiciel par l'utilisateur étant | |||
donné sa spécificité de logiciel libre, qui peut le rendre complexe à | |||
manipuler et qui le réserve donc à des développeurs et des professionnels | |||
avertis possédant des connaissances informatiques approfondies. Les | |||
utilisateurs sont donc invités à charger et tester l'adéquation du | |||
logiciel à leurs besoins dans des conditions permettant d'assurer la | |||
sécurité de leurs systèmes et ou de leurs données et, plus généralement, | |||
à l'utiliser et l'exploiter dans les mêmes conditions de sécurité. | |||
Le fait que vous puissiez accéder à cet en-tête signifie que vous avez | |||
pris connaissance de la licence CeCILL, et que vous en avez accepté les | |||
termes. | |||
*/ | |||
use yii\helpers\Html; | |||
?> | |||
Un nouveau témoignage vient d'être ajouté par <?= Html::encode($producer->name) ?>. | |||
@@ -0,0 +1,20 @@ | |||
<?php | |||
namespace domain\Producer\Producer\Event; | |||
use domain\Producer\Producer\ProducerModule; | |||
use justcoded\yii2\eventlistener\observers\ActiveRecordObserver; | |||
class ProducerObserver extends ActiveRecordObserver | |||
{ | |||
public function updated(\yii\db\AfterSaveEvent $event) | |||
{ | |||
$producer = $event->sender; | |||
if(isset($event->changedAttributes['option_testimony']) | |||
&& !strlen($event->changedAttributes['option_testimony']) | |||
&& strlen($producer->option_testimony)) { | |||
ProducerModule::getInstance()->getNotifier()->sendEmailAdminNewTestimony($producer); | |||
} | |||
} | |||
} |
@@ -13,6 +13,7 @@ class ProducerModule extends AbstractModule | |||
ProducerSolver::class, | |||
ProducerRepository::class, | |||
ProducerBuilder::class, | |||
ProducerNotifier::class, | |||
ProducerManager::class, | |||
ProducerPageSizer::class, | |||
DolibarrProducerUtils::class, | |||
@@ -40,6 +41,11 @@ class ProducerModule extends AbstractModule | |||
return ProducerBuilder::getInstance(); | |||
} | |||
public function getNotifier(): ProducerNotifier | |||
{ | |||
return ProducerNotifier::getInstance(); | |||
} | |||
public function getUtils(): ProducerManager | |||
{ | |||
return ProducerManager::getInstance(); |
@@ -0,0 +1,19 @@ | |||
<?php | |||
namespace domain\Producer\Producer; | |||
use domain\_\AbstractNotifier; | |||
class ProducerNotifier extends AbstractNotifier | |||
{ | |||
public function sendEmailAdminNewTestimony(Producer $producer) | |||
{ | |||
$this->mailer->sendAdmin( | |||
'Nouveau témoignage de '.$producer->name, | |||
'newProducerTestimony', | |||
[ | |||
'producer' => $producer, | |||
] | |||
); | |||
} | |||
} |