var currentpopup = "";
var currentpopupxpos = 0;
var hastouched = false;
var operationinprogress = false;
var closeoperationinprogress = false;
function getposOffset(overlay, offsettype)
{
	var totaloffset=(offsettype=="left")? overlay.offsetLeft : overlay.offsetTop;
	var parentEl=overlay.offsetParent;
	
	while (parentEl!=null)
	{
		totaloffset=(offsettype=="left")? totaloffset+parentEl.offsetLeft : totaloffset+parentEl.offsetTop;
		parentEl=parentEl.offsetParent;
	}
	return totaloffset;
}

function wait()
{
 if (operationinprogress == true)
 setTimeout(function(){wait();}, 30);
}



function overlay(curobj, subobjstr, opt_position)
{ 
	if (document.getElementById && document.getElementById(subobjstr).style.display == 'none' && closeoperationinprogress ==false)
	{
		
	if (operationinprogress == true)	
    { 
	  wait();
	  forceclose();
	}
			
 	if (currentpopup != ""  && currentpopup != subobjstr)
	{
		forceclose();
		return;
	}
		else
		currentpopup = subobjstr;
		
	  	var subobj=document.getElementById(subobjstr)
		var xpos=getposOffset(curobj, "left")+15;//+((typeof opt_position!="undefined" && opt_position.indexOf("right")!=-1)? -(subobj.offsetWidth-curobj.offsetWidth) : 0) 
		var ypos=getposOffset(curobj, "top")+((typeof opt_position!="undefined" && opt_position.indexOf("bottom")!=-1)? curobj.offsetHeight : 0)- 3
		
//		var xpos=findPosX(curobj)
	//	var ypos=findPosY(curobj)//+((typeof opt_position!="undefined" && opt_position.indexOf("bottom")!=-1)? curobj.offsetHeight : 0)- 3
		
		
		subobj.style.left=xpos+"px"
		subobj.style.top=ypos +"px"
		
		currentpopupxpos = xpos;
		operationinprogress = true;
		var FXdiv = document.getElementById('FXdiv');
		FXdiv.style.height = '40px';
		FXdiv.style.width = '40px';
		FXdiv.style.border = "1px solid #000";
		FXdiv.style.background = "#fff";
		FXdiv.style.left=xpos +"px"
		FXdiv.style.top=ypos + "px"
		FXdiv.style.display="block"
		widthofdiv = 400;
		step = Math.floor(widthofdiv / 5.0);
		speed = 30;
			
		setTimeout(function(){FXdiv.style.height = step*1 + 'px'; FXdiv.style.width = step*1 + 'px';}, speed*1);
		setTimeout(function(){FXdiv.style.height = step*2 + 'px'; FXdiv.style.width = step*2 + 'px';}, speed*2);
		setTimeout(function(){FXdiv.style.height = step*3 + 'px'; FXdiv.style.width = step*3 + 'px';}, speed*3);
		setTimeout(function(){FXdiv.style.height = step*4 + 'px'; FXdiv.style.width = step*4 + 'px';}, speed*4);
		setTimeout(function(){FXdiv.style.height = step*5+ 'px'; FXdiv.style.width = step*5 + 'px';}, speed*5);
		setTimeout(function(){FXdiv.style.display="none"; subobj.style.display="block"; subobj.style.height="auto";
		
		 IFrame_Mask(subobjstr);
		 currentpopup = subobjstr;
		 operationinprogress = false;
	
		}, speed*6);

		return false
	}
	else
	return true
}



function overlay_quick(curobj, subobjstr, opt_position)
{ 
if (EnableMenus){	
var subobj=document.getElementById(subobjstr)
		
	var xpos=findPosX(curobj)
	var ypos=findPosY(curobj) + curobj.offsetHeight
		
		
	subobj.style.left=xpos+"px"
	subobj.style.top=ypos-1+"px"
		
	currentpopupxpos = xpos;

	subobj.style.display="block"; subobj.style.height="auto";
	subobj.style.left=xpos+"px" 
	IFrame_Mask(subobjstr);
	 currentpopup = subobjstr;
	 }

}




