function processPost($formvalues) { // trim spaces from the name field if (isArrayKeyAnEmptyString('companyid', $formvalues)) { $formvalues['companyid'] = getCompanyID(); } if (isArrayKeyAnEmptyString('hours', $formvalues)) { unset($formvalues['hours']); } if (isArrayKeyAnEmptyString('starttime', $formvalues)) { unset($formvalues['starttime']); } else { $formvalues['starttime'] = date("H:i:s", strtotime($formvalues['starttime'])); } if (isArrayKeyAnEmptyString('endtime', $formvalues)) { unset($formvalues['endtime']); } else { $formvalues['endtime'] = date("H:i:s", strtotime($formvalues['endtime'])); } if (isArrayKeyAnEmptyString('overduestarttime', $formvalues)) { unset($formvalues['overduestarttime']); } else { $formvalues['overduestarttime'] = date("H:i:s", strtotime($formvalues['overduestarttime'])); } if (isArrayKeyAnEmptyString('breakhrs', $formvalues)) { unset($formvalues['breakhrs']); } // debugMessage($formvalues); exit(); parent::processPost($formvalues); }
function processPost($formvalues) { // trim spaces from the name field if (isArrayKeyAnEmptyString('companyid', $formvalues)) { $formvalues['companyid'] = getCompanyID(); } if (isArrayKeyAnEmptyString('defaultquantity', $formvalues)) { unset($formvalues['defaultquantity']); } if (isArrayKeyAnEmptyString('quantitytype', $formvalues)) { unset($formvalues['quantitytype']); } if (isArrayKeyAnEmptyString('deductfromallowance', $formvalues)) { unset($formvalues['deductfromallowance']); } if (isArrayKeyAnEmptyString('paid', $formvalues)) { unset($formvalues['paid']); } if (isArrayKeyAnEmptyString('bookable', $formvalues)) { unset($formvalues['bookable']); } if (isArrayKeyAnEmptyString('authorised', $formvalues)) { unset($formvalues['authorised']); } if (isArrayKeyAnEmptyString('viewoncalendar', $formvalues)) { unset($formvalues['viewoncalendar']); } // debugMessage($formvalues); exit(); parent::processPost($formvalues); }
public function viewAction() { $session = SessionWrapper::getInstance(); $failurl = $this->view->baseUrl("index/accessdenied"); $acl = getACLInstance(); $id = decode($this->_getParam('id')); if (!isEmptyString($id) && isCompanyAdmin()) { if (getCompanyID() != $id) { $this->_helper->redirector->gotoUrl($failurl); } } parent::viewAction(); }
function existingPayroll() { $conn = Doctrine_Manager::connection(); # validate unique username and email $id_check = ""; if (!isEmptyString($this->getID())) { $id_check = " AND id <> '" . $this->getID() . "' "; } $companyid = getCompanyID(); $query = "SELECT id FROM payroll p WHERE p.companyid = '" . $companyid . "' AND TO_DAYS(p.startdate) = TO_DAYS('" . $this->getStartDate() . "') AND TO_DAYS(p.enddate) = TO_DAYS('" . $this->getEndDate() . "') AND p.type = '" . $this->getType() . "' " . $id_check; // debugMessage($query); $result = $conn->fetchOne($query); return $result; }
function indexAction() { $session = SessionWrapper::getInstance(); $this->_helper->layout->disableLayout(); $this->_helper->viewRenderer->setNoRender(TRUE); $conn = Doctrine_Manager::connection(); $formvalues = $this->_getAllParams(); $userid = $session->getVar('userid'); $companyid = getCompanyID(); $acl = getACLInstance(); $company_query = ""; $company_query = " u.companyid = '" . $companyid . "' AND "; $q = $formvalues['searchword']; $html = ''; $hasdata = false; // ) # search users if loggedin user has access if ($acl->checkPermission('User Account', ACTION_LIST)) { $query = "SELECT u.id FROM useraccount as u \n\t\t\t\tWHERE " . $company_query . "\n\t\t\t (u.firstname like '%" . $q . "%' or \n\t\t\t\tu.lastname like '%" . $q . "%' or \n\t\t\t\tu.othername like '%" . $q . "%' or \n\t\t\t\tu.displayname like '%" . $q . "%' or \n\t\t\t\tu.email like '%" . $q . "%' or \n\t\t\t\tu.phone like '%" . $q . "%' or \n\t\t\t\tu.username like '%" . $q . "%') \n\t\t\t\tGROUP BY u.id\n\t\t\t\torder by u.displayname asc LIMIT 5 "; // debugMessage($query); $result = $conn->fetchAll($query); $count_results = count($result); // debugMessage($result); if ($count_results > 0) { $hasdata = true; $html .= '<div class="separator"><span>Employees</span> <div class="allresults"><a href="' . $this->view->baseUrl('profile/list/searchterm/' . $q) . '" class="blockanchor">...see more results</a></div> </div><ul>'; foreach ($result as $row) { $user = new UserAccount(); $user->populate($row['id']); $b_q = '<b>' . $q . '</b>'; $name = $user->getDisplayName(); $name = str_ireplace($q, $b_q, $name); $position = getDatavariables('EMPLOYEE_POSITIONS', $user->getPosition(), true); $phone = $user->getPhone(); $phone = str_ireplace($q, $b_q, $phone); $email = $user->getEmail(); $email = str_ireplace($q, $b_q, $email); $media = $user->getMediumPicturePath(); $viewurl = $this->view->baseUrl('profile/view/id/' . encode($row['id'])); $html .= ' <li style="height:auto; min-height:90px;" class="display_box" align="left" url="' . $viewurl . '" theid="' . $row['id'] . '"> <a href="' . $viewurl . '" style="color:#666; text-decoration:none;"> <img class="imagecontainer" src="' . $media . '" style="width:78px; height:auto; float:left; margin-right:6px;" /> <div style="margin-left: 70px;"> <span class="name blocked">' . $name . '</span> <span class="name blocked">' . $position . '</span> <span class="blocked" style="margin-top:5px;">Email: ' . $email . '</span> <span class="blocked">Phone: ' . $phone . '</span> </div> </a> </li>'; } } } # add navigation to searchable parameters $result = array('id' => 1, 'users' => ''); # check no data is available for all areas and return no results message if (!$hasdata) { $html .= ' <li class="display_box" align="center" style="height:30px;"> <span style="width:100%; display:block; text-align:center;">No results for <b>' . $q . '</b></span> </li>'; } $html .= '</ul>'; echo $html; }
function createAction() { $this->_helper->layout->disableLayout(); $this->_helper->viewRenderer->setNoRender(TRUE); $session = SessionWrapper::getInstance(); $this->_translate = Zend_Registry::get("translate"); $config = Zend_Registry::get("config"); $formvalues = $this->_getAllParams(); // debugMessage($formvalues); exit(); $isuserdoc = false; $iscompanydoc = false; if (!isArrayKeyAnEmptyString('userid', $formvalues)) { $isuserdoc = true; $folderid = $formvalues['userid']; } else { $iscompanydoc = true; $folderid = getCompanyID(); } if (isset($_FILES["FileInput"]) && $_FILES["FileInput"]["error"] == UPLOAD_ERR_OK && !array_key_exists('submit', $formvalues)) { if (!isset($_FILES['FileInput']['name'])) { $error = "<span class='alert alert-danger blocked'>Error: Please select a File to Upload.</span>"; $result = array('msg' => $error, 'result' => ''); echo $error; exit; } // if uploading a user document if ($isuserdoc) { // base path for user documents $destination_path = BASE_PATH . DIRECTORY_SEPARATOR . "uploads" . DIRECTORY_SEPARATOR . "users" . DIRECTORY_SEPARATOR . "user_"; // determine if user has destination avatar folder. Else user is editing there picture if (!is_dir($destination_path . $folderid)) { // no folder exits. Create the folder mkdir($destination_path . $folderid, 0775); } } // if uploading a company document if ($iscompanydoc) { // base path for user documents $destination_path = BASE_PATH . DIRECTORY_SEPARATOR . "uploads" . DIRECTORY_SEPARATOR . "company" . DIRECTORY_SEPARATOR . "comp_"; // determine if user has destination avatar folder. Else user is editing there picture if (!is_dir($destination_path . $folderid)) { // no folder exits. Create the folder mkdir($destination_path . $folderid, 0775); } } $destination_path = $destination_path . $folderid . DIRECTORY_SEPARATOR . "documents"; if (!is_dir($destination_path)) { mkdir($destination_path, 0775); } // create archive folder for each user $archivefolder = $destination_path . DIRECTORY_SEPARATOR . "archive"; if (!is_dir($archivefolder)) { mkdir($archivefolder, 0775); } $oldfile = $_FILES['FileInput']['name']; $File_Name = strtolower($oldfile); $File_Ext = findExtension($File_Name); //get file extention $ext = strtolower($_FILES['FileInput']['type']); // debugMessage($ext); $allowedformatsarray = explode(',', str_replace(' ', '', $config->uploads->docallowedformats)); // debugMessage($allowedformatsarray);exit(); $uploadedext = findExtension($File_Name); $currenttime = time(); //Random number to be added to name. $currenttime_file = $currenttime . '.' . $uploadedext; $thefilename = $destination_path . DIRECTORY_SEPARATOR . $currenttime_file; if (isEmptyString($folderid)) { $destination_path = BASE_PATH . DIRECTORY_SEPARATOR . "uploads" . DIRECTORY_SEPARATOR . "temp"; if (!is_dir($destination_path)) { // no folder exits. Create the folder mkdir($destination_path, 0775); } $thefilename = $destination_path . DIRECTORY_SEPARATOR . $currenttime_file; } // check if this is an ajax request if (!isset($_SERVER['HTTP_X_REQUESTED_WITH'])) { $error = "<span class='alert alert-danger blocked'>Error: No Request received.</span>"; $result = array('msg' => $error, 'result' => ''); echo $error; exit; } // debugMessage('size '.$_FILES["FileInput"]["size"]); // validate maximum allowed size $size = $_FILES["FileInput"]["size"]; if ($size > $config->uploads->docmaximumfilesize) { $error = "<span class='alert alert-danger blocked'>Error: Maximum allowed size exceeded.</span>"; $result = array('msg' => $error, 'result' => ''); echo $error; exit; } // validate allowed formats if (!in_array($File_Ext, $allowedformatsarray)) { $error = "<span class='alert alert-danger blocked'>Error: Format '." . $File_Ext . "' not supported. Formats allowed include '" . $config->uploads->docallowedformats . "'</span>"; $result = array('msg' => $error, 'result' => ''); echo $error; exit; } # move the file try { move_uploaded_file($_FILES['FileInput']['tmp_name'], $thefilename); // die('File '.$NewFileName.' Uploaded.'); $result = array('oldfilename' => $oldfile, 'newfilename' => $currenttime_file, 'msg' => 'Successfully uploaded', 'result' => 1, 'filesize' => $size); // debugMessage($result); echo json_encode($result); exit; } catch (Exception $e) { $error = 'Error in uploading File ' . $File_Name . '. ' . $e->getMessage(); $result = array('msg' => $error, 'result' => ''); echo $error; exit; } } if (array_key_exists('submit', $formvalues) || array_key_exists('id', $formvalues)) { $this->_setParam('uploadedbyid', $session->getVar('userid')); $this->_setParam('dateuploaded', DEFAULT_DATETIME); $this->_setParam("action", ACTION_CREATE); if (!isArrayKeyAnEmptyString('id', $formvalues)) { $this->_setParam("action", ACTION_EDIT); } // debugMessage($formvalues); exit(); parent::createAction(); } }
function getLeaveRequests($userid = '', $start = '2015-01-01', $end = '2015-12-31') { $conn = Doctrine_Manager::connection(); $customquery = ""; /*if(!isEmptyString($userid)){ $customquery = " AND t.userid = '".$userid."' "; }*/ $companyid = getCompanyID(); $query = "SELECT t.id, t.userid, t.typeid, p.name as type, t.`status`, t.duration, t.durationtype, t.startdate as startdate, t.enddate as enddate, t.returndate, t.starttime, t.endtime, t.returntime, p.calendarcolor, \n\t\tIF(isnull(u.othername), concat(u.firstname,' ',u.lastname), concat(u.firstname,' ',u.lastname,' ',u.othername)) as `user`\n\t\tfrom `leave` t \n\t\tinner join leavetype p on t.typeid = p.id\n\t\tinner join useraccount u on t.userid = u.id\n\t\twhere t.id <> '' " . $customquery . " AND u.companyid = '" . $companyid . "' AND TO_DAYS(t.startdate) BETWEEN TO_DAYS('" . $start . "') AND TO_DAYS('" . $end . "') AND t.status = 1 order by t.startdate desc, t.id "; // debugMessage($query); $result = $conn->fetchAll($query); // debugMessage($result); return $result; }
function getAllDataValues($type = '') { $conn = Doctrine_Manager::connection(); $company_query = ""; $companyid = getCompanyID(); if (in_array($this->getID(), array(7))) { if ($companyid == DEFAULT_COMPANYID) { $company_query = " AND (companyid = '" . $companyid . "' OR companyid is null) "; } else { $company_query = " AND companyid = '" . $companyid . "' "; } } $query = "SELECT * FROM lookuptypevalue WHERE lookuptypeid = '" . $this->getID() . "' " . $company_query . " order by lookupvaluedescription asc "; $resultvalues = $conn->fetchAll($query); if (in_array($this->getID(), array(9))) { if ($companyid == DEFAULT_COMPANYID) { $company_query = " AND (c.companyid = '" . $companyid . "' OR c.companyid is null) "; } else { $company_query = " AND (c.companyid = '" . $companyid . "' OR c.companyid is null) "; } $query = "SELECT c.id as id, c.id as lookuptypevalue, c.name as lookupvaluedescription, c.defaultamount as alias, c.amounttype as alias2 FROM benefittype c order by c.name asc "; $resultvalues = $conn->fetchAll($query); } // debugMessage($query); return $resultvalues; }
function processvariablesAction() { $session = SessionWrapper::getInstance(); $this->_helper->layout->disableLayout(); $this->_helper->viewRenderer->setNoRender(TRUE); $formvalues = $this->_getAllParams(); // debugMessage($formvalues); // exit; if (isArrayKeyAnEmptyString('noreload', $formvalues)) { $hasnoreload = false; } else { $hasnoreload = true; } $haserror = false; if (isArrayKeyAnEmptyString('value', $formvalues) && !$hasnoreload) { $haserror = true; $session->setVar(ERROR_MESSAGE, 'Error: No value specified for addition'); $session->setVar(FORM_VALUES, $formvalues); $this->_helper->redirector->gotoUrl($this->view->baseUrl('config/variables/' . $formvalues['lookupid'])); } $successurl = $this->view->baseUrl('config/variables/type/' . $formvalues['lookupid']); $type_ext = ''; $alias = ''; if (!isArrayKeyAnEmptyString('alias', $formvalues)) { $alias = trim($formvalues['alias']); if ($alias == 'undefined') { $alias = ''; } } if ($formvalues['lookupid'] == 7) { $alias = decode($formvalues['alias']); if (isArrayKeyAnEmptyString('id', $formvalues)) { $alias = $formvalues['alias']; } } // exit; // debugMessage() switch ($formvalues['lookupid']) { case 9: $formvalues['defaultamount'] = $formvalues['alias']; if (!isArrayKeyAnEmptyString('id', $formvalues)) { $formvalues['defaultamount'] = decode($formvalues['alias']); } $formvalues['amounttype'] = $formvalues['alias2']; $formvalues['name'] = decode(trim($formvalues['value'])); if (!isArrayKeyAnEmptyString('id', $formvalues)) { $formvalues['name'] = $formvalues['name']; } $formvalues['companyid'] = getCompanyID(); $benefittype = new BenefitType(); if (!isArrayKeyAnEmptyString('id', $formvalues)) { $benefittype->populate($formvalues['id']); $formvalues['lastupdatedby'] = $session->getVar('userid'); } else { $formvalues['createdby'] = $session->getVar('userid'); } $benefittype->processPost($formvalues); /* debugMessage($benefittype->toArray()); debugMessage('errors are '.$benefittype->getErrorStackAsString()); exit(); */ $result = array('id' => '', 'name' => '', 'error' => ''); if ($benefittype->hasError()) { $session->setVar(ERROR_MESSAGE, $benefittype->getErrorStackAsString()); $session->setVar(FORM_VALUES, $formvalues); $result['error'] = $benefittype->getErrorStackAsString(); } else { try { $benefittype->save(); // debugMessage($benefittype->toArray()); exit; $result = array('id' => $benefittype->getID(), 'name' => $benefittype->getName(), 'alias' => $benefittype->getdefaultamount(), 'alias2' => $benefittype->getamounttype()); $session->setVar(SUCCESS_MESSAGE, "Successfully saved"); } catch (Exception $e) { $session->setVar(ERROR_MESSAGE, $e->getMessage() . "<br />" . $benefittype->getErrorStackAsString()); $session->setVar(FORM_VALUES, $formvalues); $result['error'] = $benefittype->getErrorStackAsString(); } } break; case 11: $formvalues['name'] = trim($formvalues['value']); $department = new Department(); if (!isArrayKeyAnEmptyString('id', $formvalues)) { $department->populate($formvalues['id']); $formvalues['lastupdatedby'] = $session->getVar('userid'); } else { $formvalues['createdby'] = $session->getVar('userid'); } $formvalues['companyid'] = getCompanyID(); $department->processPost($formvalues); /* debugMessage($department->toArray()); debugMessage('errors are '.$department->getErrorStackAsString()); // exit(); */ $result = array('id' => '', 'name' => '', 'error' => ''); if ($department->hasError()) { $session->setVar(ERROR_MESSAGE, $department->getErrorStackAsString()); $session->setVar(FORM_VALUES, $formvalues); $result['error'] = $department->getErrorStackAsString(); } else { try { $department->save(); $result = array('id' => $department->getID(), 'name' => $department->getName(), 'error' => ''); $session->setVar(SUCCESS_MESSAGE, "Successfully saved"); } catch (Exception $e) { $session->setVar(ERROR_MESSAGE, $e->getMessage() . "<br />" . $department->getErrorStackAsString()); $session->setVar(FORM_VALUES, $formvalues); $result['error'] = $department->getErrorStackAsString(); } } break; default: $lookupvalue = new LookupTypeValue(); $lookuptype = new LookupType(); $lookuptype->populate($formvalues['lookupid']); $index = ''; if ($hasnoreload) { $index = $lookuptype->getNextInsertIndex(); $value = trim($formvalues['value']); } else { if (!isArrayKeyAnEmptyString('index', $formvalues)) { $index = $formvalues['index']; } else { $index = $lookuptype->getNextInsertIndex(); } $value = addslashes(decode(trim($formvalues['value']))); } $dataarray = array('id' => $formvalues['id'], 'lookuptypeid' => $formvalues['lookupid'], 'lookuptypevalue' => $index, 'lookupvaluedescription' => $value, 'alias' => $alias, 'createdby' => $session->getVar('userid'), 'companyid' => getCompanyID()); // debugMessage($dataarray); if (!isArrayKeyAnEmptyString('id', $formvalues)) { $lookupvalue->populate($formvalues['id']); $beforesave = $lookupvalue->toArray(); // debugMessage($beforesave); } // unset($dataarray['id']); $lookupvalue->processPost($dataarray); /* debugMessage($lookupvalue->toArray()); debugMessage('errors are '.$lookupvalue->getErrorStackAsString()); exit(); */ $result = array('id' => '', 'name' => '', 'error' => ''); if ($lookupvalue->hasError()) { $haserror = true; $session->setVar(ERROR_MESSAGE, $lookupvalue->getErrorStackAsString()); $session->setVar(FORM_VALUES, $formvalues); $result['error'] = $lookupvalue->getErrorStackAsString(); } else { try { $lookupvalue->save(); if (!$hasnoreload) { $url = $this->view->serverUrl($this->view->baseUrl("config/variables/lookupid/" . $formvalues['lookupid'])); $module = '0'; if (isArrayKeyAnEmptyString('id', $formvalues)) { $session->setVar(SUCCESS_MESSAGE, "Successfully saved"); $type = SYSTEM_ADDVARIABLE; $usecase = '0.1'; $details = 'Variable - <b>' . $lookupvalue->getlookupvaluedescription() . ' </b>(' . $lookupvalue->getLookupType()->getdisplayname() . ') addded'; } else { $session->setVar(SUCCESS_MESSAGE, "Successfully updated"); $type = SYSTEM_UPDATEVARIABLE; $usecase = '0.2'; $details = 'Variable - <b>' . $lookupvalue->getlookupvaluedescription() . ' </b>(' . $lookupvalue->getLookupType()->getdisplayname() . ') updated'; $prejson = json_encode($beforesave); $lookupvalue->clearRelated(); $after = $lookupvalue->toArray(); // debugMessage($after); $postjson = json_encode($after); // debugMessage($postjson); $diff = array_diff($beforesave, $after); // debugMessage($diff); $jsondiff = json_encode($diff); // debugMessage($jsondiff); } $browser = new Browser(); $audit_values = $session->getVar('browseraudit'); $audit_values['module'] = $module; $audit_values['usecase'] = $usecase; $audit_values['transactiontype'] = $type; $audit_values['status'] = "Y"; $audit_values['userid'] = $session->getVar('userid'); $audit_values['transactiondetails'] = $details; $audit_values['url'] = $url; if (!isArrayKeyAnEmptyString('id', $formvalues)) { $audit_values['isupdate'] = 1; $audit_values['prejson'] = $prejson; $audit_values['postjson'] = $postjson; $audit_values['jsondiff'] = $jsondiff; } // debugMessage($audit_values); $this->notify(new sfEvent($this, $type, $audit_values)); } $result = array('id' => $lookupvalue->getlookuptypevalue(), 'name' => $lookupvalue->getlookupvaluedescription(), 'alias' => $lookupvalue->getalias(), 'error' => ''); } catch (Exception $e) { $session->setVar(ERROR_MESSAGE, $e->getMessage() . "<br />" . $lookupvalue->getErrorStackAsString()); $session->setVar(FORM_VALUES, $formvalues); } } break; } // debugMessage($successurl);exit(); if (!$hasnoreload) { $this->_helper->redirector->gotoUrl($successurl); } else { echo json_encode($result); } }
public function sidebarconfigAction() { $session = SessionWrapper::getInstance(); $this->_helper->layout->disableLayout(); $this->_helper->viewRenderer->setNoRender(TRUE); $formvalues = $this->_getAllParams(); $conn = Doctrine_Manager::connection(); $session->setVar('showsidebar', $this->_getParam('value')); // echo 'toggle now is '.$session->getVar('show_sidebar'); $query = "UPDATE company set showsidebar = '" . $this->_getParam('value') . "' where id = '" . getCompanyID() . "' "; $result = $conn->execute($query); }
function createAction() { $this->_helper->layout->disableLayout(); $this->_helper->viewRenderer->setNoRender(TRUE); $session = SessionWrapper::getInstance(); /* debugMessage('pms: '.ini_get('post_max_size')); debugMessage('ums: '.ini_get("upload_max_filesize")); $size = (int) $_SERVER['CONTENT_LENGTH']; debugMessage('content length '.$size); ini_set("memory_limit", "1024M"); $memory_limit = ini_get('memory_limit'); debugMessage('memory is '.$memory_limit); */ $formvalues = $this->_getAllParams(); // debugMessage($formvalues); $restoredata = objectToArray(json_decode(decode($session->getVar('restoredata')))); $formvalues = array_merge_maintain_keys($formvalues, $restoredata); // debugMessage($formvalues); // exit; // determine employees on the payroll $employees = array(); $all_results_query = decode($formvalues['employeequery']); // debugMessage($all_results_query); exit; $conn = Doctrine_Manager::connection(); $employees = $conn->fetchAll($all_results_query); // debugMessage($employees); // format payroll data $dataarray = array(); $dataarray['companyid'] = getCompanyID(); $dataarray['type'] = $formvalues['payrolltype']; $dataarray['status'] = $formvalues['status']; $dataarray['payrolldate'] = changeDateFromPageToMySQLFormat($formvalues['enddate']); $dataarray['url'] = $formvalues['failureurl']; $dataarray['startdate'] = changeDateFromPageToMySQLFormat($formvalues['startdate']); $dataarray['enddate'] = changeDateFromPageToMySQLFormat($formvalues['enddate']); $dataarray['middate'] = changeDateFromPageToMySQLFormat($formvalues['middate']); $dataarray['createdby'] = $session->getVar('userid'); $dataarray['remarks'] = isArrayKeyAnEmptyString('remarks', $formvalues) ? '' : $formvalues['remarks']; $dataarray['ignorelist'] = $formvalues['ignorelist']; if (count($employees) > 0) { foreach ($employees as $key => $employee) { $dataarray['details'][$key]['userid'] = $employee['id']; $dataarray['details'][$key]['empstatus'] = $employee['empstatus']; $dataarray['details'][$key]['ratetype'] = $employee['ratetype']; $dataarray['details'][$key]['payrolltype'] = $employee['payrolltype']; $dataarray['details'][$key]['rate'] = $employee['rate']; $dataarray['details'][$key]['istimesheetuser'] = $employee['istimesheetuser']; $dataarray['details'][$key]['daysworked'] = $formvalues['daysworked_' . $employee['id']]; $dataarray['details'][$key]['hourspending'] = $formvalues['_' . $employee['id']]; $dataarray['details'][$key]['halfhoursworked'] = $formvalues['halfhoursworked_' . $employee['id']]; $dataarray['details'][$key]['fullhoursworked'] = $formvalues['fullhoursworked_' . $employee['id']]; $dataarray['details'][$key]['leavehrs'] = $formvalues['leavehrs_' . $employee['id']]; $dataarray['details'][$key]['sickhrs'] = $formvalues['sickhrs_' . $employee['id']]; $dataarray['details'][$key]['midgross'] = str_replace(',', '', $formvalues['midgross_' . $employee['id']]); $dataarray['details'][$key]['endgross'] = str_replace(',', '', $formvalues['endgross_' . $employee['id']]); $dataarray['details'][$key]['nssf'] = str_replace(',', '', $formvalues['nssf_' . $employee['id']]); $dataarray['details'][$key]['paye'] = str_replace(',', '', $formvalues['paye_' . $employee['id']]); $dataarray['details'][$key]['otherdebit'] = str_replace(',', '', $formvalues['otherdebit_' . $employee['id']]); $dataarray['details'][$key]['netearning'] = str_replace(',', '', $formvalues['netearning_' . $employee['id']]); $dataarray['details'][$key]['transport'] = str_replace(',', '', $formvalues['transport_' . $employee['id']]); $dataarray['details'][$key]['othercredit'] = str_replace(',', '', $formvalues['othercredit_' . $employee['id']]); $dataarray['details'][$key]['netpay'] = str_replace(',', '', $formvalues['netpay_' . $employee['id']]); $dataarray['details'][$key]['totaltaxable'] = str_replace(',', '', $formvalues['totaltaxable_' . $employee['id']]); $dataarray['details'][$key]['totalbenefits'] = str_replace(',', '', $formvalues['totalbenefits_' . $employee['id']]); $dataarray['details'][$key]['benefitdetails'] = $formvalues['benefitdetails_' . $employee['id']]; $dataarray['details'][$key]['deductiondetails'] = $formvalues['deductiondetails_' . $employee['id']]; $dataarray['details'][$key]['recurringtrxns'] = $formvalues['recurringtrxns_' . $employee['id']]; $dataarray['details'][$key]['isignored'] = $formvalues['isignored_' . $employee['id']]; } } // debugMessage('url '.decode($this->_getParam(URL_SUCCESS))); // exit; $payroll = new Payroll(); if (!isArrayKeyAnEmptyString('reloadid', $formvalues)) { $payroll->populate($formvalues['reloadid']); } $payroll->processPost($dataarray); /* debugMessage($payroll->toArray()); debugMessage('errors are '.$payroll->getErrorStackAsString()); exit(); */ if ($payroll->hasError()) { $url = decode($formvalues[URL_FAILURE]); $session->setVar(ERROR_MESSAGE, $payroll->getErrorStackAsString()); } else { try { if ($payroll->payrollExists() && isArrayKeyAnEmptyString('reloadid', $formvalues)) { $id = $payroll->existingPayroll(); $proll = new Payroll(); $proll->populate($id); // debugMessage($proll->toArray()); exit(); $proll->delete(); } // debugMessage($payroll->toArray()); exit(); $payroll->save(); $session->setVar(SUCCESS_MESSAGE, "Successfully saved as Draft"); if ($dataarray['status'] == 2) { $session->setVar(SUCCESS_MESSAGE, "Successfully marked as Completed and Locked"); } $url = decode($formvalues[URL_SUCCESS]) . encode($payroll->getID()); } catch (Exception $e) { $session->setVar(ERROR_MESSAGE, $e->getMessage()); // debugMessage($e->getMessage()); $url = decode($formvalues[URL_FAILURE]); } } // debugMessage($url); $this->_helper->redirector->gotoUrl($url); }