
			var DivId;
			var status = true;
			var time = 0;
			var DepIDbefore = 0;
			var TabIDbefore = 1;
			var FirstGo = true;
			//var objektai = new Array();
			
			function XmlHttp( ){
                this.CreateXmlHttpObject = CreateXmlHttpObject;
                this.GetUrlContent              = GetUrlContent;
                this.GetResponseText          = GetResponseText;
                this.GetReadyState              = GetReadyState;           
                this.HttpMethod = 'GET'; // default
                this.objXmlHttp = this.CreateXmlHttpObject();
            }

            // Initialize XMLHttpObject
            function CreateXmlHttpObject(){
                var xmlhttp=false;
                try {
                    xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
                } catch (e) {
                try {
                    xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
                } catch (E) {
                    xmlhttp = false;
                }
            }
       

            if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
                xmlhttp = new XMLHttpRequest();
            }
                return xmlhttp;
            }
            var objXMLHttp =  new XmlHttp();
                   
            function GetReadyState( ){
				return this.objXmlHttp.readyState;
            }
 
            function GetResponseText( ){
                return this.objXmlHttp.responseText;
            }

			function GetResponse(){
				if (objXMLHttp!=null && objXMLHttp.GetReadyState()==4 && tmpDivId != null) {
				var objMyDiv = document.getElementById( tmpDivId );
                    // save response in inner html of result object                       
					//objMyDiv.innerHTML = '<a style="font-size:12px;padding-top:15px;">Please wait...'+DivId+'</a>';
					if (objXMLHttp.GetResponseText( )!=''){
                    objMyDiv.innerHTML = objXMLHttp.GetResponseText( );
					}
                }
            }			
 
            // Function performs Get request to absolute url(strUrl)
            // using XmlHttp object (asynchroni)
            // Response returned into objResult element using innerHTML.
            // When state of XmlHttp object is changed - objOnReadyStateChangeFunction called
            function GetUrlContent( strUrl, toSend ,objOnReadyStateChangeFunction ){
				this.objXmlHttp.open(this.HttpMethod, strUrl, true);
                this.objXmlHttp.setRequestHeader('Content-Type', 'text/xml; charset=UTF-8');
                if(objOnReadyStateChangeFunction){
					this.objXmlHttp.onreadystatechange=function(){
                        objOnReadyStateChangeFunction();
                    }
                }
                this.objXmlHttp.send(toSend);
				status = true;
            }
           
            //This function is called when we get the data back from the server.       
            
			var tmpDivId = null;
            function UpdateDiv( DivId, Page ){
			if (FirstGo==false && objXMLHttp.GetReadyState()!=4){
			UpdateDivByTimeOut(DivId, Page);
			}else{
			FirstGo = false;
			status = false;
                tmpDivId = DivId;
				if( Page !='' ){
					var objMyDiv = document.getElementById( DivId );
				
                    objMyDiv.innerHTML = '<a style="font-size:11px;">Please wait...</a>';
					
                    objXMLHttp.GetUrlContent( Page, null ,GetResponse);
					//objXMLHttp.GetUrlContent( Page, null);
					
                }
			}
			return true;
            }			
			
			function UpdateDivByTimeOut(a, b){
			if (FirstGo == true){
			UpdateDiv(a, b);
			} else {
				if(objXMLHttp.GetReadyState()!=4 && time<2001){
				//alert(time);
				time++;				
					if (time==2001){ alert("server is not answering, please try later");}
					setTimeout('UpdateDivByTimeOut("'+a+'", "'+b+'")', 100);
				}
				if(objXMLHttp.GetReadyState()==4 && time<2001){
					UpdateDiv(a, b);
				}
			}
			}
			
			function checkframe(form){

var radio_selected = false;

for (counter = 0; counter < form.MainFrame.length; counter++)
{
if (form.MainFrame[counter].checked)
	radio_selected = true; 
}

if (!radio_selected){alert('Please select a Frame');return false;
}
	return true;
}

function gotonext(CatID, PageNo){
	var CurrentHeight
	CurrentHeight=document.getElementById('bb_div'+CatID).offsetHeight;
	document.getElementById('bb_div'+CatID).style.height=CurrentHeight+'px';
	UpdateDiv('bb_div'+CatID, 'builderpages.asp?CatID='+CatID+'&PageNo='+PageNo);
}

function gotonext2(CatID, PageNo, DivID, SessionID){
	
	document.getElementById('bb_div'+DivID).style.height = 251+'px';


	UpdateDiv('bb_div'+DivID, 'builderpages2.asp?CatID='+CatID+'&PageNo='+PageNo+'&DivID='+DivID+'&ID='+SessionID);
}

function buildbike(SessionID, IncludeID, SKU){

	var Options
	Options = "";

	try
	{
    var ar = document.getElementById('no_'+IncludeID+'_opt_'+SKU);
    var sel = ar.getElementsByTagName("select");
	    for(i=0; i<sel.length; i++){
			if (Options == "")
				{Options = sel[i].value;}
			else
				{Options = Options +"," + sel[i].value;}
	    }	
	
	}
	catch(ex){}

//	alert(Options);
	
	UpdateDiv('JustDiv', 'bikebuilder.asp?SKU='+SKU+'&IncludeID='+IncludeID+'&ID='+SessionID+'&Opt='+Options);
}

