query("SELECT a.job_position_id, b.job_position_desc FROM setting_job_position a LEFT JOIN setting_job_position_translation b ON ( a.job_position_id = b.job_position_id ) WHERE a.deleted_at IS NULL AND b.lang = 'en'") ; if ( $get_position->num_rows > 0 ){ while ( $row_position = $get_position->fetch_assoc() ){ $position[$row_position['job_position_id']] = $row_position['job_position_desc'] ; } } $mysqli_query = $mysqli->query("SELECT a.advance_id, a.advance_paidby, a.advance_amount, a.advance_reason, a.advance_status, a.advance_payment_status, a.advance_payment_date, a.created_at, a.updated_at, b.staff_id, b.staff_name, b.staff_idno, b.staff_accountno, b.staff_icno, b.staff_passportno, b.country_id,b.job_position_id FROM staff_advance a LEFT JOIN staff b ON ( a.staff_id = b.staff_id ) WHERE a.deleted_at IS NULL AND a.advance_id IN (".$page.") "); $letter_head = $letter_head['header'] ; $letter_head = str_replace( '', '', $letter_head ) ; $letter_head = str_replace( '  ', '', $letter_head ) ; $html = ' ' ; if ($mysqli_query->num_rows > 0){ while ($row_page = $mysqli_query->fetch_array(MYSQLI_ASSOC)){ $staff_idno = ucwords($row_page['staff_idno']) ; // set body content $html .= '

'.$letter_head.'

 

Advanced Slip

Employee ID : '.$staff_idno.'   Date : '.( $row_page['advance_payment_date'] != '' ? date('d.m.Y',strtotime(dataFilter($row_page['advance_payment_date']))) : '-' ).'
Name : '.dataFilter($row_page['staff_name']).' Department : '; //department $d_name = [] ; $get_department = $mysqli->query("SELECT a.department_id, b.department_desc FROM staff_department a LEFT JOIN setting_department_translation b ON ( a.department_id = b.department_id ) WHERE a.deleted_at IS NULL AND b.lang = 'en' AND staff_id = '".$row_page['staff_id']."'") ; if($get_department->num_rows > 0){ while ( $row_department = $get_department->fetch_assoc() ){ $d_name[] = $row_department['department_desc']; } } $html .= implode( ', ', $d_name ) ; $html .= '
Month : '.date('F Y',strtotime(dataFilter($row_page['created_at']))).'   Position : '.dataFilter( $position[$row_page['job_position_id']] ).'
 

Particulars

Advanced   '.dataFilter($row_page['advance_amount']).'
 
TOTAL ADVANCE   '.dataFilter($row_page['advance_amount']).'
 
Nett pay   '.dataFilter($row_page['advance_amount']).'
 
 
Received By:  
'; } } $html .= ' ' ; //print pdf include_once 'MPDF/mpdf.php' ; $mpdf = new mPDF('utf-8', [ 215, 135 ], '', 'freesans', 0, 0, 0, 0, 0, 0) ; $mpdf->useAdobeCJK = true ; $mpdf->SetAutoFont(AUTOFONT_ALL) ; // Use different Odd/Even headers and footers and mirror margins $mpdf->mirrorMargins = 1 ; // set mpdf header //$mpdf->SetHTMLHeader($header) ; //$mpdf->SetHTMLHeader($header,'E') ; // set mpdf footer $mpdf->SetHTMLFooter($footer) ; $mpdf->SetHTMLFooter($footer,'E') ; // write in html $mpdf->WriteHTML($html) ; // set filename $page_filename = 'hr-advanced-'.time() ; $filename = $page_filename ; // Your Filename whit local date and time $filename_save = $filename.'.pdf' ; $filename_jpeg = $filename.'.jpg' ; $filename_temp = $filename ; // check output type $page_type_output = ($page_type == 'jpeg' ? 'F' : 'I') ; $mpdf->Output($filename_save, $page_type_output) ; // check page type if ($page_type == 'jpeg'){ //******************************************************************* //******************************************************************* save pdf file to jpeg file //******************************************************************* $img = new imagick() ; //this must be called before reading the image, otherwise has no effect - "-density {$x_resolution}x{$y_resolution}" $img->setResolution(300,300) ; //this is important to give good quality output, otherwise text might be unclear $img->readImage("{$filename_save}") ; //read the pdf $total_page = $img->getNumberImages() ; $img->setImageFormat('jpg') ; //set new format $img->writeImages($filename_jpeg, true) ; //save image file //******************************************************************* //******************************************************************* force download jpeg file //******************************************************************* $file_name = $filename_jpeg ; // grab the requested file's name // make sure it's a file before doing anything! if ($total_page > 1){ for ($i = 0; $i < $total_page; $i++){ $file_name = $filename_temp.'-'.$i.'.jpg' ; if(is_file($file_name)) { $files_to_zip[] = $file_name ; } } create_zip($files_to_zip, $filename_temp.'.zip') ; for ($i = 0; $i < $total_page; $i++){ unlink($filename_temp.'-'.$i.'.jpg') ; } $file_name = $filename_jpeg = $filename_temp.'.zip' ; } if(is_file($file_name)) { // required for IE if(ini_get('zlib.output_compression')) { ini_set('zlib.output_compression', 'Off') ; } // get the file mime type using the file extension switch(strtolower(substr(strrchr($file_name, '.'), 1))) { case 'pdf': $mime = 'application/pdf'; break ; case 'zip': $mime = 'application/zip'; break ; case 'jpeg': case 'jpg': $mime = 'image/jpg'; break ; default: $mime = 'application/force-download' ; } header('Pragma: public') ; // required header('Expires: 0') ; // no cache header('Cache-Control: must-revalidate, post-check=0, pre-check=0') ; header('Last-Modified: '.gmdate ('D, d M Y H:i:s', filemtime ($file_name)).' GMT') ; header('Cache-Control: private',false) ; header('Content-Type: '.$mime) ; header('Content-Disposition: attachment; filename="'.basename($file_name).'"') ; header('Content-Transfer-Encoding: binary') ; header('Content-Length: '.filesize($file_name)) ; // provide file size header('Connection: close') ; readfile($file_name); // push it out } unlink($filename_jpeg) ; unlink($filename_save) ; echo '' ; } ?>