示例#1
0
 /**
  * @method POST
  * @api register
  */
 public function register()
 {
     if (!isset($_POST['password']) || !isset($_POST['email']) || !isset($_POST['username'])) {
         return $this->response(array('code' => 'INVALID_PARAMS', 'status' => 0));
     }
     if (!filter_var($_POST['email'], FILTER_VALIDATE_EMAIL)) {
         return $this->response(array('code' => 'INVALID_EMAIL', 'status' => 0));
     }
     if ($this->getUserByEmail($_POST['email'])) {
         return $this->response(array('code' => 'EMAIL_EXISTS', 'status' => 0));
     }
     $userlevel = User::getSettings('validate_email') === true ? 0 : 1;
     $db = DB::instance();
     $id = $db->insert('users', array('username' => $_POST['username'], 'password' => md5($_POST['password']), 'email' => $_POST['email'], 'userlevel' => $userlevel, 'created' => time()));
     Analytics::track('registered', 'user', $id);
     return $this->response(array('userID' => $id, 'status' => 1));
 }