// std_support full version - Version 020214
// send questions about this file to mail@leonhardt.de or www.internetwork-bosch.com
// ---------------------------------------------------------------------------------

// PARAMETERS BEGIN
// Language definition: very important information!
var param_lang = new Array();
//param_lang[1] = new language ("Deutsch", "de", ""); // format: ("name (Text)", "id (directory-name)", "root")
param_lang[0] = new language ("English", "en", ""); // format: ("name (Text)", "id (directory-name)", "root")
//param_lang[2] = new language ("Fran&ccedil;ais", "fr", ""); // format: ("name (Text)", "id (directory-name)", "root")
//param_lang[3] = new language ("Italiano", "it", ""); // format: ("name (Text)", "id (directory-name)", "root")
//param_lang[4] = new language ("Espa&ntilde;ol", "es", ""); // format: ("name (Text)", "id (directory-name)", "root")
var param_currentLanguageIndex = 0;		//language used in this current directory according to param_lang[]-Array
var param_currentLanguageID = "en";  	// format: Internet-Domain (TLD), e.g. "pt", "es", "fr", "it"!

// Imprint
var param_hasImpressum = true;
var param_textImpressum = "Imprint";
var param_urlImpressum = "";
// Date 
var param_hasDate = true;
// Show/Hide Features
var param_hasWebassist 	= false;
var param_hasMyBosch 	= false;
var param_hasSources 	= false;
var param_hasContact	= false;
var param_hasLanguages  = false;
// Features Text
var webAssistText 	= "Web Assistant";
var myBoschText		= "";
var sourcesText		= "";
var contactText 	= "";
var langText        = "In your country";

// Fallback for Navigation (default-entry)
var param_newGlobalBoschName = ""; //to override navigation-label "Bosch in Deutschland" with other expression
var param_fallbackUrl 	= ""; //default: http://www.bosch.de
var param_fallbackText 	= ""; //default: Startseite Bosch.de

// PARAMETERS USUALLY NOT TO EDIT
// -------------------------------------------------------------------------
// Languages
var hasLanguages = param_lang.length > 1;
// Standard-root definition local
var param_std_root = "";
//Standard-Root to Header-File
var param_header_root ="";//"http://www.bosch.de/start/";
// Netscape 4.x Variables for resize fix
var ns_origWidth;
var ns_origHeight;
// Standard Stylesheets
var param_std_stylesheets = true;
// Worldwide-Link: usually not active
var param_hasWorldwide = false;
var param_textWorldwide ="Weltweit";
var param_urlWorldwide = "http://www.bosch.com";

// PARAMETERS END
// -------------------------------------------------------------------------

// PLEASE DON'T MAKE ANY MODIFICATIONS BELOW THIS LINE!!!
// -------------------------------------------------------------------------
// INTERNAL PARAMETER BEGIN
// Install Bosch-Header
var scriptPath = getHeaderPath ("scripts");
//document.write("<script language='JavaScript' src='"+ scriptPath +"cookies.js'></script>")
document.write("<script language='JavaScript' src='"+ scriptPath +"header_ds.js'></script>")
// Standard variables
var std_version = 20020214;//20011024
var debug = false;
var fallbacklanguages = false; // use the fallback for the language popup
// INTERNAL PARAMETER END

// -------------------------------------------------------------------------
// UTILITY FUNCTIONS BEGIN

