public function register()
 {
     $viewModel = new RegisterInformation();
     if (isset($_POST['username'], $_POST['password'])) {
         try {
             $user = $_POST['username'];
             $pass = $_POST['password'];
             $userModel = new UserBindingModel($user, $pass);
             if (!$userModel->isValid()) {
                 throw new \Exception("Username and password must be at least 5 symbols long");
             }
             IdentityUser::add($userModel);
             IdentityUser::save();
             $this->initLogin($user, $pass);
         } catch (\Exception $e) {
             $viewModel->error = $e->getMessage();
             return new View($viewModel);
         }
     }
     return new View();
 }
Beispiel #2
0
 /**
  * @param UserBindingModel $user
  * @throws \Exception
  */
 private static function insert(UserBindingModel $user)
 {
     $db = Database::getInstance('app');
     $query = "INSERT INTO users (username, password) VALUES (?, ?)";
     $result = $db->prepare($query);
     $result->execute([$user->getUsername(), password_hash($user->getPassword(), PASSWORD_DEFAULT)]);
 }