public function editAction() { $request = $this->getRequest(); $roleId = $request->getParam('role_id'); $role = Modules_Core_Services_Role::getById($roleId); if (null == $role) { throw new Exception(); } $this->view->roleData = $role; if ($request->isPost()) { $roleData = $request->getPost('role'); $roleData = Modules_Core_Services_Role::validate($roleData); if (isset($roleData['messages_error']) && $roleData['messages_error']) { $this->view->errorMessages = $roleData['messages']; $roleData['role_id'] = $roleId; $this->view->roleData = $roleData; return; } $salt = $role['salt']; $role = array('role_id' => $roleId, 'name' => $this->view->STRING->escape($roleData['name']), 'description' => $this->view->STRING->escape($roleData['description']), 'status' => $this->view->STRING->escape($roleData['status'])); Modules_Core_Services_Role::update($role); Gio_Core_Messenger::getInstance()->addMessage($this->view->TRANSLATOR->translator('role_actions_edit_success')); $this->redirect($this->view->url('core_role_edit', $role)); } }