/** * Create action * * @return void */ public function createAction() { $request = $this->getRequest(); $form = new \Admin_Form_UserCreate(); if ($request->isPost()) { if ($form->isValid($request->getParams())) { $data = $form->getValues(); try { $user = UserService::create(array('username' => $data['username'], 'email' => $data['email'], 'password' => UserService::encryptPassword($data['password']), 'role' => AclRoleService::find($data['role']), 'dateCreated' => new DateTime(), 'active' => true, 'locked' => false)); UserProfileService::create(array('user' => $user, 'firstName' => $data['firstName'], 'lastName' => $data['lastName'], 'phone' => $data['phone'], 'website' => $data['website'], 'timeZone' => TimeZoneService::findOneByName('America/Los_Angeles'))); UserEditEventService::create(array('user' => $user, 'editor' => $this->_user, 'ip' => $this->getRequest()->getServer('REMOTE_ADDR'), 'date' => new DateTime(), 'description' => 'Creation')); $this->view->success = 1; $this->_helper->sessionMessenger('User created successfully.', 'success'); return $this->_helper->getHelper('Redirector')->gotoRoute(array(), 'adminUsers'); } catch (Exception $e) { $this->getResponse()->setHttpResponseCode(500); $this->view->success = 0; $message = 'development' == APPLICATION_ENV ? $e->getMessage() : 'Application error: AUCCA001'; $this->view->messages()->addMessage($message, 'error'); Logger::err($e->getMessage()); } } else { // Submitted form data is invalid $this->getResponse()->setHttpResponseCode(500); $this->view->success = 0; } } $this->view->form = $form; }