protected function _processSetVisit($closed = null, $void = null) { $visitParams = $this->_getParam('visit'); $visitParams['lastChangeUserId'] = (int) Zend_Auth::getInstance()->getIdentity()->personId; //$visitParams['timestamp'] = date('Y-m-d h:i:s'); if ($closed !== null) { $visitParams['closed'] = (int) $closed; } $visit = new Visit(); $visit->visitId = (int) $visitParams['visitId']; $data = 'Visit ID ' . $visit->visitId . ' is invalid'; if ($visit->populate()) { if ($void !== null) { $visit->void = (int) $void; if ($visit->void && $visit->hasPayments()) { $error = 'Cannot void visit with payments'; } } else { $visit->populateWithArray($visitParams); } if (isset($error)) { $data = $error; } else { $visit->persist(); $data = $this->_generateVisitRowData($visit); } } $json = Zend_Controller_Action_HelperBroker::getStaticHelper('json'); $json->suppressExit = true; $json->direct($data); }