var ROOTPATH;
var xmlHttp;
var UPVS_PARTNER_ID;
var DIVNAME = "upvs_quote_area";
var requestURL;
var act="";
var is_ie = (navigator.userAgent.indexOf('MSIE') >= 0) ? 1 : 0; 
var is_ie5 = (navigator.appVersion.indexOf("MSIE 5.5")!=-1) ? 1 : 0; 
var is_opera = ((navigator.userAgent.indexOf("Opera 6")!=-1)||(navigator.userAgent.indexOf("Opera/6")!=-1)) ? 1 : 0; 
var is_netscape = (navigator.userAgent.indexOf('Netscape') >= 0) ? 1 : 0;

function fetch_remote_page(url,action)
{ 
	
if (url.length > 0)
	{
		act=action;
		requestURL = url;
		xmlHttp = GetXmlHttpObject(stateChangeHandler);
		xmlHttp_Get(xmlHttp, requestURL);
	}
	else 
	{
		alert('Invalid data');
	}
}

function stateChangeHandler()
{
	if (xmlHttp.readyState == 4 || xmlHttp.readyState == 'complete')
	{
		var str = xmlHttp.responseText;
		//alert(str);
		//alert(act);
		str = trim(str);
		
		if(str!="")
		{
			var tmpArr = str.split("~");
		}
		//alert(tmpArr)
		switch(act)
		{
			case "GetAttribute":
					var AttributeDataRow = tmpArr.length;
					var AttributeCombo = document.getElementById('ProductSize');
					var AttributeComboLength = document.getElementById('ProductSize').options.length;
					for(var i=0;i<AttributeComboLength;i++) 
					{
						AttributeCombo.remove(AttributeCombo.options[i]);
					}
					var opt = document.createElement('option');
					opt.text = "Select";
					opt.value = "0";
					 try
					  {
						 AttributeCombo.add(opt,null); // standards compliant
					  }
						catch(ex)
					  {
						 AttributeCombo.add(opt); // IE only
					  }
					for(var i=0;i<AttributeDataRow;i++)
					{
						Attribute = tmpArr[i];
						var opt = document.createElement('option');
						opt.text = Attribute;
						opt.value = Attribute;
						
						  try
						  {
							 AttributeCombo.add(opt,null); // standards compliant
						  }
							catch(ex)
						  {
							 AttributeCombo.add(opt); // IE only
						  }
					}
				break;
				
				
			case  "GetBillingState": case "GetShippingState" : case "GetState" :
				if(str!="")
				{
					if(tmpArr!="")
					var StateDataRow = tmpArr.length;
				}
					if(act == "GetBillingState")
					{
						var StateCombo = document.getElementById('BillingStateId');
						var StateComboLength = document.getElementById('BillingStateId').options.length;
					}
					else if(act == "GetShippingState")
					{
						var StateCombo = document.getElementById('ShippingStateId');
						var StateComboLength = document.getElementById('ShippingStateId').options.length;
					}
					else
					{
						var StateCombo = document.getElementById('StateId');
						var StateComboLength = document.getElementById('StateId').options.length;
					}
					for(var i=0;i<StateComboLength;i++) 
					{
						StateCombo.remove(StateCombo.options[i]);
					}
					var opt = document.createElement('option');
					opt.text = "Select";
					opt.value = "0";
					 try
					  {
						 StateCombo.add(opt,null); // standards compliant
					  }
						catch(ex)
					  {
						 StateCombo.add(opt); // IE only
					  }
					for(var i=0;i<StateDataRow;i++)
					{
						StateData = tmpArr[i].split("^");
						StateID = StateData[0];
						StateName = StateData[1];
						var opt = document.createElement('option');
						opt.text = StateName;
						opt.value = StateID
						
						  try
						  {
							 StateCombo.add(opt,null); // standards compliant
						  }
							catch(ex)
						  {
							 StateCombo.add(opt); // IE only
						  }
					}
				break;
			
			case "CheckItemCode":
				//alert(str);
				var divid = document.getElementById('RememberDivId').value;
				
				if(str=="Invalide Item Code")
				{
						document.getElementById(divid).innerHTML = str;
						document.getElementById('Process').disabled=true;
				}
				else
				{
						var Prices = str.split("^");
						
						document.getElementById(divid).innerHTML = "";
						var Wholesale = 0; //document.getElementById('TotWholesale').value;
						var Retail = 0; // document.getElementById('TotRetail').value;
							
						var Sale = 0; //document.getElementById('TotSale').value;
						
						var Counter = document.getElementById('Counter').value-1;
						var CurNo = divid.split("_");
						var CurrentNo = CurNo[1];
						document.getElementById("Wholesale"+CurrentNo).value = Prices[0];
						document.getElementById("Retail"+CurrentNo).value = Prices[1];
						document.getElementById("Sale"+CurrentNo).value = Prices[2];
						for(var i=0;i<(Counter+1);i++)
						{
							Wholesale= eval(Wholesale)+eval(document.getElementById("Wholesale"+i).value);
							Retail= eval(Retail)+eval(document.getElementById("Retail"+i).value);
							Sale= eval(Sale)+eval(document.getElementById("Sale"+i).value);
						}
						document.getElementById('tdWholesale').innerHTML = "$"+Wholesale.toFixed(2);
							document.getElementById('tdRetail').innerHTML = "$"+Retail.toFixed(2);
							document.getElementById('tdSale').innerHTML = "$"+Sale.toFixed(2);
							document.getElementById('TotWholesale').value = Wholesale.toFixed(2);
							document.getElementById('TotRetail').value = Retail.toFixed(2);
							document.getElementById('TotSale').value = Sale.toFixed(2);
							document.getElementById('Process').disabled=false;
						document.getElementById('DealType').value = Prices[3];
						//alert(Counter);
						//var WholesaleId = ;
						//var RetailId = ;
						//var SaleId = 
						
				}
			break;
			
			case "RecalcAmt":
				var DbVals = str.split("^");
				
				var CartId = DbVals[0];
				
				var TotalAmount =DbVals[1];
				var TotalSavedAmt = DbVals[2];
				var TotalRetailAmt =  DbVals[3];
				var shipcost = DbVals[4];
				
				var OldRetailAmt = document.getElementById('RetailAmt_'+CartId).value;
				var OldPmtAmt = document.getElementById('PayAmt_'+CartId).value;
				var OldSavAmt = document.getElementById('SaveAmt_'+CartId).value;
				
				var OldTotRetailAmt = document.getElementById('TotAmountRetail').value;
				var OldTotPmtAmt = document.getElementById('TotAmountPay').value;
				var OldTotSavAmt = document.getElementById('TotAmountSave').value;
				
				var NewTotRetailAmt = eval(OldTotRetailAmt) - eval(OldRetailAmt)+eval(TotalRetailAmt);
				var NewTotPmtAmt = eval(OldTotPmtAmt)-eval(OldPmtAmt)+eval(TotalAmount);
				var NewTotSavAmt = eval(OldTotSavAmt)-eval(OldSavAmt)+eval(TotalSavedAmt);
				
				document.getElementById('RetailAmt_'+CartId).value = eval(TotalRetailAmt).toFixed(2);
				document.getElementById('PayAmt_'+CartId).value = eval(TotalAmount).toFixed(2);
				document.getElementById('SaveAmt_'+CartId).value = eval(TotalSavedAmt).toFixed(2);
				
				document.getElementById('tdPayAmt_'+CartId).innerHTML = "$"+eval(TotalAmount).toFixed(2);
				document.getElementById('tdSaveAmt_'+CartId).innerHTML = "$"+eval(TotalSavedAmt).toFixed(2);
				
				document.getElementById('TotAmountRetail').value = NewTotRetailAmt.toFixed(2);
				document.getElementById('TotAmountPay').value = NewTotPmtAmt.toFixed(2);
				document.getElementById('TotAmountSave').value = NewTotSavAmt.toFixed(2);
				
				document.getElementById('tdTotAmountPay').innerHTML = "$<strong>"+NewTotPmtAmt.toFixed(2)+"</strong>";
				document.getElementById('tdTotAmountPay2').innerHTML = "$"+NewTotPmtAmt.toFixed(2);
				document.getElementById('tdTotAmountSave').innerHTML = "$<strong>"+NewTotSavAmt.toFixed(2)+"</strong>";
				var SavePercentage = NewTotSavAmt*100/NewTotRetailAmt;
				document.getElementById('tdTotAmountSave2').innerHTML = "<strong> You Save "+SavePercentage.toFixed(0)+"%($"+NewTotSavAmt.toFixed(2)+")</strong>";
			/*	var GrandTotal = eval(document.getElementById('TotAmountPay').value) + eval(document.getElementById('ShippingPrice').value);
				document.getElementById('tdGrandTotal').innerHTML = "$" + GrandTotal.toFixed(2);
				document.getElementById('TotalCharge').value = GrandTotal;*/
				if(shipcost != "") {
					
					var total = eval(document.getElementById('TotAmountPay').value);
					var dtype  = document.getElementById("ShippingPrice").options[document.getElementById("ShippingPrice").selectedIndex].text;
					var free = Number('<?=FREESHIPPINGAMT?>');
					if(dtype == "USA Standard Shipping") {
						if(total > 99) {
							shipcost = 0;
						}
						else {
							shipcost = shipcost;
						}
					}
					var GrandTotal = eval(document.getElementById('TotAmountPay').value) + eval(shipcost);	
					document.getElementById('tdShipping').innerHTML = "$" + eval(shipcost).toFixed(2);
					document.getElementById('tdGrandTotal').innerHTML = "$" + GrandTotal.toFixed(2);
					document.getElementById('TotalCharge').value = GrandTotal;
					document.getElementById('DeliveryCost').value = eval(shipcost).toFixed(2);	
					
				}
				else
				{
					var GrandTotal = eval(document.getElementById('TotAmountPay').value) + eval(document.getElementById('ShippingPrice').value);
					document.getElementById('tdGrandTotal').innerHTML = "$" + GrandTotal.toFixed(2);
					document.getElementById('TotalCharge').value = GrandTotal;	
					document.getElementById('DeliveryCost').value = eval(document.getElementById('ShippingPrice').value).toFixed(2);
				}
			break;
			case "Coupon":
			//alert(str);
			var ReturnVal = str.split("^");
				if(ReturnVal[1]!="ErrMSG")
				{
					if(ReturnVal[1]=="Coupon Code" && ReturnVal[2]=="Percentage")
					{
						var CounonAmount = (eval(document.getElementById('TotAmountPay').value) * eval(ReturnVal[0]))/100;
						var GrandTotal =eval(document.getElementById('TotalCharge').value) - eval(CounonAmount).toFixed(2);
						document.getElementById('GftCode').innerHTML = "<input type='hidden' name='item_name_99' value='Gift Certificate Code/Coupon Code'/><input type='hidden' name='item_description_99' value=''/><input type='hidden' name='item_quantity_99' value='1'/><input type='hidden' name='item_price_99' value='-"+eval(CounonAmount).toFixed(2)+"'/><input type='hidden' name='item_currency_99' value='USD'/>";
					}
					else
					{
						var CounonAmount = eval(ReturnVal[0])
						var GrandTotal =eval(document.getElementById('TotalCharge').value) - eval(CounonAmount).toFixed(2);
						document.getElementById('GftCode').innerHTML = "<input type='hidden' name='item_name_99' value='Gift Certificate Code/Coupon Code'/><input type='hidden' name='item_description_99' value=''/><input type='hidden' name='item_quantity_99' value='1'/><input type='hidden' name='item_price_99' value='-"+eval(CounonAmount).toFixed(2)+"'/><input type='hidden' name='item_currency_99' value='USD'/>";
					}
					/*if(ReturnVal[1]=="Coupon Code")
					{
						if(GrandTotal>ReturnVal[3])
						{
							GrandTotal = eval(GrandTotal) - eval(document.getElementById('ShippingPrice').value);
							document.getElmentById('tdShipping').innerHTML = "$ 0.00";
							document.getElementById('trDelType').style.display = 'none';
							
						}
						else
						{
							document.getElmentById('tdShipping').innerHTML = document.getElementById('ShippingPrice').value
							document.getElementById('trDelType').style.display = '';
						}
					}*/
					if(GrandTotal<0)
					{
						GrandTotal = 0.01;
						document.getElementById('AlertMsg').innerHTML = "Your Order Amount is less then 0 so to Complete the Order you have to pay atlease $0.01";
					}
					document.getElementById('tdGrandTotal').innerHTML = "$" + eval(GrandTotal).toFixed(2);
					document.getElementById('TotalCharge').value = GrandTotal;
					document.getElementById('MsgId').innerHTML = "$"+eval(CounonAmount).toFixed(2)+" Amount Deducted From Your "+ReturnVal[1];
					
				}
				else
				{
					alert(ReturnVal[0]);
				}
					
			break;
			case  "GetCitizenCity": case "GetLivingCity" : case "GetCity" :
				if(str!="")
				{
					if(tmpArr!="")
					var CityDataRow = tmpArr.length;
				}
					if(act == "GetCitizenCity")
					{
						var CityCombo = document.getElementById('CitizenCityID');
						var CityComboLength = document.getElementById('CitizenCityID').options.length;
					}
					else if(act == "GetLivingCity")
					{
						var CityCombo = document.getElementById('LivingCityID');
						var CityComboLength = document.getElementById('LivingCityID').options.length;
					}
					else
					{
							var CityCombo = document.getElementById('CityID');
							var CityComboLength = document.getElementById('CityID').options.length;
					}
						
					for(var i=0;i<CityComboLength;i++) 
					{
						CityCombo.remove(CityCombo.options[i]);
					}
					var opt = document.createElement('option');
					opt.text = "Select";
					opt.value = "0";
					 try
					  {
						 CityCombo.add(opt,null); // standards compliant
					  }
						catch(ex)
					  {
						 CityCombo.add(opt); // IE only
					  }
					for(var i=0;i<CityDataRow;i++)
					{
						CityData = tmpArr[i].split("^");
						CityID = CityData[0];
						CityName = CityData[1];
						var opt = document.createElement('option');
						opt.text = CityName;
						opt.value = CityID
						
						  try
						  {
							 CityCombo.add(opt,null); // standards compliant
						  }
							catch(ex)
						  {
							 CityCombo.add(opt); // IE only
						  }
					}
				break;
				case "RecalcAmtShip":
					var DbVals = str.split("^");
					var shipcost = DbVals[0];
					document.getElementById('tdShipping').innerHTML = "$" + eval(shipcost).toFixed(2);
					var GrandTotal = eval (document.getElementById('TotAmountPay').value) + eval(shipcost);
					document.getElementById('tdGrandTotal').innerHTML = "$" + GrandTotal.toFixed(2);
					document.getElementById('TotalCharge').value = GrandTotal.toFixed(2);
					document.getElementById('DeliveryCost').value = eval(shipcost);
				break;
		}
	}
}

