diff options
Diffstat (limited to 'app/php/components/RegistrationForm.php')
-rw-r--r-- | app/php/components/RegistrationForm.php | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/app/php/components/RegistrationForm.php b/app/php/components/RegistrationForm.php new file mode 100644 index 0000000..71d4df1 --- /dev/null +++ b/app/php/components/RegistrationForm.php @@ -0,0 +1,26 @@ +<?php + +Prado::using('Application.model.User'); + +class RegistrationForm extends TTemplateControl { + + 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 = DbUser::generatePassword($this->Password->Text); + $newUser->IsAdmin = $this->Admin->Checked; + $newUser->save(); + $this->Response->redirect( + $this->Service->constructUrl(NULL) + ); + } + } + +} + +?> |