public function savesitepreference($wizardpreferenceform, $wizardData) { $auth = Zend_Auth::getInstance(); if ($auth->hasIdentity()) { $loginUserId = $auth->getStorage()->read()->id; } if ($wizardpreferenceform->isValid($this->_request->getPost())) { $trDb = Zend_Db_Table::getDefaultAdapter(); // starting transaction $trDb->beginTransaction(); try { $systempreferencemodel = new Default_Model_Sitepreference(); $currencymodel = new Default_Model_Currency(); $orgInfoModel = new Default_Model_Organisationinfo(); $wizard_model = new Default_Model_Wizard(); $IdentityCodesModel = new Default_Model_Identitycodes(); $employmentstatusmodel = new Default_Model_Employmentstatus(); $countriesmodel = new Default_Model_Countries(); $statesmodel = new Default_Model_States(); $citiesmodel = new Default_Model_Cities(); $id = (int) $this->_request->getParam('id'); $currencyid = (int) $this->_request->getParam('currencyid'); $organisationid = (int) $this->_request->getParam('organisationid'); $empcodeid = (int) $this->_request->getParam('empcodeid'); $dateformatid = $this->_request->getParam('dateformatid'); $timeformatid = $this->_request->getParam('timeformatid'); $timezoneid = $this->_request->getParam('timezoneid'); $currencyname = $this->_request->getParam('currencyname'); $currencycode = $this->_request->getParam('currencycode'); $passwordid = $this->_request->getParam('passwordid'); $perm_country = $this->_request->getParam('perm_country'); $perm_stateparam = $this->_request->getParam('perm_state'); $perm_stateArr = explode("!@#", $this->_request->getParam('perm_state')); $perm_state = $perm_stateArr[0]; $perm_cityparam = $this->_request->getParam('perm_city'); $perm_cityArr = explode("!@#", $this->_request->getParam('perm_city')); $perm_city = $perm_cityArr[0]; $employee_code = $this->_request->getParam('employee_code'); $workcodename = $this->_request->getParam('workcodename'); $date = new Zend_Date(); $menumodel = new Default_Model_Menu(); /* * Save or Update - Currency name in currency table based on currency ID */ $currency_data = array('currencyname' => trim($currencyname), 'currencycode' => trim($currencycode), 'modifiedby' => $loginUserId, 'modifieddate' => gmdate("Y-m-d H:i:s")); if ($currencyid != '') { $currencywhere = array('id=?' => $currencyid); } else { $currency_data['createdby'] = $loginUserId; $currency_data['createddate'] = gmdate("Y-m-d H:i:s"); $currency_data['isactive'] = 1; $currencywhere = ''; } $CurrencyId = $currencymodel->SaveorUpdateCurrencyData($currency_data, $currencywhere); /* * End */ /* * Start - Updating and Inserting Site Preference Data after fetching currency id */ $siteprference_data = array('dateformatid' => $dateformatid, 'timeformatid' => $timeformatid, 'timezoneid' => $timezoneid, 'currencyid' => $currencyid != '' ? $currencyid : $CurrencyId, 'passwordid' => $passwordid, 'createdby' => $loginUserId, 'createddate' => $date->get('yyyy-MM-dd HH:mm:ss'), 'modifiedby' => $loginUserId, 'modifieddate' => $date->get('yyyy-MM-dd HH:mm:ss'), 'isactive' => 1); $site_update_arr = array('isactive' => 0, 'modifieddate' => $date->get('yyyy-MM-dd HH:mm:ss'), 'modifiedby' => $loginUserId); $systempreferencemodel->SaveorUpdateSystemPreferanceData($site_update_arr, 'isactive = 1'); $Id = $systempreferencemodel->SaveorUpdateSystemPreferanceData($siteprference_data, ''); /* * End */ /* * Updating Country,state and city based on organisation id */ // Inserting into main_countries if not added $countryExistsArr = $countriesmodel->getActiveCountryName($perm_country); if (empty($countryExistsArr)) { $countrynamearr = $countriesmodel->getCountryCode($perm_country); if (!empty($countrynamearr)) { $country_data = array('country' => trim($countrynamearr[0]['country_name']), 'countrycode' => trim($countrynamearr[0]['country_code']), 'citizenship' => NULL, 'createdby' => $loginUserId, 'createddate' => $date->get('yyyy-MM-dd HH:mm:ss'), 'modifiedby' => $loginUserId, 'modifieddate' => gmdate("Y-m-d H:i:s"), 'country_id_org' => $perm_country, 'isactive' => 1); $Country_Id = $countriesmodel->SaveorUpdateCountryData($country_data, ''); } } // Inserting into main_state if not added $State_Id = $statesmodel->SaveorUpdateStatesData($perm_country, $perm_stateArr[1], $perm_state, $loginUserId); // Inserting into main_cities if not added $City_Id = $citiesmodel->SaveorUpdateCitiesData($perm_country, $perm_state, $perm_cityArr[1], $perm_city, $loginUserId); $location_data = array('country' => $perm_country, 'state' => $perm_state, 'city' => $perm_city, 'createdby' => $loginUserId, 'createddate' => $date->get('yyyy-MM-dd HH:mm:ss'), 'modifiedby' => $loginUserId, 'modifieddate' => gmdate("Y-m-d H:i:s"), 'isactive' => 1); if ($organisationid != '') { $locwhere = array('id=?' => $organisationid); $LocationId = $orgInfoModel->SaveorUpdateData($location_data, $orgwhere); } $LocationId = $wizard_model->SaveorUpdateWizardData($location_data, ''); /* * End */ /* * Start - Updating Employee Code */ $empcode_data = array('employee_code' => trim($employee_code), 'modifiedBy' => $loginUserId, 'modifieddate' => gmdate("Y-m-d H:i:s")); if ($empcodeid != '') { $empcodewhere = array('id=?' => $empcodeid); } else { $empcode_data['createdby'] = $loginUserId; $empcode_data['createddate'] = gmdate("Y-m-d H:i:s"); $empcodewhere = ''; } $EmpCodeId = $IdentityCodesModel->SaveorUpdateIdentitycodesData($empcode_data, $empcodewhere); /* * End */ /* * Start - Update employment status data */ if (!empty($workcodename)) { $empstat_update_arr = array('isactive' => 0, 'modifieddate' => $date->get('yyyy-MM-dd HH:mm:ss'), 'modifiedby' => $loginUserId); $Empstat_update_Id = $employmentstatusmodel->SaveorUpdateEmploymentStatusData($empstat_update_arr, 'isactive=1'); for ($j = 0; $j < sizeof($workcodename); $j++) { switch ($workcodename[$j]) { case 1: $workcode = 'FT'; break; case 2: $workcode = 'PT'; break; case 3: $workcode = 'PERM'; break; case 4: $workcode = 'TEMP'; break; case 5: $workcode = 'PROB'; break; case 6: $workcode = 'CONT'; break; case 7: $workcode = 'DEP'; break; case 8: $workcode = 'RES'; break; case 9: $workcode = 'LEFT'; break; case 10: $workcode = 'SUSP'; break; default: $workcode = 'FT'; } $empstatus_data = array('workcode' => trim($workcode), 'workcodename' => trim($workcodename[$j]), 'createdby' => $loginUserId, 'createddate' => gmdate("Y-m-d H:i:s"), 'modifiedby' => $loginUserId, 'modifieddate' => gmdate("Y-m-d H:i:s"), 'isactive' => 1); $Empstat_Id = $employmentstatusmodel->SaveorUpdateEmploymentStatusData($empstatus_data, ''); } } /* * End */ /* * Update Wizard Table */ $wizardarray = array('site_config' => 2, 'modifiedby' => $loginUserId, 'modifieddate' => gmdate("Y-m-d H:i:s")); if ($wizardData['org_details'] == 2) { $wizardarray['iscomplete'] = 2; } $wizard_model->SaveorUpdateWizardData($wizardarray, ''); $trDb->commit(); $this->_helper->getHelper("FlashMessenger")->addMessage("Site Preference updated successfully."); $this->_redirect('wizard/configuresite'); } catch (Exception $e) { $trDb->rollBack(); $this->_helper->getHelper("FlashMessenger")->addMessage(array("success" => "Something went wrong,please try again later.")); $this->_redirect('wizard/configuresite'); } } else { $messages = $wizardpreferenceform->getMessages(); foreach ($messages as $key => $val) { foreach ($val as $key2 => $val2) { $msgarray[$key] = $val2; break; } } return $msgarray; } }
public function addpopupAction() { Zend_Layout::getMvcInstance()->setLayoutPath(APPLICATION_PATH . "/layouts/scripts/popup/"); $auth = Zend_Auth::getInstance(); if ($auth->hasIdentity()) { $loginUserId = $auth->getStorage()->read()->id; } $id = $this->getRequest()->getParam('id'); $selectedcountryid = $this->_request->getParam('selectcountryid', null); $countryid = $this->_request->getParam('countryid'); $msgarray = array(); $controllername = 'states'; $statestring = ''; $statesform = new Default_Form_states(); $statesmodel = new Default_Model_States(); $countriesModel = new Default_Model_Countries(); $statesform->setAction(BASE_URL . 'states/addpopup/selectcountryid/' . $selectedcountryid); $countrieslistArr = $countriesModel->getActiveCountriesList(); if (sizeof($countrieslistArr) > 0) { $statesform->countryid->addMultiOption('', 'Select Country'); foreach ($countrieslistArr as $countrieslistres) { if (isset($selectedcountryid)) { if ($countrieslistres['country_id_org'] == $selectedcountryid) { $statesform->countryid->addMultiOption($countrieslistres['country_id_org'], $countrieslistres['country']); $statesform->setDefault('countryid', $selectedcountryid); } } else { $statesform->countryid->addMultiOption($countrieslistres['country_id_org'], $countrieslistres['country']); } } } else { $msgarray['countryid'] = 'Countries are not configured yet'; } if (isset($selectedcountryid) && $selectedcountryid != 0 && $selectedcountryid != '') { $statesmodeldata = $statesmodel->getStatesList($selectedcountryid, 'addstate'); $statesform->state->addMultiOption('', 'Select State'); foreach ($statesmodeldata as $res) { $statesform->state->addMultiOption($res['id'] . '!@#' . utf8_encode($res['state_name']), utf8_encode($res['state_name'])); } $statesform->state->addMultiOption('other', 'Other'); if ($statestring == 'other') { $statesform->setDefault('state', 'other'); } } if ($this->getRequest()->getPost()) { $id = $this->_request->getParam('id'); $errorflag = "true"; $msgarray = array(); $newstateArr = array(); $dbstate = ''; $dbcountryid = ''; $statestring = ''; $stateArr = $this->_request->getParam('state'); if (!empty($stateArr)) { $otherstatename = $this->_request->getParam('otherstatename'); if (in_array('other', $stateArr)) { if ($otherstatename == '') { $msgarray['otherstatename'] = "Please enter state name."; $msgarray['dupstatename'] = ''; $msgarray['countid'] = $countryid; $errorflag = "false"; } else { $isDuplicateStateNameArr = $statesmodel->getDuplicateStateName($otherstatename, $countryid); if ($isDuplicateStateNameArr[0]['count'] > 0) { $errorflag = "false"; $msgarray['otherstatename'] = "State already exists"; $msgarray['dupstatename'] = $otherstatename; $msgarray['countid'] = $countryid; } else { $statestring = implode(",", $stateArr); if (sizeof($stateArr) > 1) { $newstateArr = $stateArr; array_pop($newstateArr); $statestring = implode(",", $newstateArr); $statestringcomma = trim(str_replace("!@#", ",", $statestring), ','); $statestringArr = explode(",", $statestringcomma); foreach ($statestringArr as $key => $val) { if (is_numeric($val)) { $stateid[] = $val; } else { $statename[] = $val; } } } $dbstate = $otherstatename; $errorflag = "true"; } } } else { $statestring = implode(",", $stateArr); $statestringcomma = trim(str_replace("!@#", ",", $statestring), ','); $statestringArr = explode(",", $statestringcomma); foreach ($statestringArr as $key => $val) { if (is_numeric($val)) { $stateid[] = $val; } else { $statename[] = $val; } } $errorflag = "true"; } } else { $msgarray['countid'] = $countryid; $errorflag = "false"; } if ($statesform->isValid($this->_request->getPost()) && $errorflag == "true" && $statestring != '') { $menumodel = new Default_Model_Menu(); $actionflag = ''; $tableid = ''; if (in_array('other', $stateArr)) { if ($otherstatename != '') { $NewStateId = $statesmodel->SaveMainStateData($countryid, $otherstatename); $NewStateInsertedId = $statesmodel->SaveorUpdateStatesData($countryid, $otherstatename, $NewStateId, $loginUserId); if (sizeof($stateArr) > 1) { if (!empty($stateid)) { for ($j = 0; $j < sizeof($stateid); $j++) { $Id = $statesmodel->SaveorUpdateStatesData($countryid, $statename[$j], $stateid[$j], $loginUserId); } } } $actionflag = 1; $tableid = $NewStateInsertedId; } } else { for ($j = 0; $j < sizeof($stateid); $j++) { $Id = $statesmodel->SaveorUpdateStatesData($countryid, $statename[$j], $stateid[$j], $loginUserId); } $tableid = $Id; $actionflag = 1; } $menuidArr = $menumodel->getMenuObjID('/states'); $menuID = $menuidArr[0]['id']; $result = sapp_Global::logManager($menuID, $actionflag, $loginUserId, $tableid); if (isset($selectedcountryid)) { $stateData = $statesmodel->fetchAll('isactive = 1 and countryid = ' . $selectedcountryid, 'state')->toArray(); } else { $stateData = array(); } $opt = ''; foreach ($stateData as $record) { $opt .= sapp_Global::selectOptionBuilder($record['state_id_org'], $record['state']); } $this->view->stateData = $opt; $this->view->eventact = 'added'; $close = 'close'; $this->view->popup = $close; } else { $messages = $statesform->getMessages(); foreach ($messages as $key => $val) { foreach ($val as $key2 => $val2) { $msgarray[$key] = $val2; break; } } if (isset($countryid) && $countryid != 0 && $countryid != '') { $statesmodeldata = $statesmodel->getStatesList($countryid); $statesform->state->addMultiOption('', 'Select State'); foreach ($statesmodeldata as $res) { $statesform->state->addMultiOption($res['id'] . '!@#' . utf8_encode($res['state_name']), utf8_encode($res['state_name'])); } $statesform->state->addMultiOption('other', 'Other'); if ($statestring == 'other') { $statesform->setDefault('state', 'other'); } } } } $this->view->ermsg = ''; $this->view->form = $statesform; $this->view->msgarray = $msgarray; $this->view->controllername = $controllername; }