function getPath (kind, myloc, languageid) {
	if (!myloc || typeof (myloc) != "string") var myloc = location.href;
	if (typeof (languageid) != "number") var languageid = param_currentLanguageIndex;
	switch(kind) {
		case "root":
			if (param_std_root) return param_std_root;
			var tmp = "";
			var tmp = getPath ("localroot", myloc);
			return (tmp.substring (0, tmp.length-param_lang[languageid].id.length-1));
		case "localroot":
			if (param_lang[languageid].root) return (param_lang[languageid].root);
			else if (param_std_root) return (param_std_root + param_lang[languageid].id + "/");
			var tmp = "";
			var lng = "/" + param_lang[languageid].id + "/";
			if (myloc.indexOf (lng) >= 0) tmp = myloc.substring (0, myloc.indexOf (lng)) + lng;
			return tmp;
		case "languageroot":
			if (param_lang[languageid].root) return (param_lang[languageid].root);
			var myloc = location.href;
			var tmp = "";
			var cur_dir = "/"+param_lang[param_currentLanguageIndex].id+"/";
			var newlng_dir = "/"+param_lang[languageid].id + "/";
			if (myloc.indexOf (cur_dir) >= 0) tmp = myloc.substring (0, myloc.indexOf (cur_dir)) + newlng_dir;
			return (tmp);
		case "styles":
			return (getPath ("localroot", myloc) + "scripts/");
		case "scripts":
			return (getPath ("localroot", myloc) + "scripts/");
		case "shared":
			return (getPath ("localroot", myloc) + "shared/");
		case "windows":
			 return (getPath ("localroot", myloc) + "scripts/windows/");
		case "localdocument":
			var localroot = getPath ("languageroot", myloc, param_currentLanguageIndex);
			return (myloc.substring (localroot.length, myloc.length));
		default:
			return "";
			break;
	}
}

function getHeaderPath (kind, myloc, languageid){
	if (param_std_root) return (getPath(kind,myloc,languageid));
	if (param_header_root) {
		if (kind == "styles") return (param_header_root + param_currentLanguageID + "/scripts/");
		if (kind == "scripts") return (param_header_root + param_currentLanguageID + "/scripts/");
		if (kind == "shared")  return (param_header_root + param_currentLanguageID + "/shared/");
		if (kind == "windows") return (param_header_root + param_currentLanguageID + "/scripts/windows/");
	}
	return (getPath(kind,myloc,languageid));
}

function installStyleSheets() {
	document.write('<link rel="StyleSheet" type="text/css" href="' + getPath ("styles") + 'standard.css">');
}

function openWindow(url, name, params) {
	return (window.open(url, name, params));
}

function netscapeResizeFix() {
	if (typeof (ns_origWidth) != "number" || typeof (ns_origHeight) != "number") return;
	if (innerWidth != ns_origWidth || innerHeight != ns_origHeight) location.reload();
}

function switchLanguage(newloc) {
	location.href = newloc;
}

function language(name, id, root) {
	if (typeof (root) == "undefined") var root = "";
	this.name = name;
	this.id = id;
	this.root = root;
}

function showStatus(msg){
	window.status = msg;
}

function selfinstall(){
	if (!supportedBrowser()) return;

	// store window size for Netscape 4.x resize fix
	if (getBrowser() == "ns4"){
		ns_origWidth = innerWidth;
		ns_origHeight = innerHeight;
		onresize = netscapeResizeFix;
	}
	// install style sheets
	if (param_std_stylesheets) {
		installStyleSheets();
	}
}

function getLayerRef (layername)
{
	var b = getBrowser();
	if (b == "ns4")									return (document.layers[layername]);
	if (b == "ie5" || b == "ns6")		return (document.getElementById(layername));
	if (b == "ie4")									return (document.all[layername]);
	return null;
}

function getLayerStyleRef (layername)
{
	var b = getBrowser();
	if (b == "ns4")									return (document.layers[layername]);
	if (b == "ie5" || b == "ns6")		if (document.getElementById(layername)) return (document.getElementById(layername).style);
	if (b == "ie4")									if (document.all[layername]) return (document.all[layername].style);
	return null;
}

function getDocumentProperty (property)
{
	var b = getBrowser();

	if (property == "clientWidth")
	{
		if (b.indexOf ("ns") >= 0) return (window.innerWidth-16);
		if (b.indexOf ("ie") >= 0) return (document.body.clientWidth);
	}

	if (property == "clientHeight")
	{
		if (b.indexOf ("ns") >= 0) return (window.innerHeight);
		if (b.indexOf ("ie") >= 0) return (document.body.clientHeight);
	}

	if (property == "scrollTop")
	{
		if (b.indexOf ("ns") >= 0) return (window.pageYOffset);
		if (b.indexOf ("ie") >= 0) return (document.body.scrollTop);
	}

	return (-1);
}

function layerWrite(layerRef,txt)
{
	var b = getBrowser();
	if (b == "ns4")
	{
		layerRef.document.open();
		layerRef.document.write(txt);
		layerRef.document.close();
	}
	else
		layerRef.innerHTML=txt;
}