public function actionRegister()
 {
     //get request
     $postData = file_get_contents('php://input', true);
     $data = json_decode($postData, true);
     $mobile = $data['data']['phone'];
     Yii::getLogger()->log($data['data'], 2, "webhook");
     //send sms
     if ($mobile != null && $mobile != '') {
         $reminder = new Reminder();
         $createDate = time();
         $reminder->mobile = $mobile;
         $reminder->createDate = $createDate;
         $reminder->updated = false;
         $reminder->origin = 'webhook';
         $reminder->save();
         $rid = $reminder->_id . '';
         $reminder->url = $this->replaceHttp(Yii::$app->request->hostInfo) . "/user/reset_password/" . $rid;
         Yii::getLogger()->log($reminder->url, 2, "webhookUrl");
         $reminder->save();
         $name = null;
         $qry = new Query();
         $qry->from('reward');
         $list = $qry->all();
         if ($list != null && count($list) > 0) {
             $name = $list[0]['name'];
         }
         if ($name == null) {
             $name = "\$25聖安娜蛋糕禮券";
         }
         $content = "恭喜您參加家樂牌「儲分有賞」活動。您的帳戶已建立,立即按連結重設密碼並登入,即可查詢分數並有機會獲得" . $name . "!\n" . $reminder->url;
         Yii::getLogger()->log($content, 2, "content");
         Yii::$app->sms->sendSms($reminder->mobile, $content);
     }
 }
 public function actionQuery()
 {
     $code = 404;
     $rid = Yii::$app->request->get("rid");
     $reminder = Reminder::findOne($rid);
     if ($reminder != null && !$reminder->updated) {
         $now = time();
         if ($now - $reminder->createDate <= 3600) {
             $code = 200;
         }
     }
     \Yii::$app->response->format = \yii\web\Response::FORMAT_JSON;
     return ['code' => $code];
 }
Example #3
0
 public function actionResetPassword()
 {
     $code = 404;
     $rid = Yii::$app->request->post("rid");
     $p = Yii::$app->request->post("p");
     $reminder = Reminder::findOne($rid);
     if ($p != null && $reminder != null && !$reminder->updated) {
         $user = $this->getUserByPhone($reminder->mobile);
         $user = json_decode($user, true);
         $this->update(['phone' => $reminder->mobile, 'id' => $user['id'], 'custom_properties' => [['property_id' => 'pwd', 'value' => $p]]]);
         $reminder->updated = true;
         $reminder->save();
         $code = 200;
         // sms
         $content = $user['name'] . "你好,你已成功重設密碼。\n使用家樂牌「儲分有賞」APP,毋須擔心忘記密碼,請即下載\nAndroid bit.ly/1DLiBly\niOS apple.co/1gEVFPt";
         Yii::$app->sms->sendSms($reminder->mobile, $content);
         // send email.
         if (isset($user['email'])) {
             $email = $user['email'];
             $params = array('name' => $user['name']);
             $response = Yii::$app->email->sendMailByTemplate(MODIFY_PASSWORD, $email, $params);
         }
     }
     \Yii::$app->response->format = \yii\web\Response::FORMAT_JSON;
     return ['code' => $code];
 }