diff options
Diffstat (limited to 'app/php/pages/Signup.php')
-rw-r--r-- | app/php/pages/Signup.php | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/app/php/pages/Signup.php b/app/php/pages/Signup.php new file mode 100644 index 0000000..c999e65 --- /dev/null +++ b/app/php/pages/Signup.php @@ -0,0 +1,27 @@ +<?php + +Prado::using('Application.model.User'); + +class Signup extends TPage { + + public function checkUsername($sender, $param) { + $param->IsValid = !User::finder()->countByLogin($this->Login->SafeText); + } + + public function registerUser($sender, $param) { + if ($this->Page->IsValid) { + $newUser = new User(); + $newUser->Login = $this->Login->SafeText; + $newUser->Password = password_hash($this->Password->Text, PASSWORD_DEFAULT); + $newUser->IsAdmin = $this->Admin->Checked; + $newUser->save(); + $this->Response->redirect($this->Request->constructUrl( + $this->Service->ID, + NULL + )); + } + } + +} + +?> |