/** * @OnlyAnonymous */ public function postRegister(UserRegisterBindingModel $userModel) : View { try { if (!$userModel->isValid()) { $viewModel = new \Framework\ViewModels\User\GetRegisterViewModel(); $viewModel->errorsList = $userModel->getErrorsList(); $viewModel->error = true; return new View('\\User\\getRegister', $viewModel); } $userClass = \Framework\Config\Config::MODEL_NAMESPACE . \Framework\Config\Config::USER_CLASS; $userIdentityModel = new $userClass(); foreach ($userModel as $prop => $value) { if (property_exists($userClass, $prop)) { $userIdentityModel->{$prop} = $userModel->{$prop}; } } \Framework\Core\Identity::register($userIdentityModel); $viewModel = new \Framework\ViewModels\User\GetRegisterViewModel(); $viewModel->success = true; $viewModel->successList[] = "You have successfully registered"; return new View('\\User\\getRegister', $viewModel); } catch (\Exception $e) { $viewModel = new \Framework\ViewModels\User\GetRegisterViewModel(); $viewModel->errorsList = $userModel->getErrorsList(); $viewModel->errorsList[] = $e->getMessage(); $viewModel->error = true; return new View('\\User\\getRegister', $viewModel); } }