|
- <?php
-
- /**
- Copyright La boîte à pain (2018)
-
- contact@laboiteapain.net
-
- 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.
- */
-
- namespace backend\models;
-
- use Yii;
- use yii\base\Model;
-
- /**
- * ContactForm is the model behind the contact form.
- */
- class MailForm extends Model
- {
-
- public $subject;
- public $message;
-
- /**
- * @inheritdoc
- */
- public function rules()
- {
- return [
- [['subject', 'message'], 'required', 'message' => 'Champs obligatoire'],
- ];
- }
-
- /**
- * @inheritdoc
- */
- public function attributeLabels()
- {
- return [
- 'subject' => 'Sujet',
- 'message' => 'Message',
- ];
- }
-
- /**
- * Envoie un email aux utilisateurs d'un point de vente ou à tous les
- * utilisateurs d'un producteur.
- *
- * @param integer $idPointSale ID du point de vente
- */
- public function sendEmail($usersArray)
- {
- $producer = Producer::getCurrent() ;
-
- $mj = new \Mailjet\Client(
- $producer->getApiKeyMailjet('public'),
- $producer->getApiKeyMailjet('private'),
- true,
- ['version' => 'v3.1']
- );
-
- $body = ['Messages' => []] ;
-
- foreach($usersArray as $user) {
- $body['Messages'][] = [
- 'From' => [
- 'Email' => $producer->slug.'@laboiteapain.net',
- 'Name' => $producer->name
- ],
- 'To' => [
- [
- 'Email' => $user['email'],
- 'Name' => $user['name'].' '.$user['lastname']
- ]
- ],
- 'Subject' => $this->subject,
- 'TextPart' => $this->message,
- 'HTMLPart' => nl2br($this->message)
- ] ;
- }
-
- $response = $mj->post(\Mailjet\Resources::$Email, ['body' => $body]);
-
- return $response->success() ;
- }
-
- }
|