/** * */ public function insuredAddressAction() { $pageSession = new Zend_Session_Namespace('portfolio_insurance_quote'); // Append the address lookup javascript $this->view->headScript()->appendFile('/assets/common/js/addressLookup.js', 'text/javascript'); // Tell page to use AJAX validation as we go $this->view->headScript()->appendScript('var ajaxValidate = true; var ajaxValidatePage = "add";'); $pageForm = new Form_PortfolioInsuranceQuote_insuredAddress(); if ($this->getRequest()->isPost()) { $request = $this->getRequest(); $postdata = $request->getPost(); $valid = $pageForm->isValid($postdata); if ($valid) { /**************************/ // Create a new property manager and a new property data object $property = new Manager_Insurance_Portfolio_Property(); $propertyObject = new Model_Insurance_Portfolio_Property(); $cleanData = $pageForm->getValues(); // According to the Zend manual these *should* be the clean values $propertyObject->building = $cleanData['ins_house_number_name']; $propertyObject->buildingsAccidentalDamage = $cleanData['buildings_accidental_damage']; $propertyObject->buildingsNilExcess = $cleanData['buildings_nil_excess']; $propertyObject->buildingsSumInsured = $cleanData['buildings_cover']; $propertyObject->contentsAccidentalDamage = $cleanData['contents_accidental_damage']; $propertyObject->contentsNilExcess = $cleanData['contents_nil_excess']; $propertyObject->contentsSumInsured = $cleanData['contents_cover']; // $propertyObject->id $propertyObject->limitedContents = $cleanData['limited_contents']; // if we are editing this will be set if (isset($cleanData['propertyid'])) { $propertyObject->id = $cleanData['propertyid']; } // Populate the propertyObject property details $propertyObject->address1 = $cleanData["ins_address_line1"]; $propertyObject->address2 = $cleanData["ins_address_line2"]; $propertyObject->address3 = $cleanData["ins_address_line3"]; $propertyObject->postcode = $property->formatPostcode($cleanData["ins_postcode"]); $propertyObject->refno = $pageSession->CustomerRefNo; $propertyObject->tenantOccupation = $cleanData['employment_status']; $lastId = $property->save($propertyObject); // Everything has been saved ok so navigate to next step $this->_helper->redirector->gotoUrl('/portfolio/insurance-quote/step2'); exit; } elseif (isset($_POST['cancel'])) { $this->_formStepCommonNavigate('2'); return; } } elseif (isset($_GET['id'])) { $this->_formStepCommonPopulate($pageForm, 'editInsuredAddress'); } // Load the element data from the database if we can if ($this->_formStepCommonPopulate($pageForm, 'add')) { // Render the page unless we have been redirected $this->view->form = $pageForm; $this->render('step'); } }
/** * TODO: Document this * @param * @return * @author John Burrin * @since */ public function updatePropertyAction() { $pageSession = new Zend_Session_Namespace('portfolio_insurance_quote'); $customerReferenceNumber = $pageSession->CustomerRefNo; $ajaxForm = new Form_PortfolioInsuranceQuote_editPropertyDialog(); $return = array(); $request = $this->getRequest(); $postdata = $request->getPost(); $return['success'] = false; $ajaxForm->isValid($postdata); $return['errorObject'] = $ajaxForm->getMessages(); if ($ajaxForm->isValid($postdata)) { $cleanData = $ajaxForm->getValues(); // According to the Zend manual these *should* be the clean values $propertyArray = array(); $propertyManager = new Manager_Insurance_Portfolio_Property(); $dataObject = new Model_Insurance_Portfolio_Property(); if (isset($postdata['propertyid'])) { $dataObject->id = $cleanData['propertyid']; } if (isset($customerReferenceNumber)) { $dataObject->refno = $customerReferenceNumber; } if (isset($postdata['ins_house_number_name'])) { $dataObject->building = $cleanData['ins_house_number_name']; } if (isset($postdata['ins_postcode'])) { $dataObject->postcode = $propertyManager->formatPostcode($cleanData['ins_postcode']); } if (isset($postdata['employment_status'])) { $dataObject->tenantOccupation = $cleanData['employment_status']; } if (isset($postdata['buildings_cover'])) { $dataObject->buildingsSumInsured = $cleanData['buildings_cover']; } if (isset($postdata['buildings_accidental_damage'])) { $dataObject->buildingsAccidentalDamage = $cleanData['buildings_accidental_damage']; } if (isset($postdata['buildings_nil_excess'])) { $dataObject->buildingsNilExcess = $cleanData['buildings_nil_excess']; } if (isset($postdata['contents_cover'])) { $dataObject->contentsSumInsured = $cleanData['contents_cover']; } if (isset($postdata['contents_accidental_damage'])) { $dataObject->contentsAccidentalDamage = $cleanData['contents_accidental_damage']; } if (isset($postdata['contents_nil_excess'])) { $dataObject->contentsNilExcess = $cleanData['contents_nil_excess']; } if (isset($postdata['limited_contents'])) { $dataObject->limitedContents = $cleanData['limited_contents']; } $address = new Manager_Core_Postcode(); $return['address'] = $address->getPropertyByID($cleanData['ins_address']); $dataObject->houseNumber = $return['address']['houseNumber']; $dataObject->building = $return['address']['buildingName']; $dataObject->address1 = $return['address']['address1']; $dataObject->address2 = $return['address']['address2']; $dataObject->address3 = $return['address']['address3']; $dataObject->address4 = $return['address']['address4']; $dataObject->address5 = $return['address']['address5']; $dataObject->postcode = $property->formatPostcode($cleanData['ins_postcode']); $dataObject->refno = $pageSession->CustomerRefNo; $dataObject->tenantOccupation = $dataObject->tenantOccupation; // Do the update stuffs $propertyManager->save($dataObject); // need to tell the view we are on step 2 $this->view->stepNum = 2; // Get the properties to shove back into the page $propertyArray = $propertyManager->fetchAllProperties($customerReferenceNumber); $return['html'] = $this->view->partialLoop('portfolio-insurance-quote/partials/property-list.phtml', $propertyArray); $return['success'] = true; $return['propNumb'] = count($propertyArray->toArray()); } echo Zend_Json::encode($return); }