public function updateAction() { $roleForm = new Admin_Form_Role(); $roleForm->setAction('/admin/role/update')->setMethod('post'); if ($this->_request->isPost()) { if ($roleForm->isValid($_POST)) { $roleData = $roleForm->getValues(); $roleModel = new Admin_Model_Role(); $roleModel->updateRole($roleData['role_id'], $roleData['role_name'], $roleData['description']); $this->_redirect('/admin/role/list'); } } else { $roleModel = new Admin_Model_Role(); $id = $this->_request->getParam('id'); $roleRow = $roleModel->find($id)->current(); $roleForm->populate($roleRow->toArray()); } $this->view->form = $roleForm; }
/** * Updates a role in the database. */ public function updateAction() { $roleId = $this->getRequest()->getParam('id'); if (!empty($roleId)) { $postData = $this->getRequest()->getPost(); $role = new Opus_UserRole($roleId); if (!isset($postData['name'])) { $postData['name'] = $role->getName(); } $postData['oldRole'] = $role->getName(); $roleForm = new Admin_Form_Role(); if ($roleForm->isValid($postData)) { $name = $postData['name']; $this->_updateRole($roleId, $name); } else { $actionUrl = $this->view->url(array('action' => 'update', 'id' => $roleId)); $roleForm->setAction($actionUrl); $this->view->roleForm = $roleForm; $this->view->title = 'admin_role_edit'; $this->_helper->viewRenderer->setRender('edit'); return $this->render('edit'); } } $this->_helper->redirector('index'); }