window.onerror=function(msg, url, linenumber){

	if (msg.indexOf("this.textbox") >= 0 || msg.indexOf("onkeyup") >= 0 || msg.indexOf("'null' is not an object") >= 0 || msg.indexOf("document.all") >= 0) {
	}
	else if (msg.indexOf("Syntax error") >= 0) {
	}
	else if (msg.indexOf("Error loading script") >= 0) {
	}
	else if (msg.indexOf("addEventListener") >= 0) {
	}
	else if (msg.indexOf("Object doesn't support this property") >= 0) {
	}
	else if (msg.indexOf("Uncaught") >= 0) {
	}
	else if (msg.indexOf("Unexpected identifier") >= 0) {
	}
	else if (msg.indexOf("Unspecified error") >= 0) {
	}
	else {
//		senderroremail('Error message: '+msg+'\nLine Number: '+linenumber);
	}
	
}

var xmlHttp;
/*
var objMyClass = null;
function MyClass()
{
	this.MemberV1 = arguments[0];
	this.getValue = function(){ return this.MemberV1 }
}
function initClass(strRouteReturn)
{
  objMyClass = new MyClass(strRouteReturn)
}
*/

function showroute(objForm)
{ 

	if(GB_DONE) {
		 GB_hide();
	}
					
	var frm = objForm;
	frm['update_recip_submit'].value = "PLEASE WAIT...   ";
	frm['update_recip_submit'].className="wcfbtnbglb2";
	frm['update_recip_submit'].disabled = true;
					
	objForm.submit()

}

function stateChanged_back() 
{ 
	if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
	{ 
		//document.getElementById("txtHint").innerHTML=xmlHttp.responseText;
		document.getElementById("loader").style.display = "none";
		
		 if(xmlHttp.status == 200) {              
			//alert(xmlHttp.getAllResponseHeaders());
			//alert(xmlHttp.responseText);
			var returnCheck = xmlHttp.responseText;
			if (returnCheck.indexOf("routeTrue") > 0)
			{
				//alert("GOOD");
				initClass(1);
			}
			else
			{
				//alert("NO GOOD");
				initClass(2);
			}
			//alert("111statusCheck:" + objMyClass.getValue());
        }
	} 
} 

function GetXmlHttpObject()
{ 
	var objXMLHttp=null
	if (window.XMLHttpRequest)
	{
		objXMLHttp=new XMLHttpRequest()
	}
	else if (window.ActiveXObject)
	{
		objXMLHttp=new ActiveXObject("Microsoft.XMLHTTP")
	}
	return objXMLHttp
}

function showqas(objForm)
{

	if (objForm.qas_addr.value != "o"){
		xmlHttp=GetXmlHttpObject()		
		if (document.getElementById("loader").style.display == "none"){		
			document.getElementById("loader").style.display = "";
		}else{		
			document.getElementById("loader").style.display = "none";
		}
		if (xmlHttp==null)
		{
			alert ("Browser does not support HTTP Request")
			return
		} 
		var url="/shop/account/qas.asp"		
		queryString = "";	   
		var numberElements = objForm.elements.length - 1;
		for(var i = 0; i < numberElements; i++) {
			if(i < numberElements - 1) {
				queryString += objForm.elements[i].name + "=" + encodeURIComponent(objForm.elements[i].value) + "&";
			} else {
				queryString += objForm.elements[i].name + "=" + encodeURIComponent(objForm.elements[i].value);
			}
		}	
		xmlHttp.onreadystatechange = function(){
			if(xmlHttp.readyState == 4){
				var returnCheckQAS = xmlHttp.responseText;
				document.getElementById("loader").style.display = "none";
				if (returnCheckQAS.indexOf("exclamation.gif") > 0)
				{
					var strReturn = returnCheckQAS								
					GB_show('Address validation', strReturn, 500, 600); 
				}
				else
				{
					var nPattern = /<address>(.*?)<\/address>/; 
					var nMatches = returnCheckQAS.match(nPattern); 					
					var nReturnAddress = nMatches[0];
				
					//var nAddress = returnCheckQAS.split('||');
					var nAddress = nReturnAddress.split('||');
					
					objForm.ship_street.value = nAddress[1];
					objForm.ship_ref1.value = nAddress[2];
					objForm.ship_city.value = nAddress[3];
					objForm.ship_state.value = nAddress[4];
					objForm.ship_zip.value = nAddress[5];				
							
					document.getElementById("txtHint").style.display = "none";
					document.getElementById("txtHint").innerHTML=returnCheckQAS;													
//					showroute(objForm);
					if(GB_DONE) {
						 GB_hide();
					}
					var frm = objForm;
					frm['update_recip_submit'].value = "PLEASE WAIT...   ";
					frm['update_recip_submit'].className="wcfbtnbglb2";
					frm['update_recip_submit'].disabled = true;
					objForm.submit()
				}
			}
			else
			{
				//alert("Test2")			
			}
		}	
		xmlHttp.open("POST",url,true)
		xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8");
		xmlHttp.send(queryString)
	}
	else
	{
//		showroute(objForm);
		if(GB_DONE) {
			 GB_hide();
		}
		var frm = objForm;
		frm['update_recip_submit'].value = "PLEASE WAIT...   ";
		frm['update_recip_submit'].className="wcfbtnbglb2";
		frm['update_recip_submit'].disabled = true;
		objForm.submit()
	}
	
}

