
	function makeArray(n)
	{
 		this.length=n;
  		for (var i=0; n>i; i++)
    		this[i]=0;
 		return this;
	}
	

// The following lines are generated by XSLT processor
var maxCurrency =	0;
var currencyCodes=new makeArray(0);
var currencySymbols=new makeArray(0);
var currencyCountries=new makeArray(0);
var currencyExchangeRates=new makeArray(0);



//  Function to correct for 2.x Mac date bug.  Call this function to
//  fix a date object prior to passing it to SetCookie.
//  IMPORTANT:  This function should only be called *once* for
//  any given date object!  See example at the end of this document.
function FixCookieDate (date)
{  
	var base = new Date(0);
	var skew = base.getTime(); // dawn of (Unix) time - should be 0
	if (skew > 0)  // Except on the Mac - ahead of its time
	date.setTime (date.getTime() - skew);
}

// This is used by SetCookie()
var expdate = new Date ();
FixCookieDate (expdate); // Correct for Mac date bug - call only once for given Date object!
expdate.setTime (expdate.getTime() + (183 * 24 * 60 * 60 * 1000)); // 1/2 year from now 

function getCookieVal (offset)
{
  var endstr = document.cookie.indexOf (";", offset);
  if (endstr == -1)
    endstr = document.cookie.length;
  return document.cookie.substring(offset, endstr);
}

function GetCookie (name)
{
	var arg = name + "=";
	var alen = arg.length;
	var clen = document.cookie.length;
	var i = 0;
	while (clen>i)
	{
 		var j = i + alen;
  		if (document.cookie.substring(i, j) == arg)
   			return getCookieVal (j);
 	 	i = document.cookie.indexOf(" ", i) + 1;
  		if (i == 0) break; 
	}
 	return "";
}

// will set the expire date to expdate by default
function SetCookie (name,value,expires,path,domain,secure)
{
	document.cookie = name + "=" + escape (value) +
    ((expires) ? "; expires=" + expires.toGMTString() : "; expires=" + expdate.toGMTString()) +
    ((path) ? "; path=" + path : '; path=/') +
    ((domain) ? "; domain=" + domain : '') +
    ((secure) ? "; secure" : '');
}

function getListValue(list)
{ 
	var listValue = ""; 

	if ( list.selectedIndex != -1 )
	{ 
      		listValue = list.options[ list.selectedIndex ].value; 
  	 } 

   	return( listValue ); 
} 

// returns index to the currency, returns -1 if not found
function findCurrency(currency)
{
	for (var i=0; maxCurrency>i; i++)
	{
    		if (currency==currencyCodes[i])
      			return i;
 	}
 	 if (i>=maxCurrency)
    		return -1;
}

// returns Currency Country based on Code
// returns "**Currency Code Not Found**" if code is invalid
function getCurrencyCountry(code)
{
 	var cIndex=findCurrency(code);

  	if (cIndex==-1)
   	return "**Currency Code Not Found**";

  	return currencyCountries[cIndex];
}

// returns Currency Symbol based on Code
// returns "**Currency Code Not Found**" if code is invalid
function getCurrencySymbol(code)
{
 	var cIndex=findCurrency(code);

  	if (cIndex==-1)
   	return "**Currency Code Not Found**";

  	return currencySymbols[cIndex];
}

function fmtPriceWithCommas(value)
{   
	var re  = /(-?\d+)(\d{3})/;
	var num = "";

	amount = Math.round(value*Math.pow(10,2))/Math.pow(10,2);
	amount -= 0;
	num += (amount == Math.floor(amount)) ? amount + '.00' : ( (amount*10 == Math.floor(amount*10)) ? amount + '0' : amount);

	while (re.test(num))
	{
		num = num.replace(re,"$1,$2");
	}
	return num;
}

// returns converted currency amount
// returns -999 if currency not found.
function getPrice(currency, amount)
{
	var cIndex=findCurrency(currency);

	if (cIndex==-1)
	 	return -999;

	var converted = amount * currencyExchangeRates[cIndex];

	return fmtPriceWithCommas(converted);
}

function updateCurrency(currencyCode)
{
	SetCookie("DispCurr", currencyCode);

	// forces reloading of page
	history.go(0);
}


// defines current currency code by reading cookie
var currentCurrencyCode=GetCookie("DispCurr");

if (findCurrency(currentCurrencyCode)==-1)
{
	currentCurrencyCode="";
	SetCookie("DispCurr", currentCurrencyCode);
}

// Open up the window to display approximate price idea
function popUpApproxPriceWindow()
{
	var iWidth;
	var iHeight;
	iWidth = (window.screen.width/2) - 140;
	iHeight = (window.screen.height/2) - 80;
	var win2 = window.open("","Window2","height=250,width=300,resizable=no,left=" + iWidth + ",top=" + iHeight + ",screenX=" + iWidth + ",screenY=" + iHeight + ",scrollbars=yes");
	win2.focus();
	win2.location.href = 'approxprice.htm'
}