function overlay_quick_static(curobj, subobjstr, opt_position, opt_yposition)
{ 
	if (document.getElementById(currentpopup))
	   hidepopup(currentpopup);
	if (EnableMenus)
	{	
		var subobj=document.getElementById(subobjstr)
			
		var xpos=findPosX(curobj)
		var ypos=findPosY(curobj) + curobj.offsetHeight
			
		if(opt_yposition)
			ypos -= opt_yposition;
		if (opt_position)
			if (opt_position == 'center')
			{}
			else			
			subobj.style.left=xpos+opt_position+"px"
		else
			subobj.style.left=xpos+"px"
		
			
		
			
		currentpopupxpos = xpos;

		subobj.style.display="block"; subobj.style.height="auto";
		
		if (opt_position)
		{
		
			if (opt_position == 'center')
			{
			
			    var availHeight;
			    var availWidth;

			    if(typeof(window.innerWidth) == 'number')
				{
			        availHeight = window.innerHeight;
			        availWidth = window.innerWidth;
			    }
				else if(document.documentElement && (document.documentElement.clientWidth || document.documentElement.clientHeight))
				{

			        availHeight = document.documentElement.clientHeight;
			        availWidth = document.documentElement.clientWidth;
			    }
				else if(document.body && (document.body.clientWidth || document.body.clientHeight))
				{
			        availHeight = document.body.clientHeight;
			        availWidth = document.body.clientWidth;
			    }
 
				
				//var IpopTop = (document.body.clientHeight - subobj.offsetHeight) / 2;
	           var IpopLeft = (document.body.clientWidth - subobj.offsetWidth) / 2;
	            
	         
				//subobj.style.top=IpopTop + document.body.scrollTop+'px';
				
				
					var yOffset
					if (self.pageYOffset)
					    yOffset = self.pageYOffset;
					else if (document.documentElement && document.documentElement.scrollTop)
					    yOffset = document.documentElement.scrollTop;
					else if (document.body)
					    yOffset = document.body.scrollTop;
					
					subobj.style.top = ((availHeight/2)+yOffset) - (subobj.offsetHeight/2)+document.body.scrollLeft+'px';
					subobj.style.left=(availWidth - subobj.offsetWidth) / 2 + document.body.scrollLeft+'px';
					
			}			
			else
			{
				subobj.style.left=xpos+opt_position+"px";
				subobj.style.top=ypos-1+"px";
			}
		}
		else
		{
			subobj.style.left=xpos+"px";
			subobj.style.top=ypos-1+"px";
		}	
	
		
		 
            
            //document.getElementById(subobjstr).style.display = "block";
			
		
			
		IFrame_Mask(subobjstr);
		currentpopup = subobjstr;
	}

}


function overlay_quick_right(curobj, subobjstr, opt_position)
{ 
	if (EnableMenus)
	{
	var subobj=document.getElementById(subobjstr)
	var xpos=findPosX(curobj)
	var ypos=findPosY(curobj) + curobj.offsetHeight
		
	subobj.style.left=xpos+"px"
	subobj.style.top=ypos-1+"px"
	currentpopupxpos = xpos;

	subobj.style.display="block"; subobj.style.height="auto";
	subobj.style.left=xpos - subobj.offsetWidth + curobj.offsetWidth -1 +"px" 
	IFrame_Mask(subobjstr);
	currentpopup = subobjstr;
	}
}