function stateChanged() 
{ 
	if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
	{ 
		document.getElementById("txtHint").innerHTML=xmlHttp.responseText;
		document.getElementById("loader").style.display = "none";
	} 
}

function senderroremail(error_message)
{ 

	xmlHttp=GetXmlHttpObject()
		
	if (xmlHttp==null)
	{
	alert ("Browser does not support HTTP Request")
	return
	} 	
	
//	var url="/shop/cart/error.asp";
//	url=url+"?E="+error_message;
//	url=url+"&F=route.js";
//	url=url+"&sid="+Math.random();

	var queryString="E="+error_message;
	queryString=queryString+"&F=route.js";
	queryString=queryString+"&sid="+Math.random();
	
	xmlHttp.onreadystatechange = function(){
		if(xmlHttp.readyState == 4){		
			 if(xmlHttp.status == 200) {              
//alert(xmlHttp.getAllResponseHeaders());
//alert(xmlHttp.responseText);
				var returnCheck = xmlHttp.responseText;
			}
		}
	}
	
//	xmlHttp.open("GET",url,true)
//	xmlHttp.send(null)

	var url="/shop/cart/error.asp";
	xmlHttp.open("POST",url,true)
	xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8");
	xmlHttp.send(queryString);

}

/* Greybox Redux
 * Required: http://jquery.com/
 * Written by: John Resig
 * Based on code by: 4mir Salihefendic (http://amix.dk)
 * License: LGPL (read more in LGPL.txt)
 */

var GB_ANIMATION = true;
var GB_DONE = false;
var GB_DONEzoomitem = false;
var GB_DONEzoomeditorder = false;
var GB_DONECITB = false;
var GB_DONECITBORDER = false;
var GB_HEIGHT = 400;
var GB_WIDTH = 400;

