public function editAction() { $orgInfoModel = new Default_Model_Organisationinfo(); $getorgData = $orgInfoModel->getorgrecords(); $popConfigPermission = array(); if (!empty($getorgData)) { $orgdata = ''; $auth = Zend_Auth::getInstance(); if ($auth->hasIdentity()) { $loginUserId = $auth->getStorage()->read()->id; $loginuserRole = $auth->getStorage()->read()->emprole; $loginuserGroup = $auth->getStorage()->read()->group_id; } if (sapp_Global::_checkprivileges(TIMEZONE, $loginuserGroup, $loginuserRole, 'add') == 'Yes') { array_push($popConfigPermission, 'timezone'); } if (sapp_Global::_checkprivileges(COUNTRIES, $loginuserGroup, $loginuserRole, 'add') == 'Yes') { array_push($popConfigPermission, 'country'); } if (sapp_Global::_checkprivileges(STATES, $loginuserGroup, $loginuserRole, 'add') == 'Yes') { array_push($popConfigPermission, 'state'); } if (sapp_Global::_checkprivileges(CITIES, $loginuserGroup, $loginuserRole, 'add') == 'Yes') { array_push($popConfigPermission, 'city'); } $msgarray = array(); $flag = 'true'; $id = $this->getRequest()->getParam('id'); $callval = $this->getRequest()->getParam('call'); if ($callval == 'ajaxcall') { $this->_helper->layout->disableLayout(); } $countriesModel = new Default_Model_Countries(); $statesmodel = new Default_Model_States(); $citiesmodel = new Default_Model_Cities(); $timezonemodel = new Default_Model_Timezone(); $allTimezoneData = $timezonemodel->fetchAll('isactive=1', 'timezone')->toArray(); $allCountriesData = $countriesModel->fetchAll('isactive=1', 'country')->toArray(); $allStatesData = $statesmodel->fetchAll('isactive=1', 'state')->toArray(); $allCitiesData = $citiesmodel->fetchAll('isactive=1', 'city')->toArray(); $businessunitsform = new Default_Form_businessunits(); $businessunitsmodel = new Default_Model_Businessunits(); $orgInfoModel = new Default_Model_Organisationinfo(); $deptModel = new Default_Model_Departments(); $deptform = new Default_Form_departments(); $deptData = array(); $msgarray = array(); $businessunitsform->setAttrib('action', DOMAIN . 'businessunits/edit'); $country = $getorgData[0]['country']; if (isset($_POST['country'])) { $country = $_POST['country']; } $state = $getorgData[0]['state']; if (isset($_POST['state'])) { $state = $_POST['state']; } $city = $getorgData[0]['city']; if (isset($_POST['city'])) { $city = $_POST['city']; } $address = $getorgData[0]['address1']; if (isset($country) && $country != 0 && $country != '') { $businessunitsform->setDefault('country', $country); $statesData = $statesmodel->getBasicStatesList($country); foreach ($statesData as $res) { $businessunitsform->state->addMultiOption($res['state_id_org'], utf8_encode($res['state'])); } if (isset($state) && $state != 0 && $state != '') { $businessunitsform->setDefault('state', $state); } } if (isset($state) && $state != 0 && $state != '') { $citiesData = $citiesmodel->getBasicCitiesList($state); foreach ($citiesData as $res) { $businessunitsform->city->addMultiOption($res['city_org_id'], utf8_encode($res['city'])); } if (isset($city) && $city != 0 && $city != '') { $businessunitsform->setDefault('city', $city); } } if (isset($address) && $address != '') { $businessunitsform->address1->setValue($address); } if (is_numeric($id) && $id > 0) { $data = $businessunitsmodel->getSingleUnitData($id); if (!empty($data)) { $businessunitsform->setAttrib('action', DOMAIN . 'businessunits/edit/id/' . $id); $businessunitsform->populate($data); $businessunitsform->submit->setLabel('Update'); $st_date = sapp_Global::change_date($data["startdate"], 'view'); $businessunitsform->setDefault('start_date', $st_date); $businessunitsform->state->clearMultiOptions(); $businessunitsform->city->clearMultiOptions(); $businessunitsform->state->addMultiOption('', utf8_encode("Select State")); $businessunitsform->city->addMultiOption('', utf8_encode("Select City")); $countryId = $data['country']; if (isset($_POST['country'])) { $countryId = $_POST['country']; } $stateId = $data['state']; if (isset($_POST['state'])) { $stateId = $_POST['state']; } $cityId = $data['city']; if (isset($_POST['city'])) { $cityId = $_POST['city']; } if ($countryId != '') { $statesData = $statesmodel->getBasicStatesList($countryId); foreach ($statesData as $res) { $businessunitsform->state->addMultiOption($res['state_id_org'], utf8_encode($res['state'])); } $businessunitsform->setDefault('country', $countryId); $businessunitsform->setDefault('state', $stateId); } if ($stateId != '') { $citiesData = $citiesmodel->getBasicCitiesList($stateId); foreach ($citiesData as $res) { $businessunitsform->city->addMultiOption($res['city_org_id'], utf8_encode($res['city'])); } $businessunitsform->setDefault('city', $cityId); } $deptData = $deptModel->getAllDeptsForUnit($id); $this->view->ermsg = ''; $this->view->datarr = $data; } else { $this->view->ermsg = 'nodata'; } } else { if ($id != '') { $this->view->ermsg = 'nodata'; } } $deptaddpermission = sapp_Global::_checkprivileges(DEPARTMENTS, $loginuserGroup, $loginuserRole, 'add'); $this->view->deptaddpermission = $deptaddpermission; $this->view->dataArray = $this->departmentGrid($id); $this->view->deptData = sizeof($deptData); $this->view->form = $businessunitsform; $this->view->unitid = $id; if (!empty($allCountriesData) && !empty($allStatesData) && !empty($allCitiesData) && !empty($allTimezoneData)) { $this->view->configuremsg = ''; } else { $this->view->configuremsg = 'notconfigurable'; } if (empty($allCountriesData)) { $msgarray['country'] = 'Countries are not configured yet.'; $flag = 'false'; } if (empty($allStatesData)) { $msgarray['state'] = 'States are not configured yet.'; $flag = 'false'; } if (empty($allCitiesData)) { $msgarray['city'] = 'Cities are not configured yet.'; $flag = 'false'; } if (empty($allTimezoneData)) { $msgarray['timezone'] = 'Time zones are not configured yet.'; $flag = 'false'; } $start_date = $this->_request->getParam('start_date'); $start_date = sapp_Global::change_date($start_date, 'database'); $this->view->msgarray = $msgarray; if ($this->getRequest()->getPost()) { if ($businessunitsform->isValid($this->_request->getPost()) && $flag == 'true') { $unitname = $this->_request->getParam('unitname'); $unitcode = $this->_request->getParam('unitcode'); $description = $this->_request->getParam('description'); $country = $this->_request->getParam('country'); $state = intval($this->_request->getParam('state')); $city = $this->_request->getParam('city'); $address1 = $this->_request->getParam('address1'); $address2 = $this->_request->getParam('address2'); $address3 = $this->_request->getParam('address3'); $timezone = $this->_request->getParam('timezone'); $unithead = $this->_request->getParam('unithead'); $unitcodeExistance = $businessunitsmodel->checkUnitCodeDuplicates($unitcode, $id); if (!$unitcodeExistance) { $date = new Zend_Date(); $menumodel = new Default_Model_Menu(); $actionflag = ''; $tableid = ''; $data = array('unitname' => trim($unitname), 'unitcode' => trim($unitcode), 'description' => trim($description), 'startdate' => $start_date != '' ? $start_date : NULL, 'country' => trim($country), 'state' => trim($state), 'city' => trim($city), 'address1' => trim($address1), 'address2' => trim($address2), 'address3' => trim($address3), 'timezone' => trim($timezone), 'unithead' => trim($unithead), 'modifiedby' => $loginUserId, 'modifieddate' => gmdate("Y-m-d H:i:s")); if ($id != '') { $where = array('id=?' => $id); $actionflag = 2; } else { $data['createdby'] = $loginUserId; $data['createddate'] = gmdate("Y-m-d H:i:s"); $data['isactive'] = 1; $where = ''; $actionflag = 1; } $Id = $businessunitsmodel->SaveorUpdateBusinessUnits($data, $where); if ($Id == 'update') { $tableid = $id; $this->_helper->getHelper("FlashMessenger")->addMessage("Business unit updated successfully."); } else { $tableid = $Id; $this->_helper->getHelper("FlashMessenger")->addMessage("Business unit added successfully."); } $menuidArr = $menumodel->getMenuObjID('/businessunits'); $menuID = $menuidArr[0]['id']; $result = sapp_Global::logManager($menuID, $actionflag, $loginUserId, $tableid); $this->_redirect('businessunits'); } else { $msgarray['message'] = 'A Business Unit, with the given code, already exists.'; $msgarray['msgtype'] = 'error'; $this->view->messages = $msgarray; } } else { $messages = $businessunitsform->getMessages(); foreach ($messages as $key => $val) { foreach ($val as $key2 => $val2) { $msgarray[$key] = $val2; break; } if (empty($allCountriesData)) { $msgarray['country'] = 'Countries are not configured yet.'; } if (empty($allStatesData)) { $msgarray['state'] = 'States are not configured yet.'; } if (empty($allCitiesData)) { $msgarray['city'] = 'Cities are not configured yet.'; } if (empty($allTimezoneData)) { $msgarray['timezone'] = 'Time zones are not configured yet.'; } } $this->view->msgarray = $msgarray; } } } else { $orgdata = 'noorgdata'; $this->view->orgdata = $orgdata; } $this->view->popConfigPermission = $popConfigPermission; }