X-Git-Url: https://delta.frontaccounting.com/gitweb/?a=blobdiff_plain;f=reporting%2Fprn_redirect.php;h=22d48cfc1580f048dc70883505e1a33887177298;hb=0c1ab57c09d87eed2bd248892dbfe3f256767a82;hp=9018e0fd424be98585075561fb44a8f02b3d4fea;hpb=877aa741346d3ac9c0bfffa90cbe10ed16f7c8f3;p=fa-stable.git diff --git a/reporting/prn_redirect.php b/reporting/prn_redirect.php index 9018e0fd..22d48cfc 100644 --- a/reporting/prn_redirect.php +++ b/reporting/prn_redirect.php @@ -14,45 +14,24 @@ print button in reporting module. */ $path_to_root = ".."; +global $page_security; $page_security = 'SA_OPEN'; // this level is later overriden in rep file include_once($path_to_root . "/includes/session.inc"); -/* - Find report definition file. - Standard reports can be superseded by report with the same id - included in active extension, or company customized report. -*/ -function find_report_file($rep) { - global $installed_extensions, $comp_path, $path_to_root; - - // customized per company versions - $rep_file = $comp_path.'/'.user_company()."/reporting/rep$rep.php"; - if (file_exists($rep_file)) - return $rep_file; - // reports added by active extension modules - if (count($installed_extensions) > 0) - { - $extensions = $installed_extensions; - foreach ($extensions as $ext) - if (($ext['active'] && $ext['type'] == 'module')) { - $rep_file = $path_to_root.'/'.$ext['path']."/reporting/rep$rep.php"; - if (file_exists($rep_file)) - return $rep_file; - } +if (user_save_report_selections() > 0 && isset($_POST['REP_ID'])) { // save parameters from Report Center + for($i=0; $i<12; $i++) { // 2013-01-16 Joe Hunt + if (isset($_POST['PARAM_'.$i]) && !is_array($_POST['PARAM_'.$i])) { + $rep = $_POST['REP_ID']; + setcookie("select[$rep][$i]", $_POST['PARAM_'.$i], time()+60*60*24*user_save_report_selections()); // days from user_save_report_selections() + } } - // standard reports - $rep_file = $path_to_root ."/reporting/rep$rep.php"; - if (file_exists($rep_file)) - return $rep_file; - - return null; -} +} if (isset($_GET['xls'])) { $filename = $_GET['filename']; - $unique_name = $_GET['unique']; - $path = $comp_path.'/'.user_company(). '/pdf_files/'; + $unique_name = preg_replace('/[^0-9a-z.]/i', '', $_GET['unique']); + $path = company_path(). '/pdf_files/'; header("Content-type: application/vnd.ms-excel"); header("Content-Disposition: attachment; filename=$filename" ); header("Expires: 0"); @@ -64,8 +43,8 @@ if (isset($_GET['xls'])) elseif (isset($_GET['xml'])) { $filename = $_GET['filename']; - $unique_name = $_GET['unique']; - $path = $comp_path.'/'.user_company(). '/pdf_files/'; + $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"); @@ -83,10 +62,15 @@ if (!isset($_POST['REP_ID'])) { // print link clicked ? $_GET['PARAM_'.$i] : $def_pars[$i]; } } -$rep = $_POST['REP_ID']; -$rep_file = find_report_file($rep); -require($rep_file); +$rep = preg_replace('/[^a-z_0-9]/i', '', $_POST['REP_ID']); + +$rep_file = find_custom_file("/reporting/rep$rep.php"); + +if ($rep_file) { + require($rep_file); +} else + display_error("Cannot find report file '$rep'"); exit(); ?> \ No newline at end of file