From 4e6811018489ed5d9e4c029342c958e266d7b298 Mon Sep 17 00:00:00 2001 From: ApMuthu Date: Sun, 19 Mar 2017 14:32:53 +0100 Subject: [PATCH] Fixed problems with excel report generation. --- includes/main.inc | 2 +- reporting/prn_redirect.php | 19 +++---------------- 2 files changed, 4 insertions(+), 17 deletions(-) diff --git a/includes/main.inc b/includes/main.inc index b61b41a8..18e51c56 100644 --- a/includes/main.inc +++ b/includes/main.inc @@ -369,7 +369,7 @@ function random_id($strength = 128) for($i=0; $i < $n; $i++) $bin .= chr(mt_rand(0, 255)); // Mersene Twister generator } - $id = strtr(base64_encode($bin), '+/', '-_'); // see RFC 4648 Section 5 + $id = strtr(base64_encode($bin), '+/=', '-_x'); // see RFC 4648 Section 5 return $id; } diff --git a/reporting/prn_redirect.php b/reporting/prn_redirect.php index d7147a7f..9d9ac858 100644 --- a/reporting/prn_redirect.php +++ b/reporting/prn_redirect.php @@ -27,10 +27,10 @@ if (isset($save_report_selections) && $save_report_selections > 0 && isset($_POS } } -if (isset($_GET['xls'])) +if (isset($_GET['xls']) || isset($_GET['xml'])) { $filename = $_GET['filename']; - $unique_name = preg_replace('/[^0-9a-z.]/i', '', $_GET['unique']); + $unique_name = preg_replace('/[^0-9_a-z.\-]/i', '', $_GET['unique']); $path = company_path(). '/pdf_files/'; header("Content-type: application/vnd.ms-excel"); header("Content-Disposition: attachment; filename=$filename" ); @@ -40,20 +40,7 @@ if (isset($_GET['xls'])) echo file_get_contents($path.$unique_name); exit(); } -elseif (isset($_GET['xml'])) -{ - $filename = $_GET['filename']; - $unique_name = preg_replace('/[^0-9a-z.]/i', '', $_GET['unique']); - $path = company_path(). '/pdf_files/'; - header("content-type: text/xml"); - header("Content-Disposition: attachment; filename=$filename"); - header("Expires: 0"); - header("Cache-Control: must-revalidate, post-check=0,pre-check=0"); - header("Pragma: public"); - echo file_get_contents($path.$unique_name); - exit(); -} - + if (!isset($_POST['REP_ID'])) { // print link clicked $def_pars = array(0, 0, '', '', 0, '', '', 0); //default values $rep = $_POST['REP_ID'] = $_GET['REP_ID']; -- 2.30.2