public function action_activate() { $model_register = new Model_Register(); $model_register->activateUser($_GET["user"], $_GET["token"]); HTTP::redirect("/user/auth"); }
public function action_reg() { $base = new Model_Base(); $options = $base->getOptions(); if (!isset($options['room']) || $options['room'] != 'TRUE') { Controller::redirect('/'); } $this->template->title = 'Регистрация нового пользователя'; $this->template->page_title = 'Регистрация нового пользователя'; $this->template->keywords = 'Регистрация нового пользователя'; $this->template->description = 'Регистрация нового пользователя'; //$this->template->styles[] = 'css/registration.css'; //$this->template->styles = $this->getStyles($this->styles); $data = array(); if (isset($_POST['registration'])) { $vData = $_POST; $validation = Validation::factory($vData); $validation->rule('username', 'not_empty'); $validation->rule('username', 'min_length', array(':value', '2')); $validation->rule('username', 'max_length', array(':value', '250')); $validation->rule('password', 'not_empty'); $validation->rule('password', 'min_length', array(':value', '6')); $validation->rule('password', 'max_length', array(':value', '50')); $validation->rule('password', 'equal_fields', array(':value', $vData['password_confirm'])); if (!$validation->check()) { $errors = $validation->errors('registrationErrors'); } else { $username = Arr::get($_POST, 'username', ''); $password = Arr::get($_POST, 'password', ''); $confirm_pass = Arr::get($_POST, 'password_confirm', ''); $register = new Model_Register(); if ($register->reg($username, $password, 4)) { $success = 'Спасибо за регистрацию! На электронный адрес <b>' . $username . '</b> отправлено письмо для активации аккаунта. <a href="/user">Вход в систему</a>'; } else { $errors = $register->errors; } } } if (isset($_GET['token'])) { //активируем пользователя $vData = $_GET; $validation = Validation::factory($vData); $validation->rule('user', 'not_empty'); $validation->rule('user', 'min_length', array(':value', '2')); $validation->rule('user', 'max_length', array(':value', '250')); $validation->rule('token', 'not_empty'); $validation->rule('token', 'min_length', array(':value', '6')); if (!$validation->check()) { $errors = $validation->errors('registrationErrors'); } else { $username = Arr::get($_GET, 'user', ''); $token = Arr::get($_GET, 'token', ''); $register = new Model_Register(); if ($register->activateUser($username, $token)) { $success = 'Активация выполнена успешно! Переходим в личный кабинет'; Controller::redirect('/user'); } else { $errors[] = 'Ошибка активации'; } } } $widgets = $this->getWidgets(0); if (is_array($widgets)) { foreach ($widgets as $position => $widget) { $this->template->{$position} = $widget; } } $this->template->block_center[] = View::factory('widgets/w_registration')->bind('errors', $errors)->bind('success', $success); }