/** * add/create a new actor * * */ public function addActorAction() { $this->_helper->layout->disableLayout(); $request = $this->getRequest(); $matterModel = new Application_Model_Matter(); $actorForm = new Application_Form_Matter_Actor(); if ($request->isPost()) { $post_data = $request->getPost(); if ($actorForm->isValid($post_data)) { foreach ($post_data as $key => $data) { if ($data == "") { unset($post_data[$key]); } } $actor_id = $matterModel->addActor($post_data); if ($actor_id) { $this->_helper->viewRenderer->setNoRender(); $json_data = array(); $json_data['actor_name'] = $post_data['name']; $json_data['actor_id'] = $actor_id; echo json_encode($json_data); return; } else { $this->view->sqlErrors = $matterModel->getError(); $default_role = $actorForm->getValue('default_role'); } } else { $this->view->formErrors = $actorForm->getMessages(); $default_role = $actorForm->getValue('default_role'); } } else { $default_role = $this->_getParam('role'); } $role_info = $matterModel->getActorRoleInfo($default_role); $this->view->actorComments = $matterModel->getTableComments('actor'); $actorForm->getElement('default_role')->setValue($role_info['name']); $enumOpts = $matterModel->getEnumSet('actor', 'pay_category'); $actorForm->getElement('pay_category')->setMultiOptions($enumOpts); $this->view->actorForm = $actorForm; $this->view->default_role = $role_info['name']; $this->view->default_role_code = $role_info['code']; }