function unselectall(SessionID, IncludeID){
	var orx = document.getElementsByName('Comp_' + IncludeID);
    for (var i = 0; i < orx.length; i++) {
         orx[i].checked = false;
     }
	UpdateDiv('JustDiv', 'bikebuilder.asp?IncludeID='+IncludeID+'&ID='+SessionID+'&Rem=1');
}
function getdiscount(SessionID){
	Dis = document.getElementById('promocode').value;
	UpdateDiv('discount', 'discount.asp?CD='+Dis+'&ID='+SessionID+'&Rem=1');
}

function ShowOpt(x, y){


	DivNow = document.getElementById('bb_div'+y).offsetHeight;

	try
	{
    var area = document.getElementById("bb_div"+y);
    var divs = area.getElementsByTagName("div");

	    for(i=0; i<divs.length; i++){
			if (divs[i].offsetHeight > 0){
				MinusHeight = DivNow - divs[i].offsetHeight;
				document.getElementById('bb_div'+y).style.height = MinusHeight+'px';
//				alert('- ' + divs[i].offsetHeight + 'px');
			}
	    }
	
	    for(i=0; i<divs.length; i++){
            divs[i].style.display="none";
	    }
		
	}
	catch(ex){}

	DivNow = document.getElementById('bb_div'+y).offsetHeight;
	
	try
	{	
		if (x!='DontOpen') {	
			document.getElementById('no_'+y+'_opt_'+x).style.display='block';
		}	

	    for(i=0; i<divs.length; i++){
			if (divs[i].offsetHeight > 0){
			
				PlusHeight = DivNow + divs[i].offsetHeight;
				document.getElementById('bb_div'+y).style.height = PlusHeight+'px';
			}
	    }
		
/*		
			DivNow = document.getElementById('bb_div'+y).offsetHeight;
			HeightNow = document.getElementById('no_'+y+'_opt_'+x).offsetHeight;
			xxx=DivNow+HeightNow;
			document.getElementById('bb_div'+y).style.height=xxx+'px';
			DivNow = document.getElementById('bb_div'+y).offsetHeight;
*/
	}
	catch(ex){}
	
	

/*
	HeightNow = 0;
	DivNow = 0;

	try
	{	
		if (y == ybefore) {
			yyy=DivBefore-HeightBefore;
			document.getElementById('bb_div'+ybefore).style.height=yyy+'px';
		}
	}
	catch(ex){}
	
	try
	{
    var area = document.getElementById("bb_div"+y);
    var divs = area.getElementsByTagName("div");

	    for(i=0; i<divs.length; i++){
            divs[i].style.display="none";
	    }
		
	}
	catch(ex){}

	
	try
	{	
		
			DivNow = document.getElementById('bb_div'+y).offsetHeight;
		if (x!='DontOpen') {	
			document.getElementById('no_'+y+'_opt_'+x).style.display='block';
		}			
			HeightNow = document.getElementById('no_'+y+'_opt_'+x).offsetHeight;
			xxx=DivNow+HeightNow;
			document.getElementById('bb_div'+y).style.height=xxx+'px';
			DivNow = document.getElementById('bb_div'+y).offsetHeight;

	}
	catch(ex){}

	HeightBefore = HeightNow;
	DivBefore = DivNow;

	xbefore = x;
	ybefore = y;	
	
*/	
}

function ShowOpt2(x, y){

	HeightNow = 0;
	DivNow = 0;

	try
	{	
		yyy=DivBefore-HeightBefore;
		document.getElementById('bb_div'+ybefore).style.height=yyy+'px';
	}
	catch(ex){}

	try
	{	
		document.getElementById('opt_' + xbefore).style.display='none';
	}
	catch(ex){}

	try
	{	
		DivNow = document.getElementById('bb_div'+y).offsetHeight;
		document.getElementById('opt_' + x+y).style.display='block';
		HeightNow = document.getElementById('opt_'+x+y).offsetHeight;
		xxx=DivNow+HeightNow;
		document.getElementById('bb_div'+y).style.height=xxx+'px';
		DivNow = document.getElementById('bb_div'+y).offsetHeight;
	}
	catch(ex){}

	HeightBefore = HeightNow;
	DivBefore = DivNow;

	xbefore = x+y;
	ybefore = y;

}

function GetOptions(x) {

	
	Options="";
	try
	{	
	    var ar = document.getElementById('opt_'+x);
	    var sel = ar.getElementsByTagName("select");
		    for(i=0; i<sel.length; i++){
				if (Options == "")
					{Options = sel[i].value;}
				else
					{Options = Options +"," + sel[i].value;}
		    }	
	}
	catch(ex){}	

	document.getElementById('NewOptions').value=Options;
}

