public function issuepayslipsAction() { $this->_helper->layout->disableLayout(); $this->_helper->viewRenderer->setNoRender(TRUE); $session = SessionWrapper::getInstance(); $formvalues = $this->_getAllParams(); // debugMessage($formvalues); exit; $config = Zend_Registry::get("config"); // generate the payslips silently via ajax $payroll = new Payroll(); $payroll->populate($this->_getParam('id')); $employees = $payroll->getdetails(); // debugMessage($employees->toArray()); foreach ($employees as $employee) { if ($employee->getIsIgnored() != 1 && $employee->getNetPay() > 0) { // ignore users who are skipped on payroll or have 0 netpay $payrolldetailid = $employee->getID(); $path = $employee->getPDFPath(); $pdfurl = $this->view->serverUrl($this->view->baseUrl('user/view/id/' . encode($employee->getUserID()) . '/tab/payment/payrollid/' . $payrolldetailid . '/ref/view/print/1/pgc/1/payslipview/1/pdf/1/source/payroll')); // debugMessage($pdfurl); $pdfresult = trim(file_get_contents($pdfurl)); $html = decode($pdfresult); // debugMessage($html); // exit; if (!isEmptyString($html)) { try { $mpdfpath = BASE_PATH . DIRECTORY_SEPARATOR . 'application' . DIRECTORY_SEPARATOR . 'includes' . DIRECTORY_SEPARATOR . 'mpdf' . DIRECTORY_SEPARATOR . 'mpdf.php'; // debugMessage('pdf '.$mpdfpath); ini_set('memory_limit', '128M'); require_once $mpdfpath; // ob_get_clean(); $mpdf = new mPDF('win-1252', 'A4', '', '', 20, 15, 40, 20, 10, 10); $mpdf->useOnlyCoreFonts = true; // false is default $mpdf->SetProtection(array('print')); $mpdf->SetTitle("Payslip - " . $employee->getUser()->Name()); $mpdf->SetAuthor(getAppName()); $mpdf->SetWatermarkText(getCompanyName()); $mpdf->showWatermarkText = true; $mpdf->watermark_font = 'DejaVuSansCondensed'; $mpdf->watermarkTextAlpha = 0.1; $mpdf->SetDisplayMode('fullpage'); $mpdf->WriteHTML($html); $mpdf->Output($path); // $mpdf->Output($employee->getPDFName().'.pdf', 'I'); } catch (Exception $e) { debugMessage('error ' . $e->getMessage()); } if (file_exists($path)) { debugMessage('pdf ' . $employee->getPDFName() . ' created '); // $employee->afterPayslipGeneration(); } else { debugMessage('pdf missing'); } } } } $session->setVar("issuepayslips", '0'); // reset flag for determining if payslips are sent }
public function deleteAction() { $this->_setParam("action", ACTION_DELETE); $session = SessionWrapper::getInstance(); $this->_helper->layout->disableLayout(); $this->_helper->viewRenderer->setNoRender(TRUE); $formvalues = $this->_getAllParams(); // debugMessage($formvalues); // exit; $successurl = decode($formvalues[URL_SUCCESS]); if (!isArrayKeyAnEmptyString(SUCCESS_MESSAGE, $formvalues)) { $successmessage = decode($formvalues[SUCCESS_MESSAGE]); } // debugMessage($successurl); $payroll = new Payroll(); $id = is_numeric($formvalues['id']) ? $formvalues['id'] : decode($formvalues['id']); // debugMessage($id); $payroll->populate($id); debugMessage($payroll->toArray()); $deletetrxns = $payroll->getLedgerDeleteTrxns(); if ($deletetrxns->count() > 0) { $deletetrxns->delete(); } /* debugMessage($payroll->getLedgerDeleteTrxns()->toArray()); exit(); */ if ($payroll->delete()) { $session->setVar(SUCCESS_MESSAGE, $this->_translate->translate("global_delete_success")); $successmessage = $this->_getParam(SUCCESS_MESSAGE); if (!isEmptyString($successmessage)) { $session->setVar(SUCCESS_MESSAGE, $successmessage); } } $this->_helper->redirector->gotoUrl($successurl); }