function isIE()
{
version=0;
	if (navigator.appVersion.indexOf("MSIE")!=-1)
	{
		temp=navigator.appVersion.split("MSIE")
		version=parseFloat(temp[1])
	}
	if (version != 0)
	return version;
	else
	return false;
	
}
function IFrame_Mask(divtomask)
{
	if (isIE() != false && isIE() < 7)
	{
		var subobj=document.getElementById(divtomask);
		if (!document.getElementById(divtomask+'_mask'))
		{
			var objBody = document.getElementsByTagName("body").item(0);
			var objOverlay = document.createElement("Iframe");
			objOverlay.setAttribute('id',divtomask+'_mask');
			objOverlay.setAttribute('frameborder','0');
			objOverlay.setAttribute('scrolling', 'no');
			objOverlay.setAttribute('marginwidth', '0');
			objOverlay.setAttribute('src', '');
			objOverlay.setAttribute('marginheight', '0');
			objOverlay.style.display = 'none';
			objOverlay.style.position = 'absolute';
			objOverlay.style.zindex = '1';
			objOverlay.style.border = '0';
			
			objOverlay.style.left = subobj.style.left;
			objOverlay.style.top = subobj.style.top;
			objOverlay.style.height = subobj.offsetHeight;
			objOverlay.style.width = subobj.offsetWidth;
			objOverlay.style.display = "inline";	
			
			objBody.appendChild(objOverlay);	
		}
		else
		{
			document.getElementById(divtomask+'_mask').style.left = subobj.style.left;
			document.getElementById(divtomask+'_mask').style.top = subobj.style.top;
			document.getElementById(divtomask+'_mask').style.height = subobj.offsetHeight;
			document.getElementById(divtomask+'_mask').style.width = subobj.offsetWidth;
			document.getElementById(divtomask+'_mask').style.display = "inline";
		
		}
	}
	
}

function IFrame_UnMask(divtomask)
{	
	//document.getElementById("FXframe").style.display = "none";
	
	if (document.getElementById(divtomask+'_mask'))
	{
		var objBody = document.getElementsByTagName("body").item(0);
		objBody.removeChild(document.getElementById(divtomask+'_mask'));	
	}
}


function forceclose2(e, targetdiv)
{

if (currentpopup == "")
	return;

if (!e) var e = window.event;
	var tg = (window.event) ? e.srcElement : e.target;
	if (tg.nodeName != 'DIV' ) return;
	var reltg = (e.relatedTarget) ? e.relatedTarget : e.toElement;
	if (reltg.getAttribute('id') == targetdiv) return;

while (reltg != tg && reltg.nodeName != 'BODY')
	reltg= reltg.parentNode
	if (reltg == tg) return;
	else if (reltg == 'B') return;

forceclose();
}

function forceclose()
{	//alert('|'+currentpopup+'|');
   	
	var FXdiv = document.getElementById('FXdiv');
	FXdiv.style.left = currentpopupxpos + 'px';
	FXdiv.style.background = "none";
	FXdiv.style.border = "1px dotted #000";
	FXdiv.style.display="block"
	
	speed = 30;
	step=80;
	document.getElementById(currentpopup).style.display="none";
	IFrame_UnMask(currentpopup);
	currentpopup = "";
	closeoperationinprogress = true;
	setTimeout(function(){FXdiv.style.height = step*5 + 'px'; FXdiv.style.width = step*5 + 'px';}, speed*1);
	setTimeout(function(){FXdiv.style.height = step*4 + 'px'; FXdiv.style.width = step*4 + 'px';}, speed*2);
	setTimeout(function(){FXdiv.style.height = step*3 + 'px'; FXdiv.style.width = step*3 + 'px';}, speed*3);
	setTimeout(function(){FXdiv.style.height = step*2 + 'px'; FXdiv.style.width = step*2 + 'px';}, speed*4);
	setTimeout(function(){FXdiv.style.height = step*1+ 'px'; FXdiv.style.width = step*1 + 'px';}, speed*5);
	setTimeout(function(){FXdiv.style.display="none";closeoperationinprogress = false;}, speed*6);
}




function forceclose2_quick(e, targetdiv)
{

if (currentpopup == "")
	return;

if (!e) var e = window.event;
	var tg = (window.event) ? e.srcElement : e.target;
	if (tg.nodeName != 'DIV' ) return;
	var reltg = (e.relatedTarget) ? e.relatedTarget : e.toElement;
	if (reltg.getAttribute('id') == targetdiv) return;

while (reltg != tg && reltg.nodeName != 'BODY')
	reltg= reltg.parentNode
	if (reltg == tg) return;
	else if (reltg == 'B') return;

forceclose_quick();
}