function GB_show(caption, strReturn, height, width) {
  GB_HEIGHT = height || 400;
  GB_WIDTH = width || 400;
  if(!GB_DONE) {
    $(document.body)
      .append("<div id='GB_overlay'></div><div id='GB_window'><div id='GB_caption'></div>"
        + "<img src='/images/grafx/close.gif' alt='Close window'/></div>");
    $("#GB_window img").click(GB_hide);
    //$("#GB_overlay").click(GB_hide);
    $(window).resize(GB_position);
    GB_DONE = true;
  }

  $("#GB_frame").remove();
  //$("#GB_window").append("<div id='GB_frame'>"+strReturn+"</div>");
  $("#GB_window").append("<iframe id='GB_frame' style='overflow-x: hidden; overflow-y: hidden;' src='/lib_files/include_lib/qas2/verify.asp'></iframe>");
  
  $("#GB_caption").html(caption);
  $("#GB_overlay").show();
  GB_position();
  
  if(GB_ANIMATION)
    $("#GB_window").slideDown("slow");
  else
    $("#GB_window").show();
}
function GB_showwine(caption, strReturn, height, width, objForm) {
  if (objForm.gb_wine.value != 'check') {
	GB_HEIGHT = height || 400;
	GB_WIDTH = width || 400;
	if(!GB_DONE) {
	  $(document.body)
	    .append("<div id='GB_overlay'></div><div id='GB_window'><div id='GB_caption'></div>"
	      + "<img src='/images/grafx/close.gif' alt='Close window'/></div>");
	  $("#GB_window img").click(GB_hide);
	  //$("#GB_overlay").click(GB_hide);
	  $(window).resize(GB_position);
	  GB_DONE = true;
	}

	$("#GB_frame").remove();
	$("#GB_window")
		.append("<div id='GB_frame'><br><form name='frm21'><table width='100%' border='0' cellpadding='5' cellspacing='0'><tr><td height='81' style='background-image:url(/images/grafx/wineover21.gif);background-repeat:no-repeat;background-position:center center;'></td></tr>" 
		  + "<tr><td class='wctnb' style='padding: 10px 20px 10px 20px'>In order to ensure prompt delivery I understand and agree that an adult over the age of 21 will be present to sign for this gift at the time of its arrival.<br></td></tr>"
		  + "<tr><td class='wctnb' align='center'><br><input type='checkbox' name='over21' id='GB_WINE'><b>I agree!</b><br></td></tr>"
		  + "<tr><td align='center'><input type='button' name='YES' value='YES' class='wcfbtnbg' id='GB_WINEYES'> <input type='button' name='NO' value='NO' class='wcfbtnbg' id='GB_WINENO'></td></tr></table></form></div>");
	$("#GB_WINEYES").click(function(){
		if ($("#GB_WINE").is(":checked")) {
		
			$("#GB_window,#GB_overlay").hide();		
			objForm.gb_wine.value = "check";
			
			if( objMyClass == null )
			{
			  	if (ConfirmCITB()) {
				showqas(objForm)
				}
			}
			else
			{
				showqas(objForm)
			}
		} else {
			//alert("In order to ensure prompt delivery I understand and agree that an adult over the age of 21 will be present to sign for this gift at the time of its arrival");
			if(confirm("In order to ensure prompt delivery I understand and agree that an adult over the age of 21 will be present to sign for this gift at the time of its arrival.")==true)
			{
				document.frm21.over21.checked = true;
			}
		}
	});
	$("#GB_WINENO").click(function(){
		$("#GB_window,#GB_overlay").hide();
	});
  
	$("#GB_caption").html(caption);
	$("#GB_overlay").show();
	GB_position();
  
	if(GB_ANIMATION)
	  $("#GB_window").slideDown("slow");
	else
	  $("#GB_window").show();
	  
  } else {
  
	if( objMyClass == null )
	{
	  	if (ConfirmCITB()) {
		showqas(objForm)
		}
	}
	else
	{
		showqas(objForm)
	}  
  }  
}

function GB_hide() {

	if(GB_DONE) {
		$("#GB_window,#GB_overlay").hide();
	}
			
}

function GB_position() {
  var de = document.documentElement; 
  var w = self.innerWidth || (de&&de.clientWidth) || document.body.clientWidth;
  $("#GB_window").css({width:GB_WIDTH+"px",height:GB_HEIGHT+"px",left: ((w - GB_WIDTH)/2)+"px" });
  $("#GB_frame").css("height",GB_HEIGHT - 32 +"px");
}

