/** * This function is used to add/update data in database. * @param $user_form = all form data. * * @return JSON success/error messages in json format. */ public function saveupdateAction() { $auth = Zend_Auth::getInstance(); if ($auth->hasIdentity()) { $loginUserId = $auth->getStorage()->read()->id; } $agencylistmodel = new Default_Model_Agencylist(); $user_form = new Default_Form_Usermanagement(); $user_model = new Default_Model_Usermanagement(); $logmanagermodel = new Default_Model_Logmanager(); $menumodel = new Default_Model_Menu(); $messages = $user_form->getMessages(); $actionflag = ''; $tableid = ''; $agencyuser = '******'; if ($this->getRequest()->getPost()) { if ($user_form->isValid($this->_request->getPost())) { $id = $this->_request->getParam('id'); $employeeId = $this->_request->getParam('employeeId', null); //$userfullname = $this->_request->getParam('userfullname',null); $firstname = $this->_request->getParam('firstname', null); $lastname = $this->_request->getParam('lastname', null); $userfullname = $firstname . ' ' . $lastname; $entrycomments = $this->_request->getParam("entrycomments", null); $emailaddress = $this->_request->getParam("emailaddress", null); $emprole = $this->_request->getParam("emprole", null); $emplockeddate = $this->_request->getParam("emplockeddate", null); $act_inact = $this->_request->getParam("act_inact", null); $empreasonlocked = $this->_request->getParam("empreasonlocked", null); $emppassword = sapp_Global::generatePassword(); $data = array('emprole' => $emprole, 'firstname' => $firstname, 'lastname' => $lastname, 'userfullname' => $userfullname, 'emailaddress' => $emailaddress, 'modifiedby' => $loginUserId, 'modifieddate' => gmdate("Y-m-d H:i:s"), 'emppassword' => md5($emppassword), 'entrycomments' => $entrycomments, 'userstatus' => 'old'); if ($emplockeddate == '') { unset($data['emplockeddate']); } if ($id != '') { if ($act_inact != '') { $data['isactive'] = $act_inact; $data['emptemplock'] = $act_inact == 0 ? "1" : "0"; $agencyroles = $agencylistmodel->getagencyrole(); $userData = $user_model->getUserDataById($id); $agencyuser = ''; $user_role = $userData['emprole']; foreach ($agencyroles as $agrole) { if ($agrole['id'] == $user_role) { $agencyuser = '******'; } } if ($agencyuser == 'yes') { $agencyData = $user_model->getAgencyData($id); if ($act_inact == '1') { $user_model->activateAllagencydetails($agencyData['agencyid'], $loginUserId); if ($agencyData['isactive'] != $act_inact) { $this->sendEMails($agencyData, 'activated'); } } else { $user_model->deleteAllagencydetails($agencyData['agencyid'], $loginUserId); if ($agencyData['isactive'] != $act_inact) { $this->sendEMails($agencyData, 'inactivated'); } } } } $where = array('id=?' => $id); unset($data['emppassword']); $messages['message'] = 'User updated successfully.'; $_SESSION['usermanagement_msg'] = $messages['message']; $actionflag = 2; } else { $data['createdby'] = $loginUserId; $data['createddate'] = gmdate("Y-m-d H:i:s"); $data['isactive'] = 1; $where = ''; $messages['message'] = 'User added successfully.'; $_SESSION['usermanagement_msg'] = $messages['message']; $actionflag = 1; } $Id = $user_model->SaveorUpdateUserData($data, $where); if ($Id == 'update') { $tableid = $id; } else { $employeeId = $employeeId . str_pad($Id, 4, '0', STR_PAD_LEFT); $user_model->SaveorUpdateUserData(array('employeeId' => $employeeId), "id = " . $Id); $tableid = $Id; $base_url = 'http://' . $this->getRequest()->getHttpHost() . $this->getRequest()->getBaseUrl(); $view = $this->getHelper('ViewRenderer')->view; $this->view->emp_name = $userfullname; $this->view->password = $emppassword; $this->view->emp_id = $employeeId; $this->view->base_url = $base_url; $text = $view->render('mailtemplates/newpassword.phtml'); $options['subject'] = APPLICATION_NAME . ' login credentials'; $options['header'] = 'Greetings from Sentrifugo'; $options['toEmail'] = $emailaddress; $options['toName'] = $this->view->emp_name; $options['message'] = $text; try { $result = sapp_Global::_sendEmail($options); } catch (Exception $e) { echo $e->getMessage(); } } $objidArr = $menumodel->getMenuObjID('/usermanagement'); $objID = $objidArr[0]['id']; $result = sapp_Global::logManager($objID, $actionflag, $loginUserId, $tableid); if ($act_inact != '') { if ($data['isactive'] == 1) { $logarr = array('userid' => $loginUserId, 'recordid' => $tableid, 'date' => gmdate("Y-m-d H:i:s"), 'isactive' => 1); $jsonlogarr = json_encode($logarr); } else { $logarr = array('userid' => $loginUserId, 'recordid' => $tableid, 'date' => gmdate("Y-m-d H:i:s"), 'isactive' => 0); $jsonlogarr = json_encode($logarr); } $id = $logmanagermodel->addOrUpdateLogManager($objID, 4, $jsonlogarr, $loginUserId, $tableid); } $messages['result'] = 'saved'; $this->_helper->json($messages); } else { $messages = $user_form->getMessages(); $messages['result'] = 'error'; $this->_helper->json($messages); } } }