function forceclose5_quick(e, targetdiv)
{
	if(!document.getElementById(targetdiv))
		return;
	if (document.getElementById(targetdiv).style.display == "none")
		return;
	if (!e) 
		var e = window.event;
	
	var reltg = (e.relatedTarget) ? e.relatedTarget : e.toElement;
	//reltg.style.border = "5px solid black";
	
	if (reltg.getAttribute('id') == targetdiv) 
		return;

		while (reltg.nodeName != 'BODY')
		{
			reltg = reltg.parentNode;
			if (reltg.getAttribute('id') == targetdiv) return;
		}
		
	document.getElementById(targetdiv).style.display="none";
	IFrame_UnMask(targetdiv);
	currentpopup = "";
	closeoperationinprogress = false;
}


function close_now(tt)
{

if (typeof this.id != "undefined") 
{
document.getElementById(this.id).style.display="none";
IFrame_UnMask(this.id);
}
else
{
document.getElementById(tt).style.display="none";
IFrame_UnMask(tt);
}

document.getElementById('SmokeScreen').style.display = "none";
showAllByTag('select', 'inline');
}


function forceclose_quick()
{

if(currentpopup != "" && document.getElementById(currentpopup))
{
	document.getElementById(currentpopup).style.display="none";
	IFrame_UnMask(currentpopup);
	currentpopup = "";
}
	//closeoperationinprogress = false;
}


function overlayclose(subobj, e)
{

if (!e) var e = window.event;
	var tg = (window.event) ? e.srcElement : e.target;
	
	if (tg.nodeName != 'DIV' ) return;
	if (tg.getAttribute('id') == "popup_close_button") return;
	var reltg = (e.relatedTarget) ? e.relatedTarget : e.toElement;
	while (reltg != tg && reltg.nodeName != 'BODY')
		reltg= reltg.parentNode
	if (reltg == tg) return;
	else if (reltg == 'B') return;
	
	
	var xpos=getposOffset(subobj, "left")+(subobj.offsetWidth/2);

	document.getElementById(subobj.id).style.display="none";
	var FXdiv = document.getElementById('FXdiv');

	FXdiv.style.background = "none";
	FXdiv.style.border = "1px dotted #000";
	FXdiv.style.display="block"
		
	speed = 30;
	step=80;
	closeoperationinprogress = true;
	setTimeout(function(){FXdiv.style.height = step*5 + 'px'; FXdiv.style.width = step*5 + 'px';}, speed*1);
	setTimeout(function(){FXdiv.style.height = step*4 + 'px'; FXdiv.style.width = step*4 + 'px';}, speed*2);
	setTimeout(function(){FXdiv.style.height = step*3 + 'px'; FXdiv.style.width = step*3 + 'px';}, speed*3);
	setTimeout(function(){FXdiv.style.height = step*2 + 'px'; FXdiv.style.width = step*2 + 'px';}, speed*4);
	setTimeout(function(){FXdiv.style.height = step*1+ 'px'; FXdiv.style.width = step*1 + 'px';}, speed*5);
	setTimeout(function(){FXdiv.style.display="none";closeoperationinprogress = false;}, speed*6);
	IFrame_UnMask(currentpopup);
	currentpopup = "";
		hastouched=false;
}

function creatediv(id, html, width, height, left, top) {

   var newdiv = document.createElement('div');
   newdiv.style.display = "none";
   newdiv.setAttribute('id', id);
   
   if (width) {
       newdiv.style.width = 300;
   }
   
   if (height) {
       newdiv.style.height = 300;
   }
   
   if ((left || top) || (left && top)) {
       newdiv.style.position = "absolute";
       
       if (left) {
           newdiv.style.left = left;
       }
       
       if (top) {
           newdiv.style.top = top;
       }
   }
   
   newdiv.style.background = "#fff";
   newdiv.style.border = "1px solid #000";
   
   if (html) {
       newdiv.innerHTML = html;
   } else {
       newdiv.innerHTML = "";
   }
   
   document.body.appendChild(newdiv);

} 


