X-Git-Url: https://delta.frontaccounting.com/gitweb/?a=blobdiff_plain;f=includes%2Fmain.inc;h=ef86d4383903f587fda2eda5ab7e5f6b2eac000c;hb=3613e32ad573d5faccb974a421702bdd87583878;hp=ee604df88e275e7e3c34b34903353066e787eab0;hpb=198ee81ae6763c4140b72d7cb7f3e7888e2ce14d;p=fa-stable.git diff --git a/includes/main.inc b/includes/main.inc index ee604df8..ef86d438 100644 --- a/includes/main.inc +++ b/includes/main.inc @@ -47,12 +47,12 @@ function page($title, $no_menu=false, $is_index=false, $onload="", $js="", $scri } } -function end_page($no_menu=false, $is_index=false, $hide_back_link=false) +function end_page($no_menu=false, $is_index=false, $hide_back_link=false, $type_no=0, $trans_no=0) { global $path_to_root; if (!$is_index && !$hide_back_link && function_exists('hyperlink_back')) - hyperlink_back(true, $no_menu); + hyperlink_back(true, $no_menu, $type_no, $trans_no); div_end(); // end of _page_body section include($path_to_root . "/includes/page/footer.inc"); @@ -312,5 +312,61 @@ function copy_file($file, $from, $to) return @copy($from.'/'.$file, $to.'/'.$file); } } +/* + Returns current path to company private folder. + (Current path can change after chdir). +*/ +function company_path($comp=null) +{ + global $path_to_root, $comp_path; + + if (!isset($comp)) + $comp = user_company(); + + // if path is relative, set current path_to_root + return ($comp_path[0]=='.' ? $path_to_root.'/'.basename($comp_path) : $comp_path) + . '/'.$comp; +} +/* + 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 = company_path(); + $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