X-Git-Url: https://delta.frontaccounting.com/gitweb/?a=blobdiff_plain;f=reporting%2Fincludes%2Fpdf_report.inc;h=115fa929d24ab9a34469ed9bffab0707fba42b7d;hb=59840905a38c4e08e5b13fdb7af71ea6dea7b1f0;hp=b9ae9410a22d56d2d8e52f243a3553ae1d55e9a4;hpb=37da0ea920fdff712ccef4e1324aa822e981c8fc;p=fa-stable.git diff --git a/reporting/includes/pdf_report.inc b/reporting/includes/pdf_report.inc index b9ae9410..115fa929 100644 --- a/reporting/includes/pdf_report.inc +++ b/reporting/includes/pdf_report.inc @@ -361,9 +361,7 @@ class FrontReport extends Cpdf if ($pdf_debug == 1) { - $buf = $this->Output(); - $len = strlen($buf); - $pdfcode = $buf; + $pdfcode = $this->Output('','S'); $pdfcode = str_replace("\n", "\n
", htmlspecialchars($pdfcode)); echo ''; echo trim($pdfcode); @@ -379,8 +377,6 @@ class FrontReport extends Cpdf else { - $buf = $this->Output(); - $len = strlen($buf); $dir = $comp_path.'/'.user_company(). '/pdf_files'; //save the file if (!file_exists($dir)) @@ -389,13 +385,8 @@ class FrontReport extends Cpdf } // do not use standard filenames or your sensitive company data // are world readable -// $fname = $dir . '/' . $this->filename; - $fname = tempnam($dir, 'xx'); - rename($fname, $fname.'.pdf'); - $fname .= '.pdf'; - $fp = fopen($fname,'w'); - fwrite($fp,$buf); - fclose($fp); + $fname = $dir.'/'.uniqid('').'.pdf'; + $this->Output($fname, 'F'); if ($email == 1) { $emailtype = true; @@ -458,23 +449,13 @@ class FrontReport extends Cpdf { $printer = get_report_printer(user_print_profile(), $_POST['REP_ID']); if ($printer == false) { - if(in_Ajax()) { + if(in_ajax()) { global $Ajax; - // in case of ajax call non-ajax page reload is forced. - // the alternative is to differ browser support from - // call to remote printing by some attribute of print links, - // but in this case we should check related printer target - // for any link on the page, even if never used. - - // display in popup window ... -// $Ajax->popup($_SERVER['PHP_SELF'].'?'.$_SERVER['QUERY_STRING']); - // ... or fire browser download popup - // $Ajax->redirect($_SERVER['PHP_SELF'].'?'.$_SERVER['QUERY_STRING']); -// strip document root from file path - $fname = substr(realpath($fname), strlen($_SERVER['DOCUMENT_ROOT'])); - if (substr($fname,0,1) != '/') $fname = '/'.$fname; - - $Ajax->redirect($fname); + + if (user_rep_popup()) + $Ajax->popup($fname); // when embeded pdf viewer used + else + $Ajax->redirect($fname); // otherwise use faster method } else { //echo ' //