function show_popup_cart(tt)
{
	
	document.getElementById(tt).style.display = "block";
	IFrame_Mask(tt);
	scroll(0,0);
	
	version=0;
	if (navigator.appVersion.indexOf("MSIE")!=-1)
	{
		temp=navigator.appVersion.split("MSIE")
		version=parseFloat(temp[1])
	}

	if (version>=5.5 || version == 0) //NON IE browser will return 0
	{
		
		document.getElementById('SmokeScreen').style.display = "block";
	}
	if (version != 0)
		hideAllByTag('select');
		
		
}

function showpopup(tt)
{
	document.getElementById(tt).style.display = "block";
	IFrame_Mask(tt);
}

function hidepopup(tt)
{
	document.getElementById(tt).style.display = "none";
	IFrame_UnMask(tt);
}

function show_div(tt){document.getElementById(tt).style.display = "block";}
function hide_div(tt){document.getElementById(tt).style.display = "none";}

function load_PopUp(url, container)
{
	loadXML_content(url, container); 
	xb.addEvent(container , 'mouseleave', leave, false);
}


function refresh_iframe(container)
{
IFrame_Mask(container);

}

function showAllByTag(tagName,dispType) {
        var elements = document.getElementsByTagName(tagName);
        var i = 0;
        if (dispType == "") {
                dispType = inline;
        }
        while (i < elements.length) {
                elements[i].style.display = dispType;
                i++;
                }
}
function hideAllByTag(tagName) {
        var elements = document.getElementsByTagName(tagName);
        var i = 0;
        while (i < elements.length) {
                elements[i].style.display = "none";
                i++;
                }
}



//===============================================================================================//
// NEEDED FOR CART POPUP
//===============================================================================================//


function close_cart(tt)
{
	close_now('cart_popup2');
}


function loadXML_content(url, tt, load_function)
{

	var xmlhttp
	xmlhttp=null
	// code for Mozilla, etc.
	if (window.XMLHttpRequest)
	{
		xmlhttp=new XMLHttpRequest()
	}
	// code for IE
	else if (window.ActiveXObject)
	{
		xmlhttp=new ActiveXObject("Microsoft.XMLHTTP")
	}
	if (xmlhttp!=null)
	{
	
	   timeoutId = window.setTimeout(function() 
                                  { 	xmlhttp.abort();
         //                               alert("Error"); 
		//								close_cart('cart_popup2');
                                  }, 30000); 
	
				xmlhttp.open("GET",url,true)
		xmlhttp.onreadystatechange=function() {
		if (xmlhttp.readyState==4)
		{
			// if "OK"
			if (xmlhttp.status==200)
			{
			    window.clearTimeout(timeoutId); 
				if (tt != "")
					document.getElementById(tt).innerHTML=xmlhttp.responseText;
				
				 if (typeof load_function != "undefined") {
				//	load_function.call('cart_popup');
				if (load_function != "")
					eval(load_function+'(tt)');
				}
				else
				{
					IFrame_Mask(tt);
				}
				
			}
			else
			{
				alert("Problem retrieving data:" + xmlhttp.statusText)
				//close_cart('cart_popup2');
			}
		}
 
		}   

		xmlhttp.send(null)
	}
	else
	{
		alert("Your browser does not support XMLHTTP.")
	}
}

function XML_JS_Exec(url)
{

	var xmlhttp
	xmlhttp=null
	// code for Mozilla, etc.
	if (window.XMLHttpRequest)
	{
		xmlhttp=new XMLHttpRequest()
	}
	// code for IE
	else if (window.ActiveXObject)
	{
		xmlhttp=new ActiveXObject("Microsoft.XMLHTTP")
	}
	if (xmlhttp!=null)
	{
				xmlhttp.open("GET",url,true)
		xmlhttp.onreadystatechange=function() {
		if (xmlhttp.readyState==4)
		{
			// if "OK"
			if (xmlhttp.status==200)
			{
				eval(xmlhttp.responseText);
			}
			else
			{
				alert("Problem retrieving data:" + xmlhttp.statusText)
			}
		}
 
		}   

		xmlhttp.send(null)
	}
	else
	{
		alert("Your browser does not support XMLHTTP.")
	}
}

