|
- <?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.
- */
-
- namespace common\forms;
-
- use domain\Producer\Producer\Producer;
- use Yii;
- use yii\base\Model;
-
- /**
- * ContactForm is the model behind the contact form.
- */
- class ContactForm extends Model
- {
-
- public $name;
- public $email;
- public $subject;
- public $body;
- public $verifyCode;
- public $isTest;
-
- /**
- * @inheritdoc
- */
- public function rules()
- {
- return [
- [['name', 'email', 'subject', 'body'], 'required', 'message' => 'Champs obligatoire'],
- ['email', 'email', 'message' => 'Email incorrect'],
- ['isTest', 'string'],
- ['verifyCode', 'captcha', 'message' => 'Veuillez recopier le code de vérification', 'when' => function($model) {
- return $model->isTest != 'isTest';
- }],
- ];
- }
-
- /**
- * @inheritdoc
- */
- public function attributeLabels()
- {
- return [
- 'name' => 'Nom',
- 'email' => 'Email',
- 'subject' => 'Sujet',
- 'body' => 'Message',
- 'verifyCode' => 'Code de vérification',
- ];
- }
-
- /**
- * Sends an email to the specified email address using the information collected by this model.
- *
- * @param string $email the target email address
- * @return boolean whether the email was sent
- */
- public function sendEmail(Producer $producer)
- {
- return Yii::$app->mailerService->sendProducer(
- $producer,
- 'Contact : ' . $this->subject,
- 'contact',
- [
- 'content' => $this->body,
- 'name' => $this->name,
- 'email' => $this->email
- ],
- $this->email
- );
- }
-
- public function sendEmailShopSupport(Producer $producer)
- {
- return Yii::$app->mailerService->sendAdmin(
- 'Support > '.$producer->name.' : ' . $this->subject,
- 'contact',
- [
- 'content' => $this->body,
- 'name' => $this->name,
- 'email' => $this->email
- ],
- $this->email
- );
- }
-
- public function sendEmailAdmin()
- {
- return Yii::$app->mailerService->sendAdmin(
- 'Contact : ' . $this->subject,
- 'contact',
- [
- 'content' => $this->body,
- 'name' => $this->name,
- 'email' => $this->email
- ],
- $this->email
- );
- }
- }
|