public function actionSend() { if (\Yii::$app->request->post('selection')) { foreach (\Yii::$app->request->post('selection') as $value) { $model = new Message(); $model->message = \Yii::$app->request->post('message'); $model->sender_id = \Yii::$app->user->id; $model->receiver_id = $value; $model->save(); } \Yii::$app->getSession()->setFlash('success', 'Message Sent'); return $this->redirect(['event/' . \Yii::$app->request->post('event_id')]); } else { \Yii::$app->getSession()->setFlash('danger', 'Please select users to send message'); return $this->redirect(['event/' . \Yii::$app->request->post('event_id')]); } }
public function actionCreateFromUser() { $model = new Message(); if (Yii::$app->request->isPost) { $model->load(Yii::$app->request->post()); $model->scenario = 'accept'; $model->save(); //$model->validate(); //vd($model->getErrors()); // Todo отправка ел почты $model_Email = Email::find()->where(['id' => 1])->one(); $currEmail = $model_Email->email; //vd($model->email); Yii::$app->mailer->compose(['html' => 'message'], ['model' => $model])->setFrom($model->email)->setTo($currEmail)->setSubject('CОБЩЕНИЕ VinnieGuitar - Новое сообщение')->setTextBody('<b>HTML content</b>')->send(); Yii::$app->getSession()->setFlash('success', 'Ваш сообщение принято!'); return $this->redirect('/site/index'); } else { Yii::$app->getSession()->setFlash('error', 'Ошибка! Ваш сообщениене принято!'); return $this->redirect('/site/index', ['model' => $model]); } }
/** * * Callback function only use for the sendMsg; */ public function saveMsg($res, $param = []) { if (!$res['error']['res'] && isset($res['error'][0])) { $this->resMessage = $res['error']; return false; } $content = ''; if ($msgs = isset($res['error']['returnMsg']) ? $res['error']['returnMsg'] : '') { $datas = explode('|', $msgs); if ($datas[0] == 'ERROR') { $content = $datas[1] . '|'; } } $content .= $res['content']; $msg = new Message(); $msg->msg_type = 'verify_code'; $msg->content = $content; $msg->mobile = $param['mobile']; $msg->code = $param['code']; $msg->save(); }