/* SVN: $Id: ajax_client.js 1878 2008-06-24 03:56:17Z dukemaster $ */
//var xmlHttp;

var fadeKill = 0;

function doPost(thisform)
{
    var xmlHttp=GetXmlHttpObject()
    if (xmlHttp==null)
    {
        alert ("Browser does not support HTTP Request")
        return
    }
    document.getElementById("results").style.opacity=0.50;
    document.getElementById('ajaxloading').style.display = 'block';
    var url="/ajax_engine.php"
    var str;
    str = "version=0.3";
    for(j=0;j<thisform.elements.length;j++){
        var formObj=thisform.elements[j];
        str=str+'&'+formObj.name+'='+formObj.value;
	}
    str=str+"&sid="+Math.random()
    xmlHttp.onreadystatechange=function () 
    {
        if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
        { 
            document.getElementById("results").style.opacity=1;
            document.getElementById("results").innerHTML=xmlHttp.responseText;
            document.getElementById('ajaxloading').style.display = 'none';
        }
    }
    xmlHttp.open("POST",url,true);
    xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
    xmlHttp.send(str);
}

function doSave(thisform)
{
    var xmlHttp=GetXmlHttpObject()
    if (xmlHttp==null)
    {
        alert ("Browser does not support HTTP Request")
        return
    }
    thisform.style.MozOpacity=0.50;
    document.getElementById('ajaxloading').style.display = 'block';
    var url="/ajax_engine.php"
    var str;
    str = "version=0.3";
    for(j=0;j<thisform.elements.length;j++){
        var formObj=thisform.elements[j];
        str=str+'&'+formObj.name+'='+formObj.value;
	}
    str=str+"&sid="+Math.random()
    xmlHttp.onreadystatechange=function () 
    {
        if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
        { 
            thisform.style.MozOpacity=1;
            document.getElementById('ajaxloading').style.display = 'none';
        }
    }
    xmlHttp.open("POST",url,true);
    xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
    xmlHttp.send(str);
}

function doGet(thisurl,container)
{
    var xmlHttp=GetXmlHttpObject()
    if (xmlHttp==null)
    {
        alert ("Browser does not support HTTP Request")
        return
    }
    xmlHttp.onreadystatechange=function () 
    {
        if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
        { 
            document.getElementById(container).innerHTML=xmlHttp.responseText;
        }
    }
    xmlHttp.open("GET",thisurl,true);
    xmlHttp.send(null);
}

function doFetch(thisurl,container)
{
    var xmlHttp=GetXmlHttpObject()
    if (xmlHttp==null)
    {
        alert ("Browser does not support HTTP Request")
        return
    }
    xmlHttp.onreadystatechange=function () 
    {
        if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
        { 
            document.getElementById(container).innerHTML=xmlHttp.responseText;
        }
    }
    xmlHttp.open("GET",thisurl,true);
    xmlHttp.send(null);
}

function doPage(thisurl)
{
    var xmlHttp=GetXmlHttpObject()
    if (xmlHttp==null)
    {
        alert ("Browser does not support HTTP Request")
        return
    }
    document.getElementById("results").style.opacity=0.50;
    document.getElementById('ajaxloading').style.display = 'block';
    xmlHttp.onreadystatechange=function () 
    {
        if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
        { 
            document.getElementById("results").style.opacity=1;
            document.getElementById("results").innerHTML=xmlHttp.responseText;
            document.getElementById('ajaxloading').style.display = 'none';
        }
    }
    xmlHttp.open("GET",thisurl,true);
    xmlHttp.send(null);
}

function showAll(field,rdiv,research)
{
    var xmlHttp=GetXmlHttpObject()
    if (xmlHttp==null)
    {
        alert ("Browser does not support HTTP Request")
        return
    } 
    document.getElementById('ajaxloading').style.display = 'block';
    var url="/ajax_engine.php"
    var gurl = "version=0.3";
    gurl=gurl+"&engine="+field+".php"
    gurl=gurl+"&_type="+field
    gurl=gurl+"&showall=1"
    gurl=gurl+"&research="+research
    gurl=gurl+"&sid="+Math.random()
    xmlHttp.onreadystatechange=function () 
    {
        if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
        { 
            document.getElementById(rdiv).innerHTML=xmlHttp.responseText;
            document.getElementById('ajaxloading').style.display = 'none';
        }
    }
    xmlHttp.open("POST",url,true);
    xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
    xmlHttp.send(gurl);
}

function showHint(field,box)
{
    var xmlHttp=GetXmlHttpObject()
    if (xmlHttp==null)
    {
        alert ("Browser does not support HTTP Request")
        return
    } 
    box.setAttribute('autocomplete', 'off');
    str = box.value;
    if (str.length==0 || str.length < 2)
    {
        document.getElementById(field+"Hint").innerHTML=""
        return
    }
    var url="/ajax_engine.php"
    var gurl = "version=0.3";
    gurl=gurl+"&function=hint"
    gurl=gurl+"&field="+field
    gurl=gurl+"&search="+str
    gurl=gurl+"&sid="+Math.random()
    xmlHttp.onreadystatechange=function () 
    {
        if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
        { 
            document.getElementById(field+"Hint").innerHTML=xmlHttp.responseText;
            if (document.getElementById(field+"Hint").innerHTML.length==0) {
                document.getElementById(field+"div").style.display="none";
            } else {
                document.getElementById(field+"div").style.display="block";
            }
        }
    }
    xmlHttp.open("POST",url,true)
    xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
    xmlHttp.send(gurl)
    document.getElementById(field+"Hint").innerHTML=""
    document.getElementById(field+"div").style.display="none";
}

