コード例 #1
0
 /**
  * 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'];
 }