IE 11 doesn't work with input file type in forms. Fixed.
[fa-stable.git] / includes / page / header.inc
index b0364cbebcec0e19c6c94ae187dfe13ea768455c..147b3293fd49662ac4fb7820f7373bf725bb7ac8 100644 (file)
@@ -40,20 +40,19 @@ function help_url($context=null)
        if ($clean)
                $help_page_url = access_string($help_page_url, true);
 
-       return $help_base_url
+       return htmlspecialchars($help_base_url
                .urlencode(strtr(ucwords($help_page_url), array(' '=>'', '/'=>'', '&'=>'And')))
-               .'&ctxhelp=1&lang='.$country;
+               .'&ctxhelp=1&lang='.$country);
 }
 
 function send_scripts()
 {
-    global $js_lib, $js_static, $js_path, $js_userlib, $comp_path,
-       $path_to_root, $go_debug;
+    global $js_static, $js_path, $js_userlib, $path_to_root, $go_debug;
 
        $js ='';
        foreach($js_static as $jsfile)
        {
-           $fpath = $comp_path.'/'.user_company().'/js_cache/'.$jsfile;
+           $fpath = company_path().'/js_cache/'.$jsfile;
            // compress also static files
                if (!file_exists($fpath) || $go_debug)
                        cache_js_file($fpath, file_get_contents($js_path.$jsfile));
@@ -70,10 +69,10 @@ function send_scripts()
     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 $path_to_root, $def_app, $use_popup_windows, $help_base_url;
+       global $path_to_root, $def_app, $use_popup_windows, $help_base_url, $db_connections;
 
        if (in_ajax())
                return; // just for speed up
@@ -84,7 +83,6 @@ function page_header($title, $no_menu=false, $is_index=false, $onload="", $js=""
 //             add_js_ufile($jsext);
 
        $theme = user_theme();
-       $local_path_to_root = $path_to_root;
 
        if ($help_base_url != null && $use_popup_windows && $js == '')
        {
@@ -101,8 +99,6 @@ function page_header($title, $no_menu=false, $is_index=false, $onload="", $js=""
        {
                $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;
@@ -117,25 +113,36 @@ function page_header($title, $no_menu=false, $is_index=false, $onload="", $js=""
        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>";
+       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='$local_path_to_root/themes/$theme/default.css' rel='stylesheet' type='text/css'> \n";
-       send_scripts($js);
+       echo "<link href='$path_to_root/themes/$theme/default.css' rel='stylesheet' type='text/css'> \n";
+       echo "<link href='$path_to_root/themes/default/images/favicon.ico' rel='icon' type='image/x-icon'> \n";
+       if ($css)
+               echo '<link href="'.$css.'" rel="stylesheet" type="text/css">';
+
+       send_scripts();
 
        echo "</head> \n";
        if ($onload == "")
                echo "<body>";
        else
                echo "<body onload=\"$onload\">";
-       include_once($local_path_to_root."/themes/".user_theme()."/renderer.php");
+
+       include_once($path_to_root . "/themes/$theme/renderer.php");
        $rend = new renderer();
        $rend->menu_header($title, $no_menu, $is_index);
        error_box();