var http = getHTTPObject(); // We create the HTTP Object
var results = "";
var msgcontainer = "";

function getHTTPObject() {
	var xmlhttp;
	/*@cc_on
	@if (@_jscript_version >= 5)
		try {
			xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try {
				xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (E) {
		xmlhttp = false;
		}
	}
	@else
		xmlhttp = false;
	@end @*/
	if (!xmlhttp && typeof XMLHttpRequest != 'undefined') {
		try {
			xmlhttp = new XMLHttpRequest();
		} catch (e) {
			xmlhttp = false;
		}
	}
	return xmlhttp;
};
		
function ajaxget(postdata,url,this_msgcontainer){
	msgcontainer = this_msgcontainer;
	http.open("GET", url, true);
	http.onreadystatechange = handleHttpResponse;
  	http.send(null);
};

function ajaxpost(postdata,url,this_msgcontainer){
	msgcontainer = this_msgcontainer;
	http.open("POST", url, true);
	http.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	http.onreadystatechange = handleHttpResponse;
  	http.send(postdata);
};

		
function handleHttpResponse() {
  if (http.readyState == 4) {
	results = http.responseText;
	//alert(msgcontainer);
	document.getElementById(msgcontainer).innerHTML = results;
  }
};

function AjaxForm(FormData,DestinationURL,FormMethod,MessageContainer) {
	if (FormMethod == "POST") {
		ajaxpost(FormData,DestinationURL,MessageContainer);
	}
	else if (FormMethod == "GET") {
		ajaxget(FormData,DestinationURL,MessageContainer);
	}
};


var oXmlHttp;
var response = "/";
var theCallback;

function getPage(url,callback)
{
	theCallback = callback;
	
    oXmlHttp = null;
    // code for Mozilla, etc.
    if (window.XMLHttpRequest)
    {
        oXmlHttp = new XMLHttpRequest();
    }
    // code for IE
    else if (window.ActiveXObject)
    {
        oXmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
    }

	// add some randomization
	url = url + '&' + Math.random();
	// alert(url);
	
	oXmlHttp.open("GET", url, true);
	oXmlHttp.onreadystatechange = stateChanged;
	oXmlHttp.send(null);
};

function stateChanged()
{
    // if xmlhttp shows "loaded"
    if (oXmlHttp.readyState==4)
    {
        // if "OK"
        if (oXmlHttp.status==200)
        {
            // ...some code here...
            response = oXmlHttp.responseText;
        }
        else
        {
            response = "/";
        }
		theCallback(response);
    }
};

function postPage(url, parameters, callback){
	theCallback = callback;
    oXmlHttp = null;
    // code for Mozilla, etc.
    if (window.XMLHttpRequest)
    {
        oXmlHttp = new XMLHttpRequest();
    }
    // code for IE
    else if (window.ActiveXObject);
    {
        oXmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
    }
	
	oXmlHttp.open("POST", url, true);
    oXmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    oXmlHttp.setRequestHeader("Content-length", parameters.length);
    oXmlHttp.setRequestHeader("Connection", "close");
	oXmlHttp.onreadystatechange = stateChanged;
	oXmlHttp.send(parameters);
};

/*  Standard popup javascripts */
function createImageDetailWindow(productid){ var xWin = window.open('/imgdetails.cfm?product_id='+productid,'window2','height=450,width=450,scrollbars,resizable');};
	function createPrivacyWindow(){var xWin = window.open('/privacy/index.cfm','window2','height=450,width=700,scrollbars,resizable');};
	function createWhySignupWindow(){var xWin = window.open('/whysignup.cfm','window2','height=450,width=700,scrollbars,resizable');};
	function productDemo(partnumber){var xWin = window.open('/3d_demos/index.cfm?partnumber='+partnumber,'window2','height=350,width=570,scrollbars,resizable');};
	function sourceCodeInfo(msgtype){var xWin = window.open('/direct/sourceinfo.cfm?msgtype='+msgtype,'window2','height=450,width=450,scrollbars,resizable');};
	function shipInfo(msgtype,shiptype){var xWin = window.open('/direct/shipinfo.cfm?msgtype='+msgtype+'&shiptype='+shiptype,'window2','height=450,width=700,scrollbars,resizable');};
	function whatsThis(whatis,state){var xWin = window.open('/direct/whatsthis.cfm?whatis='+whatis+'&state='+state,'window2','width=450,height=450,scrollbars,resizable');};
	function createEmailAccountInfoWindow(){var xWin = window.open('/direct/sendaccountinfo.cfm','window2','width=450,height=250,scrollbars,resizable');};
	function createAboutPriceWindow(){var xWin = window.open('/aboutthisprice.cfm','window2','width=450,height=250,scrollbars,resizable');};
	function createFlashCatalogWindow(){window.name = "catalogparent";	var xWin = window.open("/flashcatalog/index.cfm","FlashCatalog","height=610,width=1050,scrollbars,resizable");};

	function createBMLWindow(){var xWin = window.open('https://www.securecheckout.billmelater.com/paycapture-content/fetch?hash=RT225W2P&content=/bmlweb/coreiw.html','window2','width=515,height=600,scrollbars,resizable');};


// turns on and off collapsing menu on left
function toggleMenu(idName){
	toggleThis = document.getElementById(idName).style;
	toggleHead = document.getElementById(idName + "Header").style;
	if(toggleThis.display == "block"){
		toggleThis.display = "none";
		toggleHead.backgroundImage = "url(/images/graphics/fancyBG2.gif)";
		}
	else {
		toggleThis.display = "block";
		toggleHead.backgroundImage = "url(/images/graphics/fancyBGexpanded.gif)";
		}
	};

// add an item to the onload by using addEvent(window, 'load', *functionName*);
function addEvent(obj, evType, fn){ 
 if (obj.addEventListener){ 
   obj.addEventListener(evType, fn, false); 
   return true; 
 } else if (obj.attachEvent){ 
   var r = obj.attachEvent("on"+evType, fn); 
   return r; 
 } else { 
   return false; 
 } 
};