function xmlHttp_Get(xmlhttp, url)
{
	xmlhttp.open('GET', url, true);
	xmlhttp.send(null);
}

function GetXmlHttpObject(handler)
{
	var objXmlHttp = null;
	if (is_ie)
	{
		var strObjName = (is_ie5) ? 'Microsoft.XMLHTTP' : 'Msxml2.XMLHTTP';
		try
		{
			objXmlHttp = new ActiveXObject(strObjName);
			objXmlHttp.onreadystatechange = handler;
		}
		catch(e)
		{
			alert('IE detected, but object could not be created. Verify that active scripting and activeX controls are enabled');
			return;
		}
	}
	else if (is_opera)
	{
		alert('Opera detected. The page may not behave as expected.');
		return;
	}
	else
	{
		objXmlHttp = new XMLHttpRequest();
		objXmlHttp.onload = handler;
		objXmlHttp.onerror = handler;
	}
	return objXmlHttp;
}

function Initialize(){var initstring = "";initstring+="<style type='text/css'>";initstring+=".body {";initstring+="font-family: Verdana, Arial, Helvetica, sans-serif;";initstring+="font-size: 12px;";initstring+="font-weight: normal;";initstring+="color: #666666;";initstring+="}";initstring+=".btn{";initstring+="font-family: Verdana, Arial, Helvetica, sans-serif;";initstring+="font-size: 11px;";initstring+="color: #FFFFFF;";initstring+="background: #839A32;";initstring+="}";initstring+="</style>";initstring+="<div id='upvs_quote_area' style='height:140;width:600;overflow:auto'>";initstring+="<table width='100%' border='0' cellspacing='0' cellpadding='0'>";initstring+="<tr>";initstring+="<td class='body' width='180'>Shipping Material Weight : </td>";initstring+="<td class='body'><input type='text' name='weight' id='weight' style='border:1px solid #000000'>&nbsp;lbs</td>";initstring+="</tr>";initstring+="<tr>";initstring+="<td class='body'>&nbsp;</td>";initstring+="<td class='body'>&nbsp;</td>";initstring+="</tr>";initstring+="<tr>";initstring+="<td class='body' width='180'>Enter your zip code : </td>";initstring+="<td><input type='text' name='destination_zip' id='destination_zip' style='border:1px solid #000000'></td>";initstring+="</tr>";initstring+="<tr> ";initstring+="<td height='30' class='body' width='180'><input type='button' name='Submit' value='GET QUOTE' class='btn' onClick='submit_quote_data();'></td>";initstring+="<td class='body'>&nbsp;</td>";initstring+="</tr>";initstring+="</table>";initstring+="</div>";document.write(initstring);}function rightTrim(strValue){var objRegExp = /^([\w\W]*)(\b\s*)$/;if(objRegExp.test(strValue)){strValue = strValue.replace(objRegExp, '$1');}return strValue;}function leftTrim(strValue){var objRegExp = /^(\s*)(\b[\w\W]*)$/;if(objRegExp.test(strValue)){strValue = strValue.replace(objRegExp, '$2');}return strValue;}function trim(strValue){var objRegExp = /^(\s*)$/;if(objRegExp.test(strValue)){strValue = strValue.replace(objRegExp, '');if( strValue.length == 0)return strValue}objRegExp = /^(\s*)([\W\w]*)(\b\s*$)/;if(objRegExp.test(strValue)){strValue = strValue.replace(objRegExp, '$2');}return strValue;}function submit_quote_data(){var objRegExp  = /(^\d{5}$)|(^\d{5}-\d{4}$)/;if(trim(document.getElementById('weight').value)=="")alert("Please enter the weight of shipping material");else if(isNaN(trim(document.getElementById('weight').value)))alert("Weight of shipping material should be numeric");else if(trim(document.getElementById('destination_zip').value)=="")alert("Please enter destination ZIP Code");else if(!objRegExp.test(trim(document.getElementById('destination_zip').value)))alert("Please enter a valid ZIP Code");else{fetch_remote_page(trim(document.getElementById('destination_zip').value), trim(document.getElementById('weight').value));		document.getElementById('upvs_quote_area').innerHTML = "<br><br><br><br>Please wait .....";	}}