function XML_POST(url, params, tt, load_function)
{

	var xmlhttp
	xmlhttp=null
	// code for Mozilla, etc.
	if (window.XMLHttpRequest)
	{
		xmlhttp=new XMLHttpRequest()
	}
	// code for IE
	else if (window.ActiveXObject)
	{
		xmlhttp=new ActiveXObject("Microsoft.XMLHTTP")
	}
	if (xmlhttp!=null)
	{
		xmlhttp.open("POST",url,true)
		xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		xmlhttp.setRequestHeader("Content-length", params.length);
		xmlhttp.setRequestHeader("Connection", "close");

		xmlhttp.onreadystatechange=function() {
		if (xmlhttp.readyState==4)
		{
			// if "OK"
			if (xmlhttp.status==200)
			{
				if (tt != "")
					document.getElementById(tt).innerHTML=xmlhttp.responseText;
				
				 if (typeof load_function != "undefined") {
				//	load_function.call('cart_popup');
					eval(load_function+'(tt)');
				}
				else
				{
					IFrame_Mask(tt);
				}							
			}
			else
			{
				alert("Problem retrieving data:" + xmlhttp.statusText)
			}
		}
 
		}   

		xmlhttp.send(params)
	}
	else
	{
		alert("Your browser does not support XMLHTTP.")
	}
}

var isgcheckout = 'N';
function XML_ping(url)
{
	var xmlhttp
	xmlhttp=null
	// code for Mozilla, etc.
	if (window.XMLHttpRequest)
		xmlhttp=new XMLHttpRequest()
	// code for IE
	else if (window.ActiveXObject)
		xmlhttp=new ActiveXObject("Microsoft.XMLHTTP")
	
	if (xmlhttp!=null)
	{
		xmlhttp.open("GET",url,true)
		xmlhttp.send(null)
	}
	
}

function LoadStates(tt)
{
	var elements = document.getElementById(tt).getElementsByTagName('script');
	var i = 0;
	while (i < elements.length)
	{
		eval(elements[i].innerHTML);
		i++;
	}
}


function LoadJS(tt)
{
	var elements = document.getElementById(tt).getElementsByTagName('script');
	var i = 0;
	while (i < elements.length)
	{
		eval(elements[i].innerHTML);
		i++;
	}
}

 //Find X Coord
function findPosX(obj)
  {
    var curleft = 0;
    if(obj.offsetParent)
        while(1) 
        {
          curleft += obj.offsetLeft;
          if(!obj.offsetParent)
            break;
          obj = obj.offsetParent;
        }
    else if(obj.x)
        curleft += obj.x;
    return curleft;
  }

 //Find Y Coord
  function findPosY(obj)
  {
    var curtop = 0;
    if(obj.offsetParent)
        while(1)
        {
          curtop += obj.offsetTop;
          if(!obj.offsetParent)
            break;
          obj = obj.offsetParent;
        }
    else if(obj.y)
        curtop += obj.y;
    return curtop;
  }
  
  
  function Pop2Cart(params)
  {
	if(FormValidation()) 
	{
	
	if (EnableMenus){
		loadXML_content('/cart_popup.php?'+params, 'cart_popup' ,'show_div'); 
		document.getElementById('cart_popup').innerHTML = document.getElementById('loading').innerHTML;
		show_popup_cart('cart_popup2');
		IFrame_Mask('cart_popup2');
	}
	else{document.orderform.submit();}
	}
  }
  
function getCheckedValue(radioGroupName)
{
	radioObj= document.getElementsByName(radioGroupName);
	if(!radioObj)
		return "";
	
	  if (radioObj[0] && radioObj[0].type == "select-one")
	  {
		return document.getElementById(radioGroupName).options[document.getElementById(radioGroupName).selectedIndex].value;
	  }
	  else
	  {
			var radioLength = radioObj.length;
			if(radioLength == undefined)
				if(radioObj.checked)
					return radioObj.value;
				else
					return "";
			for(var i = 0; i < radioLength; i++) {
				if(radioObj[i].checked) {
					return radioObj[i].value;
				}
			}
			return "";
		}
}