<?php
-
-function help_url($title, $app)
+/**********************************************************************
+ Copyright (C) FrontAccounting, LLC.
+ Released under the terms of the GNU General Public License, GPL,
+ as published by the Free Software Foundation, either version 3
+ of the License, or (at your option) any later version.
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+ See the License here <http://www.gnu.org/licenses/gpl-3.0.html>.
+***********************************************************************/
+/*
+ If no context is set current page/menu screen is selected.
+*/
+function help_url($context=null)
{
- global $help_page_url, $help_base_url, $applications, $help_page_title;
+ global $SysPrefs, $help_context;
- if (isset($help_page_url))
+ $country = $_SESSION['language']->code;
+ $clean = 0;
+
+ if ($context!=null)
{
- return $help_base_url.$help_page_url;
+ $help_page_url = $context;
}
-
- $help_page_url = '';
- if (isset($help_page_title))
+ elseif (isset($help_context))
{
- $help_page_url = $help_page_title;
+ $help_page_url = $help_context;
+ } else // main menu
+ {
+ $app = $_SESSION['sel_app'];
+ $help_page_url = $_SESSION['App']->applications[$app]->help_context;
+ $clean = 1;
}
- elseif ($title==_("Main Menu"))
+
+ if (@$SysPrefs->old_style_help)
+ $help_page_url = _($help_page_url);
+
+ if ($clean)
+ $help_page_url = access_string($help_page_url, true);
+
+ return html_specials_encode(
+ $SysPrefs->help_base_url
+ .urlencode(strtr(ucwords($help_page_url), array(' '=>'', '/'=>'', '&'=>'And')))
+ .'&ctxhelp=1&lang='.$country);
+}
+
+function send_css($css = '')
+{
+ global $css_files;
+
+ css_files_ensure_init();
+
+ foreach ($css_files as $css_file)
{
- $help_page_url = $applications[$app];
+ echo "<link href='$css_file' rel='stylesheet' type='text/css'> \n";
}
- else
+ if ($css)
{
- $help_page_url = $title;
+ echo "<link href='$css' rel='stylesheet' type='text/css'> \n";
}
-
- return $help_base_url.urlencode(str_replace(' ', '', ucwords($help_page_url)));
}
-function send_scripts()
+function send_scripts()
{
- global $js_lib, $js_static, $js_path, $js_userlib, $comp_path,
- $path_to_root, $go_debug;
-
- add_user_js_data();
+ global $SysPrefs, $path_to_root, $js_static, $js_path, $js_userlib;
$js ='';
- foreach($js_static as $jsfile) {
- $fpath = $comp_path.'/'.user_company().'/js_cache/'.$jsfile;
+ foreach($js_static as $jsfile)
+ {
+ $cached_name = basename($jsfile);
+ $fpath = user_js_cache().'/'.$cached_name;
// compress also static files
- if (!file_exists($fpath) || $go_debug)
- cache_js_file($fpath, file_get_contents($js_path.$jsfile));
-
- $js .= '<script language="javascript" type="text/javascript" src="'.
- $fpath . '"></script>';
+ if (!file_exists($fpath) || $SysPrefs->go_debug)
+ cache_js_file($fpath, file_get_contents($js_path.$jsfile));
+
+ $js .= '<script language="javascript" type="text/javascript" src="'.
+ $fpath . '"></script>';
}
- foreach($js_userlib as $jsfile) {
- $js .= '<script language="javascript" type="text/javascript" src="'.
- $jsfile . '"></script>';
+ foreach($js_userlib as $jsfile)
+ {
+ $js .= '<script language="javascript" type="text/javascript" src="'.
+ $jsfile . '"></script>';
}
- foreach($js_lib as $text) {
- $js .= $text;
- }
- echo $js;
+ echo $js;
}
-function page_header($title, $no_menu=false, $is_index=false, $onload="", $js="")
+function page_header($title, $no_menu=false, $is_index=false, $onload="", $js="", $css='')
{
// titles and screen header
- global $db_connections, $path_to_root, $def_app, $applications,
- $help_base_url, $help_page_url, $use_popup_windows;
+ global $path_to_root, $SysPrefs, $db_connections;
- if (in_ajax()) return; // just for speed up
+ if (in_ajax() || isset($_POST['REP_ID']))
+ return; // just for speed up
$theme = user_theme();
- $local_path_to_root = $path_to_root;
- if ($help_base_url != null && $use_popup_windows && $js == '')
+ if ($SysPrefs->help_base_url != null && $SysPrefs->use_popup_windows && $js == '')
{
if (!function_exists('get_js_open_window'))
{
add_js_source(get_js_open_window(900, 500));
}
if ($js!='')
- add_js_source($js);
+ add_js_source($js);
if (!isset($no_menu))
{
$no_menu = false;
}
- if (!isset($_SESSION["sel_app"]))
- session_register("sel_app");
if (isset($_SESSION["App"]) && is_object($_SESSION["App"]) && isset($_SESSION["App"]->selected_application) &&
$_SESSION["App"]->selected_application != "")
$sel_app = $_SESSION["App"]->selected_application;
elseif (isset($_SESSION["sel_app"]) && $_SESSION["sel_app"] != "")
$sel_app = $_SESSION["sel_app"];
else
- $sel_app = $def_app;
+ $sel_app = user_startup_tab();
$_SESSION["sel_app"] = $sel_app;
+
+ // When startup tab for current user was set to already
+ // removed/inactivated extension module select Sales tab as default.
+ if (isset($_SESSION["App"]) && is_object($_SESSION["App"]))
+ $_SESSION["App"]->selected_application =
+ isset($_SESSION["App"]->applications[$sel_app]) ? $sel_app : 'orders';
+
+ $page_header_args = func_get_args();
+ if(isset($db_connections)) // skip before installation
+ hook_invoke_all('pre_header', $page_header_args);
+
$encoding = $_SESSION['language']->encoding;
if (!headers_sent()){
- header("Content-type: text/html; charset='$encoding'");
+ header("Content-type: text/html; charset=$encoding");
}
+ echo "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\" \"http://www.w3.org/TR/html4/loose.dtd\">\n";
echo "<html dir='" . $_SESSION['language']->dir . "' >\n";
- echo "<head><title>$title</title>";
- $local_stylesheet = $_SESSION['language']->get_stylesheet();
- echo "<meta http-equiv='Content-type' content='text/html'; charset='$encoding'>";
- echo "<link href='$local_path_to_root/themes/$theme/default.css' rel='stylesheet' type='text/css' /> \n";
- if (file_exists($local_path_to_root. "/".$local_stylesheet))
- echo "<link href='$local_path_to_root/$local_stylesheet' rel='stylesheet' type='text/css' /> \n";
- send_scripts($js);
+ echo "<head profile=\"http://www.w3.org/2005/10/profile\"><title>$title</title>";
+ if (strpos($_SERVER['HTTP_USER_AGENT'], 'Trident/7.0; rv:11.0') != -1) // IE 11 doesn't work with input file type in form.
+ echo "<meta http-equiv='X-UA-Compatible' content='IE=10'>\n";
+ echo "<meta http-equiv='Content-type' content='text/html; charset=$encoding'>";
+ echo "<link href='$path_to_root/themes/default/images/favicon.ico' rel='icon' type='image/x-icon'> \n";
+
+ send_css($css);
+
+ send_scripts();
echo "</head> \n";
if ($onload == "")
else
echo "<body onload=\"$onload\">";
- echo "<table class='callout_main' border='0' cellpadding='0' cellspacing='0'>\n";
- echo "<tr>\n";
- echo "<td colspan='2' rowspan='2'>\n";
-
- echo "<table class='main_page' border='0' cellpadding='0' cellspacing='0'>\n";
- echo "<tr>\n";
- echo "<td>\n";
- echo "<table width='100%' border='0' cellpadding='0' cellspacing='0'>\n";
- echo "<tr>\n";
- echo "<td class='quick_menu'>\n";
- if (!$no_menu)
- {
- echo "<table cellpadding=0 cellspacing=0 width='100%'><tr><td>";
- echo "<div class=tabs>";
- foreach($applications as $app => $name)
- {
- echo "<a ".($sel_app == $app ? "class='selected' " : "").
- "href='$local_path_to_root/index.php?application=".$app.
- SID ."'>" .$name . "</a>";
- }
- echo "</div>";
-
- echo "</td></tr></table>";
-
- echo "<table class=logoutBar>";
- echo "<tr><td class=headingtext3>" . $db_connections[$_SESSION["wa_current_user"]->company]["name"] . " | " . $_SERVER['SERVER_NAME'] . " | " . $_SESSION["wa_current_user"]->name . "</td>";
- if ($help_base_url != null)
- {
-
- echo "<td align=right ><a target = '_blank' onclick=" .'"'."javascript:openWindow(this.href,this.target); return false;".'" '. "href='". help_url($title, $sel_app)."'>" . _("Help") . "</a></td>";
- }
- echo "<td class=logoutBarRight><a href='$local_path_to_root/access/logout.php?'>" . _("Logout") . "</a>";
- echo "</td></tr></table>";
- }
-
- echo "</td></tr></table>";
-
- if ($title && !$no_menu && !$is_index)
- {
- echo "<center><table width='100%'><tr><td width='100%' class='titletext'>$title</td></tr></table></center>";
- }
-
- if (!$is_index)
- echo "<br>";
+ include_once($path_to_root . "/themes/$theme/renderer.php");
+ $rend = new renderer();
+ $rend->menu_header($title, $no_menu, $is_index);
+ error_box();
}
-?>
\ No newline at end of file