var param_mybosch_location = "http://www.bosch.pl/content/service/mb/loader.asp"; 
//url to suppliers jsp startpage
var param_sources_location = "http://www.bosch.pl/content/service/supplier/index.asp";
//url to contact jsp startpage
var param_contact_location = "http://www.bosch.pl/content/service/contact/index.asp";
//url to webassistant root folder
var param_webassist_location = "http://www.bosch.pl/content/service/wa/index.asp";

var params = "width=565,height=498,toolbar=no,location=no,directories=no,scrollbars=no,status=no,menubar=no,resizable=no";
var params1 = "width=440,height=408,toolbar=no,location=no,directories=no,scrollbars=yes,status=no,menubar=no,resizable=no";
var params2 = "width=564,height=498,toolbar=no,location=no,directories=no,scrollbars=no,status=no,menubar=no,resizable=no";
var params3 = "width=564,height=498,toolbar=no,location=no,directories=no,scrollbars=no,status=no,menubar=no,resizable=no";

var gb="";
var email="";

var languageMapping = new Array();
languageMapping["PLK"]="pl_PL";
languageMapping["ENG"]="en_US";

function displayDate(inStyle) {
    if(typeof(inStyle)=="undefined")inStyle="PLK";
	switch (inStyle){
		case "PL":
			inStyle="pl";
			break;
		case "PLK":
			inStyle="pl";
			break;
		case "EN":
			inStyle="en";
			break;
		case "ENG":
			inStyle="en";
			break;
	}
}


function openMyBosch(){
	
   theStr="?locale=" + escape(curLanguage);
   window.open(param_mybosch_location+theStr, "mybosch","width=100,height=100,toolbar=no,location=no,directories=no,scrollbars=no,status=no,menubar=no,resizable=no");
   
}
function openWebassistant(inInfo){
     	if (typeof(inInfo) != "string") inInfo = "";
     	myurl = param_webassist_location;
     	
		myurl = myurl + "?query="+urlEncode(inInfo)+"&locale="+getLocale(curLanguage)+"&opener=" + escape(self.location.href);
     	window.open(myurl, "webassi", params2);
}

function openSource(){
    	path = param_sources_location;
     	//var theLanguage=curLanguage.substr(0,2);//nur bis WA Parser steht
     	myurl = path+'?gb='+gb+'&locale='+getLocale(curLanguage)+'&product=&opener='+ escape(self.location.href);
     	window.open(myurl, "bezug", params);
}

function openContact(){
    	//var theLanguage=curLanguage.substr(0,2);//nur bis WA Parser steht
    	path = param_contact_location; 
     	myurl = path+'?gb='+gb+'&locale='+getLocale(curLanguage)+'&option1=&option2=&email='+email+'&product=&opener='+ escape(self.location.href);     
    	window.open(myurl, "contact", params);
}

function openImpressum(){
		var theLanguage=curLanguage.substr(0,2);
		path = param_impressum_location;
		myurl = path
   	window.open(myurl, "imprint", params1);  
}


function getWebQuery(){
	if (document.forms.webassistant.webassistant.value != "") {
		var query = document.forms.webassistant.webassistant.value;
		openWebassistant(query);
	}
	else {
		openWebassistant();
	}
} 

function getLocale(inLanguage){
	return languageMapping[inLanguage];
}


function urlEncode(rawText){
      // this converts the rawText into x-www-form-urlencoded format (and space to "%20")
      var encoded = "";
      for(var n=0; n<rawText.length; n++) {
        var c=rawText.charCodeAt(n);
        // all chars in range 0-127 => 1byte   without (A-Z, a-z, 0-9, *, -, ., _)
        if (c<128) {
            if ((c >= 65 && c <= 90) || (c >= 97 && c <= 122) || (c >= 48 && c <= 57) || (c==42) || (c==45) || (c==46) || (c==95))
                encoded += String.fromCharCode(c);
            else 
                encoded += '%' + c.toString(16);
        }
        // all chars in range 127 to 2047 => 2byte
        else if((c>127) && (c<2048)) {
          encoded += '%' + ((c>>6)|192).toString(16);
          encoded += '%' + ((c&63)|128).toString(16);
        }
        // all chars in range 2048 to 66536 => 3byte
        else {
          encoded += '%' + ((c>>12)|224).toString(16);
          encoded += '%' + (((c>>6)&63)|128).toString(16);
          encoded += '%' + ((c&63)|128).toString(16);
        }
      }
      return encoded;
    }
	
function utf8Encode (str) {
	    //this converts the str into hexadecimal-unicode format (\uXXXX) - utf-8-encoded
      len = str.length; 
      res = new String(); 
      charOrd = new Number(); 
     
      for (i = 0; i < len; i++) { 
        charOrd = str.charCodeAt(i); 
        if ((charOrd >= 65 && charOrd <= 90) || (charOrd >= 97 && charOrd <= 122) || (charOrd >= 48 && charOrd <= 57) || (charOrd == 33) || (charOrd == 36) || (charOrd == 95)) { 
            // das ist alphanumeric oder $-_.+!*'(), was laut RFC1738 nicht escape wird
            res += str.charAt(i); 
        } 
        else { 
          if (charOrd > 255) {
				    res += '\\u'; 
				    hexValStr = charOrd.toString(16); 
            if ((hexValStr.length) % 2 == 1) hexValStr = '0' + hexValStr; 
			    }else{
				    if (charOrd>=128){
					    if(charOrd<=191){
						    res += '%C2%';
					    }else{
						    res += '%C3%';
						    charOrd-=64;
					    }		
				    }else{
					    res+='%';
				    }
				    hexValStr = charOrd.toString(16); 
            if ((hexValStr.length) % 2 == 1) hexValStr = '0' + hexValStr; 
			    }         
          res += hexValStr; 
        } 
      } 
      return res; 
    }