var http_request = false; 
var winname;
var winnr;
var LastAjaxCall;

function mouseY(evt) {
  if (evt.pageY) return evt.pageY;
  else if (evt.clientY)
     return evt.clientY + (document.documentElement.scrollTop ?
     document.documentElement.scrollTop :
     document.body.scrollTop);
  else return null;
}

function getString(URL, Name) { 

    http_request = false; 
    LastAjaxCall = Name;
    if (window.XMLHttpRequest) { // Mozilla, Safari,... 
        http_request = new XMLHttpRequest(); 
        if (http_request.overrideMimeType) { 
            http_request.overrideMimeType('text/xml'); 
            // zu dieser Zeile siehe weiter unten 
        } 
    } else if (window.ActiveXObject) { // IE 
        try { 
            http_request = new ActiveXObject("Msxml2.XMLHTTP"); 
        } catch (e) { 
            try { 
                http_request = new ActiveXObject("Microsoft.XMLHTTP60"); 
                
            } catch (e) {} 
        } 
    } 

    if (!http_request) { 
        return false; 
    } 
    http_request.open('GET', URL, true); 
    http_request.onreadystatechange = returnString;     
    http_request.send(null);
}

function returnString() { 
    if (http_request.readyState == 4)
    {
        var returnedString = http_request.responseText;
        switch (LastAjaxCall)
        {
            case "make":
                onCompleteApplySelect(returnedString, "_MODEL");
            break;
            case "model":
                onCompleteApplySelect(returnedString, "_SERIE");
            break;
            case "serie":       
                onCompleteApplySelect(returnedString, "_DESIGN");                
            break;
            case "year":       
                onCompleteApplySelect(returnedString, "_MAKE");
            break;
            case "option":       
                onCompleteOptionConfiguration(returnedString);
            break;
        }            
    }
} 

function getContent(url, layer_id) { 

    winname = layer_id;

    document.getElementById(layer_id).style.display = "block"; 
    document.getElementById(layer_id).style.cursor = "wait";
    http_request = false; 

    if (window.XMLHttpRequest) { // Mozilla, Safari,... 
        http_request = new XMLHttpRequest(); 
        if (http_request.overrideMimeType) { 
            http_request.overrideMimeType('text/xml'); 
            // zu dieser Zeile siehe weiter unten 
        } 
    } else if (window.ActiveXObject) { // IE 
        try { 
            http_request = new ActiveXObject("Msxml2.XMLHTTP"); 
        } catch (e) { 
            try { 
                http_request = new ActiveXObject("Microsoft.XMLHTTP60"); 
                
            } catch (e) {} 
        } 
    } 

    if (!http_request) { 
        return false; 
    } 
    http_request.open('GET', url, true); 
    http_request.onreadystatechange = showContent;     
    http_request.send(null); 

}
function showContent() { 
    if (http_request.readyState == 4) { 
      document.getElementById(winname).innerHTML = http_request.responseText;
      document.getElementById(winname).style.cursor = "default";
      document.getElementById(winname).style.visibility = "visible";
    } 
    HideWorkingDIV();
} 
var http_generic = false;
function GenericRequest(URL, onready)
{   
    if (window.XMLHttpRequest) { // Mozilla, Safari,... 
        http_generic = new XMLHttpRequest(); 
        if (http_generic.overrideMimeType) { 
            http_generic.overrideMimeType('text/xml'); 
            // zu dieser Zeile siehe weiter unten 
        } 
    } else if (window.ActiveXObject) { // IE 
        try { 
            http_generic = new ActiveXObject("Msxml2.XMLHTTP"); 
        } catch (e) { 
            try { 
                http_generic = new ActiveXObject("Microsoft.XMLHTTP60"); 
                
            } catch (e) {} 
        } 
    } 

    if (!http_generic) { 
        return false; 
    } 
    http_generic.open('GET', URL, true);    
    http_generic.onreadystatechange = onready;
    http_generic.send(null);
}
function SetValuesRequest(URL)
{
    if (window.XMLHttpRequest) { // Mozilla, Safari,... 
        http_generic = new XMLHttpRequest(); 
        if (http_generic.overrideMimeType) { 
            http_generic.overrideMimeType('text/xml'); 
            // zu dieser Zeile siehe weiter unten 
        } 
    } else if (window.ActiveXObject) { // IE 
        try { 
            http_generic = new ActiveXObject("Msxml2.XMLHTTP"); 
        } catch (e) { 
            try { 
                http_generic = new ActiveXObject("Microsoft.XMLHTTP60"); 
                
            } catch (e) {} 
        } 
    } 

    if (!http_generic) { 
        return false; 
    } 
    http_generic.open('GET', URL, true);    
    http_generic.onreadystatechange = SetValues;
    http_generic.send(null);
}
function SetValues()
{
    if (http_generic.readyState == 4)
    {
        var returnedString = http_generic.responseText;
        var pos_start = returnedString.lastIndexOf("_AJAXRESULT") + "_AJAXRESULT".length + 2;
        var temp = returnedString.substring(pos_start, pos_start+1000);        
        var pos_ende = temp.indexOf("</div>");                
        var roh = temp.substring(0, pos_ende);
        if (roh.indexOf("|")==-1)
            return;
        var toset = roh.split(';');
        
        var data;        
        for(var i = 0; i< toset.length;i++)
        {   
            data = toset[i].split('|');            
            document.getElementById(data[0]).value =data[1];
        }                
    }
}
function getWindowSize() {
  var win = new Object();
  var wh, ww
  
  if (window.innerHeight) {
    wh = window.innerHeight;
    ww = window.innerWidth;
  }
  else if (document.documentElement && document.documentElement.clientHeight)    {
    wh = document.documentElement.clientHeight;
    ww = document.documentElement.clientWidth;
  }
  else if (document.body)    {
    wh = document.body.clientHeight;
    ww = document.body.clientWidth;
  }
  
  win.Height = wh;
  win.Width = ww;
  
  return win;
}

