|
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465 |
- <?php
-
- namespace frontend\models;
-
- 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;
-
- /**
- * @inheritdoc
- */
- public function rules() {
- return [
- // name, email, subject and body are required
- [['name', 'email', 'subject', 'body'], 'required', 'message' => 'Champs obligatoire'],
- // email has to be a valid email address
- ['email', 'email', 'message' => 'Email incorrect'],
- // verifyCode needs to be entered correctly
- ['verifyCode', 'captcha', 'message' => 'Veuillez recopier le code de vérification'],
- ];
- }
-
- /**
- * @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($email) {
-
- return Yii::$app->mailer->compose([
- 'html' => 'contact-html',
- 'text' => 'contact-text'], [ 'content' => $this->body,
- 'nom' => $this->name
- ])
- ->setTo($email)
- ->setFrom([$this->email => $this->name])
- ->setSubject('[La boîte à pain] Contact : ' . $this->subject)
- ->send();
- }
-
- }
|