public function processSurveys(array $surveys) { foreach ($surveys as $survey) { if ($survey->surveyInfo == null) { $info = new SurveyInfo(); $info->surveyId = $survey->sid; $info->surveyType = $survey->location; $survey->surveyInfo = $info; } if ($survey->surveyInfo->isActive == null) { $survey->surveyInfo->isActive = $survey->isActive(); $survey->surveyInfo->save(); } else { if ($survey->surveyInfo->isActive && $survey->surveyInfo->isActive != $survey->isActive()) { $attachedFiles = AttachedFile::model()->findAllByAttributes(array('fileType' => AttachedFile::FILE_TYPE_FULL_ANALYTICS, 'modelId' => $survey->sid, 'modelType' => get_class($survey))); $linksToFiles = array(); $filesToAttachment = array(); foreach ($attachedFiles as $file) { if ($file->attachType == AttachedFile::ATTACH_TYPE_LINK) { $linksToFiles[$file->filePath] = $file->name; } elseif ($file->attachType == AttachedFile::ATTACH_TYPE_FILE) { $filesToAttachment[$file->filePath] = $file->fileName; } } $exportHelper = new ExcelExportSurveyHelper($survey); $res = $exportHelper->export(); if ($res != null) { $excelFilepath = "/tmp/" . md5(time() . "_" . $survey->sid . "_" . $survey->location) . '.xls'; file_put_contents($excelFilepath, $res['content']); $filesToAttachment[$excelFilepath] = 'Массив данных в Excel.xls'; } $mail = new YiiMailer(); $mail->setFrom(Yii::app()->params['adminEmail'], 'Администраток ЛК'); $mail->setTo(Yii::app()->params['adminEmail']); $mail->setSubject('Опрос перешёл в список завершённых.'); $mail->setView('surveyChangeActivity'); $mail->setData(array('survey' => $survey, 'linksToFiles' => $linksToFiles)); $mail->setAttachment($filesToAttachment); echo "[" . date("Y-m-d H:i:s") . "] try to send mail\n"; if (!$mail->send()) { echo "[" . date("Y-m-d H:i:s") . "] fail \n"; print_r($mail->getError()); echo PHP_EOL; } $survey->surveyInfo->isActive = $survey->isActive(); $survey->surveyInfo->save(); } } } }
public function sendMailSorry($email) { try { $this->title = "Mail test"; $mail = new YiiMailer(); $mail->setView('sorry'); $mail->setFrom('*****@*****.**', 'John Doe'); $mail->setSubject('Confirm your order'); $mail->setTo($email); $mail->send(); var_dump($mail->getError()); } catch (Exception $e) { var_dump($e->getMessage()); } }
public static function sendRecoveryPasswordEmail($user, $newPassword) { $mail = new YiiMailer(); $mail->setLayout('mail'); $mail->setView('recoveryPassword'); $mail->setData(array('administrator' => $user, 'new_password' => $newPassword)); $mail->setFrom('*****@*****.**', Yii::app()->params['SITE_NAME']); $mail->setTo($user->username); $mail->setSubject(Yii::t(Yii::app()->params['TRANSLATE_FILE'], 'Instruction to recovery password from ' . Yii::app()->params['SITE_NAME'] . ' system')); if ($mail->send()) { return null; } else { return $mail->getError(); } }
public static function emailStudentActivation($user, $hash) { $student = Student::model()->with('college', 'program', 'educationLevel')->findByPk($user->user_id); $mail = new YiiMailer('studentActivation', array('student' => $student, 'user' => $user, 'hash' => $hash)); $mail->render(); $mail->From = Yii::app()->params['nonReplyEmail']; $mail->FromName = Yii::app()->name; $mail->Subject = Yii::app()->name . ' - Student account verification'; $mail->AddAddress(YII_DEBUG ? Yii::app()->params['adminEmail'] : $user->email); if ($mail->Send()) { $mail->ClearAddresses(); Yii::log("Mail sent via " . Yii::app()->params['nonReplyEmail'], 'log'); Yii::log("Mail sent successfully to " . (YII_DEBUG ? Yii::app()->params['adminEmail'] : $user->email), 'log'); return true; } else { Yii::log("Email error: " . $mail->getError(), 'log'); return false; } }
public function send() { $mailer = new YiiMailer(); $maildata = $this->args; if ($this->view) { $mailer->setView($this->view); } $mailer->setData($maildata); $mailer->setFrom($this->from, $this->fromUser); $mailer->setTo($this->to); $mailer->setSubject($this->subject); $mailer->setBody($this->body); $sent = $mailer->send(); if ($sent) { return array('status' => true, 'error' => ''); } else { return array('status' => false, 'error' => $mailer->getError()); } }
public function run($args) { //Do some cron processing... $cronResult = "Cron job finished successfuly"; $mail = new YiiMailer(); //use "cron" view from views/mail $mail->setView('cron'); $mail->setData(array('message' => $cronResult, 'name' => get_class($this), 'description' => 'Cron job', 'mailer' => $mail)); //set properties $mail->setFrom('*****@*****.**', 'Console application'); $mail->setSubject($cronResult); $mail->setTo('*****@*****.**'); $mail->setAttachment(Yii::getPathOfAlias('webroot.files') . '/yii-1.1.0-validator-cheatsheet.pdf'); //send if ($mail->send()) { echo 'Mail sent successfuly'; } else { echo 'Error while sending email: ' . $mail->getError(); } echo PHP_EOL; }
/** * Displays the contact page */ public function actionContact() { $model = new ContactForm(); if (Yii::app()->request->isPostRequest) { $model->attributes = Yii::app()->request->getPost('ContactForm'); if ($model->validate()) { $mail = new YiiMailer('contact', array('message' => $model->body, 'name' => $model->name, 'phone' => $model->phone, 'description' => Yii::t('site', 'Contact form'))); $mail->setFrom($model->email, $model->name); $mail->setSubject(Yii::t('site', 'Контактная форма')); $mail->setTo('*****@*****.**'); if ($mail->send()) { Yii::app()->user->setFlash('success', Yii::t('site', 'Thank you for contacting us. We will respond to you as soon as possible.')); $this->refresh(); } else { Yii::app()->user->setFlash('danger', $mail->getError()); // Yii::app()->user->setFlash('danger', Yii::t('site', 'Something went wrong, please, try again later')); } } } $this->render('contact', array('model' => $model)); }
/** * Displays the contact page */ public function actionContact() { $model = new ContactForm(); if (isset($_POST['ContactForm'])) { $model->attributes = $_POST['ContactForm']; if ($model->validate()) { //use 'contact' view from views/mail $mail = new YiiMailer('contact', array('message' => $model->body, 'name' => $model->name, 'description' => 'Contact form')); //set properties $mail->setFrom($model->email, $model->name); $mail->setSubject($model->subject); $mail->setTo(Yii::app()->params['adminEmail']); //send if ($mail->send()) { Yii::app()->user->setFlash('contact', 'Thank you for contacting us. We will respond to you as soon as possible.'); } else { Yii::app()->user->setFlash('error', 'Error while sending email: ' . $mail->getError()); } $this->refresh(); } } $this->render('contact', array('model' => $model)); }
public static function sendMail($to, $subject, $view, $params) { if ($view != "empty") { $template = Template::model()->findByName($view); if ($template != null) { self::sendMailWithContent($to, $subject, $template->applyParams($params)); return; } } $mail = new YiiMailer($view, $params); //set properties $setting = Yii::app()->params["accounts"]["mail"]; $mail->setFrom($setting["adminEmail"], $setting["admin"]); $mail->setSubject($subject); $mail->setTo($to); $mail->IsSMTP(); $mail->Host = $setting["host"]; $mail->SMTPDebug = 0; $mail->SMTPAuth = true; $mail->SMTPSecure = $setting["smtp"]["secure"]; $mail->Host = $setting["smtp"]["host"]; $mail->Port = $setting["smtp"]["port"]; $mail->Username = $setting["smtp"]["username"]; $mail->Password = $setting["smtp"]["password"]; //send if ($mail->send()) { return; } else { echo "Error while sending email: " . $mail->getError(); return false; } }
public function actionCreate() { // if (!Yii::app()->user->checkAccess('administrator')) { // throw new Http403Exception(); // } $wizard = PublicSurveyRequestWizard::loadWizard(); $surveyRequest = new UserSurveyRequest(); //SurveyRequestHelper::loadSurveyRequestOfCurrentUser(); if (Yii::app()->request->isPostRequest) { $successRequest = true; if ($wizardPost = Yii::app()->request->getPost(get_class($wizard->current()))) { if (!empty($_FILES[get_class($wizard->current())])) { foreach (array_keys($_FILES[get_class($wizard->current())]["name"]) as $fileAttrName) { $wizard->current()->{$fileAttrName} = CUploadedFile::getInstance($wizard->current(), $fileAttrName); } } $wizard->setCurrentData($wizardPost); if (Yii::app()->request->getPost('next')) { if ($successRequest = $wizard->current()->validate()) { $wizard->next(); } } if (Yii::app()->request->getPost('prev')) { $wizard->prev(true); } if (Yii::app()->request->getPost('start')) { if ($successRequest = $wizard->current()->validate()) { $surveyRequest = $this->saveSurveyRequest($wizard, $surveyRequest); $surveyRequest->status = UserSurveyRequest::STATUS_WAITING; $surveyRequest->save(); foreach ($wizard->getFiles() as $name => $file) { $attributes = array('name' => $name, 'fileType' => AttachedFile::FILE_TYPE_SIMPLE_ATTACH, 'attachType' => AttachedFile::ATTACH_TYPE_FILE); AttachedFileHelper::uploadFile(new AttachedFile(), $attributes, get_class($surveyRequest), $surveyRequest->id, $file); } $mail = new YiiMailer(); $mail->setFrom(Yii::app()->params['noReplyEmail']); $mail->setTo(Yii::app()->params['notificationEmail']); $mail->setSubject('Создание нового брифа'); $mail->setView('surveyCreated'); $mail->setData(array('controller' => $this, 'wizard' => $wizard, 'surveyRequest' => $surveyRequest)); $filesToAttachment = array(); foreach ($surveyRequest->files as $file) { $filesToAttachment[$file->filePath] = $file->name; } $mail->setAttachment($filesToAttachment); if (!$mail->send()) { error_log('Cannot send email about survey: ' . $mail->getError()); } Yii::app()->user->setFlash('success', "Запрос на создание проекта успешно отправлен. Специалист BCGroup свяжется с Вами в течение дня."); $wizard = new PublicSurveyRequestWizard(); } } } if (Yii::app()->request->getPost('save')) { $this->saveSurveyRequest($wizard, $surveyRequest); } else { $wizard->temporarySave(); } if ($successRequest) { $this->redirect('create'); } } $this->layout = 'publicMain'; $this->render("create", array('wizard' => $wizard)); }
public function SendMailConfirm() { try { $data = BookService::model()->findByAttributes(array('id' => Yii::app()->session['order_id'])); $this->title = "Mail test"; $mail = new YiiMailer(); $mail->setView('confirm'); $mail->setData(array('data' => $data)); $mail->setFrom('*****@*****.**', 'John Doe'); $mail->setSubject('Confirm your order'); $mail->setTo($data->email); $mail->send(); var_dump($mail->getError()); } catch (Exception $e) { var_dump($e->getMessage()); } }
public function sendplainmail($to, $from, $messagedata, $attachment = array(), $test = false) { $mail = new YiiMailer('default', array('message' => $messagedata->mb_message)); //set properties if (is_object($to)) { $mail->setTo($to->u_email); } else { $mail->setTo($to); } if (is_object($from)) { $mail->setFrom($from->u_email); } else { $mail->setFrom($from); } $mail->setSubject($messagedata->mb_subject); if (!empty($attachment)) { $file = $attachment['file']; $filename = $attachment['filename']; $mail->setAttachment(array($file => $filename)); } //send if ($mail->send() || $_SERVER['HTTP_HOST'] == 'localhost') { $messagedata->save(); $r = true; } else { Yii::app()->user->setFlash('error', 'Error while sending email: ' . $mail->getError()); $r = false; } return $r; }
public function register() { if (!$this->validate()) { return false; } $user = new User(); $user->setFullName($this->fio); $user->username = $this->email; $user->email = $this->email; $user->password = md5($this->password); $user->passwordConfirm = md5($this->passwordConfirmation); $user->organizationName = $this->organizationName; $user->organizationPhone = $this->organizationPhone; $user->mobilePhone = $this->mobilePhone; $user->isKnownFromSearch = $this->isKnownFromSearch; $user->isKnownFromRecommendation = $this->isKnownFromRecommendation; $user->isKnownFromInetAdvert = $this->isKnownFromInetAdvert; $user->isKnownFromMaps = $this->isKnownFromMaps; $user->isKnownFromOther = $this->isKnownFromOther; if (!$user->save()) { return false; } $auth = Yii::app()->authManager; $defaultRole = $auth->getAuthItem(User::DEFAULT_ROLE); if ($defaultRole) { $auth->assign(User::DEFAULT_ROLE, $user->id); } $mail = new YiiMailer(); $mail->setFrom(Yii::app()->params['noReplyEmail']); $mail->setTo(Yii::app()->params['notificationEmail']); $mail->setSubject('Заявка на регистрацию нового пользователя'); $mail->setView('userRegistration'); $mail->setData(array('user' => $user)); if (!$mail->send()) { error_log('Cannot send email about registered user: ' . $mail->getError()); } return true; }
public function actionDeactivate($id) { $user = $this->loadModel($id); if ($user->id == Yii::app()->user->id) { throw new Http403Exception(); } $user->deactivate(); $mail = new YiiMailer(); $mail->setFrom(Yii::app()->params['noReplyEmail']); $mail->setTo($user->email); $mail->setSubject('Учётная запись заблокирована.'); $mail->setView('userDeactivated'); $mail->setData(array('user' => $user)); if (!$mail->send()) { error_log('Cannot send email about deactivated user: '******'view', 'id' => $user->id)); }