From: Janusz Dobrowolski Date: Mon, 1 Mar 2010 09:53:09 +0000 (+0000) Subject: find_report_file() heler moved to main.inc and renamed to find_custom_file() X-Git-Tag: v2.4.2~19^2~941 X-Git-Url: https://delta.frontaccounting.com/gitweb/?a=commitdiff_plain;h=1c67490b878ae789ad0f27d8777e520a3d914c89;p=fa-stable.git find_report_file() heler moved to main.inc and renamed to find_custom_file() --- diff --git a/includes/main.inc b/includes/main.inc index ee604df8..cffb8ee6 100644 --- a/includes/main.inc +++ b/includes/main.inc @@ -313,4 +313,46 @@ function copy_file($file, $from, $to) } } +/* + Search for file, looking first for company specific version, then for + version provided by any extension module, finally in main FA directory. + Also adds include path for any related files. + + Returns found file path or null. +*/ +function find_custom_file($rep) +{ + global $installed_extensions, $comp_path, $path_to_root; + + // customized per company version + $path = $comp_path.'/'.user_company(); + $file = $path.$rep; + if (file_exists($file)) { + // add local include path + set_include_path($path.PATH_SEPARATOR.get_include_path()); + return $file; + } + // file added by active extension modules + if (count($installed_extensions) > 0) + { + $extensions = $installed_extensions; + foreach ($extensions as $ext) + if (($ext['active'] && $ext['type'] == 'extension')) { + $path = $path_to_root.'/'.$ext['path']; + $file = $path.$rep; + if (file_exists($file)) { + set_include_path($path.PATH_SEPARATOR.get_include_path()); + return $file; + } + } + } + // standard location + $file = $path_to_root.$rep; + if (file_exists($file)) + return $file; + + return null; +} + + ?> \ No newline at end of file diff --git a/reporting/prn_redirect.php b/reporting/prn_redirect.php index b228273d..3e362a23 100644 --- a/reporting/prn_redirect.php +++ b/reporting/prn_redirect.php @@ -17,39 +17,6 @@ $path_to_root = ".."; $page_security = 'SA_OPEN'; // this level is later overriden in rep file include_once($path_to_root . "/includes/session.inc"); -function find_report_file($rep) { - global $installed_extensions, $comp_path, $path_to_root; - - // customized per company versions - $path = $comp_path.'/'.user_company()."/reporting"; - $rep_file = $path."/rep$rep.php"; - if (file_exists($rep_file)) { - // add local include path for custom reports - set_include_path($path.PATH_SEPARATOR.get_include_path()); - 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')) { - $path = $path_to_root.'/'.$ext['path']."/reporting"; - $rep_file = $path."/rep$rep.php"; - if (file_exists($rep_file)) { - set_include_path($path.PATH_SEPARATOR.get_include_path()); - return $rep_file; - } - } - } - // 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']; @@ -85,9 +52,11 @@ if (!isset($_POST['REP_ID'])) { // print link clicked ? $_GET['PARAM_'.$i] : $def_pars[$i]; } } + $rep = $_POST['REP_ID']; -$rep_file = find_report_file($rep); +$rep_file = find_custom_file("/reporting/rep$rep.php"); + if ($rep_file) require($rep_file); else