/** * verify user email * * @param string $idUser, $email * @return Response */ public static function verifyEmail() { $app = \Slim\Slim::getInstance(); $data = $app->request->post(); $app = \Slim\Slim::getInstance(); $data = $app->request->get(); if (!isset($data['source'])) { $app->halt('400', json_encode("Link is invalid.")); } $id = openssl_decrypt($data['source'], 'aes128', self::$pass, 0, self::$iv); $tmp = Tmp_Email::find($id); if (!$tmp) { $app->halt('404', json_encode("Link is invalid.")); } if (self::isExist($tmp->tmp_email)) { $app->halt('409', json_encode("Link is invalid. Email has already been used.")); } $user = User::find($tmp->user_id); $user->email = $tmp->tmp_email; $saved = $user->save(); if ($saved) { Tmp_Email::where('user_id', '=', $tmp->user_id)->delete(); EmailController::changeEmailSuccess($tmp->user_id); return json_encode("success. Your email have already changed."); } $app->halt('500', json_encode("Save to DB error.")); }