/** * Add Client Expense Process */ public function processAddClientExpenseAction() { if (!$this->_request->isXmlHttpRequest() || !$this->_request->isPost()) { $this->_redirector->gotoRoute(array('controller' => 'index', 'module' => 'clients'), 'admin'); } $return = array(); $clientExpenseGateway = new Clients_Model_ClientExpenseGateway(); $form = $clientExpenseGateway->getForm('CreateClientExpense'); $validForm = $form->isValid($this->_request->getParams()); // Check the form for validity if (!$validForm) { $return['formErrors'] = $form->getMessages(); } else { $formData = $form->getValues(); $formData['client_expense_payoffdate'] = $this->_dateFormatter->saveDateFormat($formData['client_expense_payoffdate'], $formData['altPayOffDate']); unset($formData['altPayOffDate']); $clientExpense = $clientExpenseGateway->create($formData); $clientExpenseId = $clientExpense->save(); $clientExpense = $clientExpenseGateway->fetchClientExpense($clientExpenseId); if (is_object($clientExpense)) { $clientExpense = $clientExpense->toArray(); } $clientExpense['client_expense_payoffdate'] = $this->_dateFormatter->viewDateFormat($clientExpense['client_expense_payoffdate']); $flashMessenger = $this->_helper->getHelper('FlashMessenger'); $flashMessenger->setNamespace('notifications')->addMessage('Client Expense Added'); $return = array('append' => array('target' => '#clientExpense', 'content' => $this->view->partial('partials/_clientExpenseRow.phtml', 'clients', $clientExpense)), 'refresh' => true); $return['callback'] = '$("#add-expense-dialog").dialog("close");'; } $this->_helper->json->sendJson($return); }