//////////////////////////////////////////////// Enlarge Image
function GB_zoomitem(caption, strReturn, height, width) {
  GB_HEIGHT = 680;
  GB_WIDTH = 810;
  
  if(!GB_DONEzoomitem) {
    $(document.body).append("<div id='GB_overlayZoomitem'></div><div id='GB_windowZoomitem'><div id='GB_captionZoomitem'></div><img src='/images/grafx/zoomclose.gif' alt='Close window'/></div>");
    $("#GB_windowZoomitem img").click(GB_hideZoomitem);
    $(window).resize(GB_positionZoomitem);
    GB_DONEzoomitem = true;
  }

  $("#GB_frameZoomitem").remove();
  //$("#GB_windowZoomitem").append("<iframe frameborder='0' framespacing='0' align='center' marginwidth='0' marginheight='0' id='GB_frameZoomitem' src='http://s7d5.scene7.com/s7/zoom/flasht_zoom.jsp?company=Winecountrygiftbaskets&sku="+caption+"&config=Winecountrygiftbaskets/zoomitem&locale=en&vc=modifier=%2526op_sharpen=1%2526resmode=sharp2%2526op_usm=1,1,8,0'></iframe>");
  $("#GB_windowZoomitem").append("<iframe frameborder='0' framespacing='0' align='center' marginwidth='0' marginheight='0' id='GB_frameZoomitem' src='/slide/enlargeitem.asp?itemno="+caption+"'></iframe>");
  //$("#GB_windowZoomitem").append("<iframe frameborder='0' framespacing='0' align='center' marginwidth='0' marginheight='0' id='GB_frameZoomitem' src='http://images.winecountrygiftbaskets.com/s7viewers/dhtml/genericZoomMobile.html?serverUrl=http://images.winecountrygiftbaskets.com/is/image/&style=Scene7SharedAssets%2Fhtmlviewerskins%2Fcss%2FbasicZoomMobile%2Ecss&contentRoot=http://images.winecountrygiftbaskets.com/skins/&asset=Winecountrygiftbaskets/"+caption+"'></iframe>");
  //$("#GB_windowZoomitem").append("<iframe frameborder='0' framespacing='0' align='center' marginwidth='0' marginheight='0' id='GB_frameZoomitem' src='http://images.winecountrygiftbaskets.com/s7viewers/dhtml/genericZoomTemplate.html?image=Winecountrygiftbaskets/"+caption+"?$medium$'></iframe>");
  
  $("#GB_captionZoomitem").html('Item:' + caption);
  $("#GB_overlayZoomitem").show();
  GB_positionZoomitem();
  
  if(GB_ANIMATION)
    $("#GB_windowZoomitem").slideDown("slow");
  else
    $("#GB_windowZoomitem").show();
}

function GB_hideZoomitem() {
  $("#GB_windowZoomitem,#GB_overlayZoomitem").hide();
}

function GB_positionZoomitem() {
  var GB_HEIGHT = 680;
  var GB_WIDTH = 810;
  var de = document.documentElement; 
  var w = self.innerWidth || (de&&de.clientWidth) || document.body.clientWidth;
  $("#GB_windowZoomitem").css({width:GB_WIDTH+"px",height:GB_HEIGHT+"px",left: ((w - GB_WIDTH)/2)+"px" });
  $("#GB_frameZoomitem").css("height",GB_HEIGHT - 32 +"px");
}

//////////////////////////////////////////////// Card In the Box
function GB_zoomCITB(caption, asiid, asiorder, height, width) {
  GB_HEIGHT = 800;
  GB_WIDTH = 850;
  
  if(!GB_DONECITB) {
    $(document.body).append("<div id='GB_overlayZoomCITB'></div><div id='GB_windowZoomCITB'><div id='GB_captionZoomCITB'></div><img src='/images/grafx/zoomclose.gif' alt='Close window'/></div>");
    $("#GB_windowZoomCITB img").click(GB_hideZoomCITB);
    $(window).resize(GB_positionZoomCITB);
    GB_DONECITB = true;
  }  

  $("#GB_frameZoomCITB").remove();
  $("#GB_windowZoomCITB").append("<iframe frameborder='0' framespacing='0' align='center' marginwidth='0' marginheight='0' name='GB_frameZoomCITB' id='GB_frameZoomCITB' src='/citb.asp'></iframe>");
  
  $("#GB_captionZoomCITB").html('CITB:' + caption);
  $("#GB_overlayZoomCITB").show();
  GB_positionZoomCITB();
  
  if(GB_ANIMATION)
    $("#GB_windowZoomCITB").slideDown("slow");
  else
    $("#GB_windowZoomCITB").show();
}

function GB_zoomCITBCart(caption, asicid, asiid, asiorder, height, width) {
  GB_HEIGHT = 800;
  GB_WIDTH = 850;
  
  if(!GB_DONECITB) {
    $(document.body).append("<div id='GB_overlayZoomCITB'></div><div id='GB_windowZoomCITB'><div id='GB_captionZoomCITB'></div><img src='/images/grafx/zoomclose.gif' alt='Close window'/></div>");
    $("#GB_windowZoomCITB img").click(GB_hideZoomCITB);
    $(window).resize(GB_positionZoomCITB);
    GB_DONECITB = true;
  }  

  $("#GB_frameZoomCITB").remove();
  $("#GB_windowZoomCITB").append("<iframe frameborder='0' framespacing='0' align='center' marginwidth='0' marginheight='0' name='GB_frameZoomCITB' id='GB_frameZoomCITB' src='/citb.asp?cid="+asicid+"&id="+asiid+"&order="+asiorder+"'></iframe>");
  //$("#GB_windowZoomCITB").append("<iframe frameborder='0' framespacing='0' align='center' marginwidth='0' marginheight='0' name='GB_frameZoomCITB' id='GB_frameZoomCITB' src='/citb.asp'></iframe>");
  
  $("#GB_captionZoomCITB").html('CITB:' + caption);
  $("#GB_overlayZoomCITB").show();
  GB_positionZoomCITB();
  
  if(GB_ANIMATION)
    $("#GB_windowZoomCITB").slideDown("slow");
  else
    $("#GB_windowZoomCITB").show();
}