function getPage(field,id)
{
    var xmlHttp=GetXmlHttpObject()
    if (xmlHttp==null)
    {
        alert ("Browser does not support HTTP Request")
        return
    } 
    document.getElementById("results").style.opacity=0.50;
    document.getElementById('ajaxloading').style.display = 'block';
    var url="/ajax_engine.php"
    var gurl = "version=0.3";
    gurl=gurl+"&engine="+field+".php"
    gurl=gurl+"&id="+id
    gurl=gurl+"&page=1"
    gurl=gurl+"&sid="+Math.random()
    xmlHttp.onreadystatechange=function () 
    {
        if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
        { 
            document.getElementById("results").style.opacity=1;
            document.getElementById("results").innerHTML=xmlHttp.responseText;
            document.getElementById('ajaxloading').style.display = 'none';
        }
    }
    xmlHttp.open("POST",url,true)
    xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
    xmlHttp.send(gurl)    

}

function GetXmlHttpObject()
{ 
    //XMLhttp variable will hold the XMLHttpRequest object
    var xmlhttp = false;
    // If the user is using Mozilla/Firefox/Safari/etc
    if (typeof XMLHttpRequest != "undefined" || window.XMLHttpRequest) {
        xmlhttp = new XMLHttpRequest();
        //Set the mime type
	if (typeof xmlhttp.overrideMimeType != "undefined") {
	    xmlhttp.overrideMimeType('text');
	}
    } else if (window.ActiveXObject) {
        //Intiate the object
        xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    }
    return xmlhttp;
}

function doCartAdd(psku,event) {
    doGet('/cart/ajaxadd/'+psku,'short_cart');
    doFetch('/cart/ajaxcartcount','cart_count');
    if (document.getElementById('cart['+psku+']')) {
	document.getElementById('cart['+psku+']').src='/images/added.gif';
    }
    document.getElementById('scnav').className = 'snavcart';
    showCartMsg(event);
}

function showCartMsg(event) {
    if (event == null) {
	event = window.event;
    }
    var scrollTop = document.body.scrollTop ? document.body.scrollTop : document.documentElement.scrollTop;
    var scrollLeft = document.body.scrollLeft ? document.body.scrollLeft : document.documentElement.scrollLeft;
    document.getElementById('addtocartmsg').style.display = 'none';
    document.getElementById('addtocartmsg').style.opacity=1;
    document.getElementById('addtocartmsg').style.left = event.clientX - 100 + scrollLeft + 'px';
    document.getElementById('addtocartmsg').style.top = event.clientY  + 20 + scrollTop + 'px';
    document.getElementById('addtocartmsg').style.display = 'block';
    setTimeout('fadeCartMsg(1)',5000)
    fadeKill = 1;
}

function fadeCartMsg(amount) {
    if (amount == 1) { fadeKill = 0 }
    if (fadeKill == 1) { return; }
    amount = amount - 0.05;
    //document.getElementById('addtocartmsg').style.opacity=amount;
    document.getElementById('addtocartmsg').style.opacity=amount;
    if (amount <= 0.30) {
	hideCartMsg();
    } else {
	setTimeout('fadeCartMsg('+amount+')',100)
    }
}

function hideCartMsg() {
    fadeKill = 1;
    document.getElementById('addtocartmsg').style.display = 'none';
}

function doCartDel(psku,event) {
    if (event == null) {
	event = window.event;
    }
    doGet('/cart/ajaxdelete/'+psku,'short_cart');
    doFetch('/cart/ajaxcartcount','cart_count');
    if (document.getElementById('cart['+psku+']')) {
	document.getElementById('cart['+psku+']').src='/images/add_cart.gif';
    }
}

function doShipping(thisform,container)
{
    var xmlHttp=GetXmlHttpObject()
    if (xmlHttp==null)
    {
        alert ("Browser does not support HTTP Request")
        return
    }
    var url="/shipping.php"
    var str;
    str = "version=0.3";
    for(j=0;j<thisform.elements.length;j++){
        var formObj=thisform.elements[j];
        str=str+'&'+formObj.name+'='+formObj.value;
	}
    str=str+"&sid="+Math.random()
    document.getElementById(container).innerHTML = '<img src="/images/1.gif" alt="loading" border="0" /> Calculating...';
    xmlHttp.onreadystatechange=function () 
    {
        if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
        { 
            document.getElementById(container).innerHTML=xmlHttp.responseText;
        }
    }
    xmlHttp.open("POST",url,true);
    xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
    xmlHttp.send(str);

}


function doStock(thisform,container)
{
    var xmlHttp=GetXmlHttpObject()
    if (xmlHttp==null)
    {
        alert ("Browser does not support HTTP Request")
        return
    }
    var url="/stock.php"
    var str;
    str = "version=0.3";
    for(j=0;j<thisform.elements.length;j++){
        var formObj=thisform.elements[j];
        str=str+'&'+formObj.name+'='+formObj.value;
	}
    str=str+"&sid="+Math.random()
    document.getElementById(container).innerHTML = '<img src="/images/1.gif" alt="loading" border="0" /> Checking...';
    xmlHttp.onreadystatechange=function () 
    {
        if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
        { 
            document.getElementById(container).innerHTML=xmlHttp.responseText;
        }
    }
    xmlHttp.open("POST",url,true);
    xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
    xmlHttp.send(str);

}


function trim(str)
{
   str = str.replace(/^\s*|\s*$/g,"");
   str = str.replace(/\n/g,"");
   return str;
}