function ShowWorkingDIV()
{
    var win = getWindowSize();
    h = win.Height;
    w = win.Width;

    if (document.getElementById("_WORKINGDIV")) {
        document.getElementById("_WORKINGDIV").style.height = document.body.offsetHeight + "px";
        document.getElementById("_WORKINGDIV").style.width = document.body.offsetWidth + "px";
        document.getElementById("_WORKINGDIV").style.visibility = "visible";
    }        
}  

function HideWorkingDIV()
{
    if (document.getElementById("_WORKINGDIV")) {
        document.getElementById("_WORKINGDIV").style.visibility = "hidden";
    }        
}
function getScrollXY() {
    var scrOfX = 0, scrOfY = 0;

    if (typeof (window.pageYOffset) == 'number') {
        //Netscape compliant
        scrOfY = window.pageYOffset;
        scrOfX = window.pageXOffset;
    } else if (document.body && (document.body.scrollLeft || document.body.scrollTop)) {
        //DOM compliant
        scrOfY = document.body.scrollTop;
        scrOfX = document.body.scrollLeft;
    } else if (document.documentElement && (document.documentElement.scrollLeft || document.documentElement.scrollTop)) {
        //IE6 standards compliant mode
        scrOfY = document.documentElement.scrollTop;
        scrOfX = document.documentElement.scrollLeft;
    }

    position = new Object();
    position.x = scrOfX;
    position.y = scrOfY;
    
    return position;
}

function getPosition(element) 
{
    var win = getWindowSize();
    win.Height
    win.Width

    var elem=element,tagname="",x=0,y=0;
    y = elem.offsetHeight;
    x = 20;

    while ((typeof(elem)=="object")&&(typeof(elem.tagName)!="undefined"))
    {
      y+=elem.offsetTop;
      x+=elem.offsetLeft;
      tagname=elem.tagName.toUpperCase();

      if ((tagname=="HTML") || (tagname=="BODY"))
      {
        elem=0;
        } 

      if (typeof(elem)=="object")
        if (typeof(elem.offsetParent)=="object")
          elem=elem.offsetParent;
    }
    position=new Object();
    position.x=x;
    position.y=y;

    if (element.offsetWidth && element.offsetHeight) {
        position.width = element.offsetWidth;
        position.height = element.offsetHeight;
    }
    else if (element.style && element.style.pixelWidth && element.style.pixelHeight) {
        position.width = elem.style.pixelWidth;
        position.height = elem.style.pixelHeight;
    }

    return position;
}
