find_report_file() heler moved to main.inc and renamed to find_custom_file()
authorJanusz Dobrowolski <janusz@frontaccounting.eu>
Mon, 1 Mar 2010 09:53:09 +0000 (09:53 +0000)
committerJanusz Dobrowolski <janusz@frontaccounting.eu>
Mon, 1 Mar 2010 09:53:09 +0000 (09:53 +0000)
includes/main.inc
reporting/prn_redirect.php

index ee604df88e275e7e3c34b34903353066e787eab0..cffb8ee67c9871bc519b0df6851d368cdb20e472 100644 (file)
@@ -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
index b228273d3a2cbdd6788745265104893fb8ee3039..3e362a23b3a027961dfcc1df7f6bd1247daef042 100644 (file)
@@ -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