function GB_zoomCITBOrder(caption, orderno, level, height, width) {
  GB_HEIGHT = 800;
  GB_WIDTH = 850;
  
  if(!GB_DONECITBORDER) {
    $(document.body).append("<div id='GB_overlayZoomCITB'></div><div id='GB_windowZoomCITB'><div id='GB_captionZoomCITB'></div><img src='/images/grafx/zoomclose.gif' alt='Close window'/></div>");
    $("#GB_windowZoomCITB img").click(GB_hideZoomCITB);
    $(window).resize(GB_positionZoomCITB);
    GB_DONECITBORDER = true;
  }  

  $("#GB_frameZoomCITB").remove();
  $("#GB_windowZoomCITB").append("<iframe frameborder='0' framespacing='0' align='center' marginwidth='0' marginheight='0' name='GB_frameZoomCITB' id='GB_frameZoomCITB' src='/citb_edit.asp?orderno="+orderno+"&level="+level+"'></iframe>");
  
  $("#GB_captionZoomCITB").html('CITB:' + caption);
  $("#GB_overlayZoomCITB").show();
  GB_positionZoomCITB();
  
  if(GB_ANIMATION)
    $("#GB_windowZoomCITB").slideDown("slow");
  else
    $("#GB_windowZoomCITB").show();
}

function GB_hideZoomCITB() {
  $("#GB_windowZoomCITB,#GB_overlayZoomCITB").hide();
}

function GB_positionZoomCITB() {
  var GB_HEIGHT = 800;
  var GB_WIDTH = 850;
  var de = document.documentElement; 
  var w = self.innerWidth || (de&&de.clientWidth) || document.body.clientWidth;
  $("#GB_windowZoomCITB").css({width:GB_WIDTH+"px",height:GB_HEIGHT+"px",left: ((w - GB_WIDTH)/2)+"px" });
  $("#GB_frameZoomCITB").css("height",GB_HEIGHT - 32 +"px");
}

//////////////////////////////////////////////// Enlarge Edit Order
function GB_zoomeditorder(caption, strReturn, height, width, ptype) {
  GB_HEIGHT = 280;
  GB_WIDTH = 610;
  
  if(!GB_DONEzoomeditorder) {
    $(document.body).append("<div id='GB_overlayZoomeditorder'></div><div id='GB_windowZoomeditorder'></div>");
    $("#GB_windowZoomeditorder img").click(GB_hideZoomeditorder);
    $(window).resize(GB_positionZoomeditorder);
    GB_DONEzoomeditorder = true;
  }

  $("#GB_frameZoomeditorder").remove();
  $("#GB_windowZoomeditorder").append("<iframe frameborder='0' framespacing='0' align='center' marginwidth='0' marginheight='0' id='GB_frameZoomeditorder' src='/shop/order_status/order_update_edit.asp?ptype="+ptype+"'></iframe>");
  
  $("#GB_overlayZoomeditorder").show();
  GB_positionZoomeditorder();
  
  if(GB_ANIMATION)
    $("#GB_windowZoomeditorder").slideDown("slow");
  else
    $("#GB_windowZoomeditorder").show();
}

function GB_hideZoomeditorder() {
  $("#GB_windowZoomeditorder,#GB_overlayZoomeditorder").hide();
}

function GB_positionZoomeditorder() {
  var GB_HEIGHT = 280;
  var GB_WIDTH = 610;
  var de = document.documentElement; 
  var w = self.innerWidth || (de&&de.clientWidth) || document.body.clientWidth;
  $("#GB_windowZoomeditorder").css({width:GB_WIDTH+"px",height:GB_HEIGHT+"px",left: ((w - GB_WIDTH)/2)+"px" });
  $("#GB_frameZoomeditorder").css("height",GB_HEIGHT - 32 +"px");
}
