request->referrer; $model = $this->module->model; if (\Yii::$app->request->isPost and $model->load(\Yii::$app->request->post())) { if ($model instanceof DynamicModel) { $this->sendEmail($model); } else { if ($model->save()) { if ($this->module->sendEmail) { $this->sendEmail($model); return $this->redirect($returnUrl); } } else { return false; } } return $this->redirect($returnUrl); } return $this->redirect($returnUrl); } /** * Action that saves data submited via AJAX * * @return array * @throws \yii\base\InvalidConfigException */ public function actionAjax() { \Yii::$app->response->format = Response::FORMAT_JSON; $model = $this->module->model; #die(var_dump(\Yii::$app->request->post())); if (\Yii::$app->request->isPost and $model->load(\Yii::$app->request->post())) { if ($model instanceof DynamicModel) { $this->sendEmail($model); return ['status' => 'success']; } else { if ($model->save()) { if ($this->module->sendEmail) { if ($this->module->alternateMailLogic) { $this->sendEmail($model); #MailerComponent::sendListToAdminAfterSubmit(4, ['user_data' => $model->phone]); } else { $this->sendEmail($model); } return ['status' => 'success']; } return ['status' => 'success']; } else { return ['status' => 'error']; } } } return ['status' => 'error']; } /** * @param $model * * @return bool * @throws \yii\base\InvalidConfigException */ public function sendEmail($model) { $settings = Settings::getInstance(); if ($this->module->mailer == null) { $mailer = \Yii::$app->mailer; } else { $mailer = \Yii::$app->get($this->module->mailer); } $mail = Mail::findOne(1); $newMails = explode(";" . $mail->user); $setToList = array_merge([$this->module->email], $newMails); return $mailer->compose( [ 'html' => $this->module->emailFile, 'text' => $this->module->emailFile, ], [$model] ) ->setFrom([\Yii::$app->params['supportEmail'] => \Yii::$app->name . ' robot']) ->setTo($setToList) ->setSubject($this->module->subject) ->send(); } }