Example #1
0
 /**
  * Returns form for send message to admin
  *
  * @throws CException
  */
 public function actionIndex()
 {
     $this->metaInfoGenerate('Отправка сообщения', '', '');
     $this->breadcrumbs[] = 'Отправка сообщения';
     $model = new CallbackForm();
     if (isset($_POST['CallbackForm'])) {
         $config = CallbackConfig::model()->findByPk(1);
         $model->attributes = $_POST['CallbackForm'];
         if ($model->validate()) {
             if (CallbackConfig::model()->checkTimeout()) {
                 $body = $this->renderPartial('callback_template', array_merge(array('model' => $model)), true);
                 if ($this->module->sendMessage($config->email, 'Сообщение с сайта ' . Yii::app()->config->sitename, $body)) {
                     Yii::app()->user->setFlash('callback_message', 'Ваше письмо успешно отправлено администратору сайта.');
                     Yii::app()->session['timeoutCallback'] = date("Y-m-d H:i:s");
                 } else {
                     Yii::app()->user->setFlash('callback_message', 'В данный момент отправка сообщений невозможна.');
                 }
             } else {
                 Yii::app()->user->setFlash('callback_message', 'Разрешено оправлять одно сообщение в ' . $config->timeout . ' минут.');
             }
         }
         $this->renderPartial('_form', array('model' => $model));
     } else {
         $this->render('index', array('model' => $model));
     }
 }
Example #2
0
 public function run()
 {
     if (Yii::app()->request->isAjaxRequest) {
         $model = new CallbackForm();
         $sended = false;
         if (isset($_POST['CallbackForm'])) {
             $model->attributes = $_POST['CallbackForm'];
             if ($model->validate()) {
                 $sended = true;
                 $this->sendMessage($model);
                 $model->unsetAttributes();
             }
         }
         $this->controller->render('ext.callback.views._form', array('model' => $model, 'sended' => $sended));
     } else {
         throw new CHttpException(403);
     }
 }
Example #3
0
 /**
  * Returns form for send message to admin
  *
  * @throws CException
  */
 public function actionIndex()
 {
     $this->metaInfoGenerate('Отправка сообщения', '', '');
     $this->breadcrumbs[] = 'Отправка сообщения';
     $model = new CallbackForm();
     if (isset($_POST['CallbackForm'])) {
         $model->attributes = $_POST['CallbackForm'];
         if ($model->validate()) {
             $admin = User::model()->findByPk(1);
             $body = $this->renderPartial('callback_template', array_merge(array('model' => $model)), true);
             if ($this->module->sendMessage($admin->email, 'Сообщение с сайта ' . Yii::app()->config->sitename, $body)) {
                 Yii::app()->user->setFlash('callback_message', 'Ваше сообщение успешно отправлено администратору сайта.');
             } else {
                 Yii::app()->user->setFlash('callback_message', 'В данный момент отправка сообщений невозможна.');
             }
             $this->refresh();
         }
     }
     $this->render('index', array('model' => $model));
 }