var Currencies = {
AUD:{desc:"Australian Dollars",sym:"$",embolden:false, cents:"."},
CAD:{desc:"Canadian Dollars",sym:"$",embolden:false, cents:"."},
CHF:{desc:"Swiss Francs",sym:"CHF",embolden:false, cents:"."},
EUR:{desc:"Euros",sym:"&#8364;",embolden:true, cents:"."},
GBP:{desc:"British Pounds",sym:"&#163;",embolden:true, cents:"."},
HKD:{desc:"Hong Kong Dollars",sym:"HK$",embolden:false, cents:"."},
JPY:{desc:"Japanese Yen",sym:"&#165;",embolden:false, cents:"."},
MXN:{desc:"Mexican Pesos",sym:"$",embolden:false, cents:"."},
NOK:{desc:"Norwegian Kroner",sym:"kr",embolden:false, cents:","},
NZD:{desc:"New Zealand Dollars",sym:"$",embolden:false, cents:"."},
PLN:{desc:"Polish Zlotych",sym:"z&#322;",embolden:false, cents:","},
SEK:{desc:"Swedish Kronor",sym:"kr",embolden:false, cents:","},
SGD:{desc:"Singapore Dollars",sym:"$",embolden:false, cents:"."},
TRY:{desc:"Turkey New Lira",sym:"YTL",embolden:false, cents:"."},
USD:{desc:"US Dollars",sym:"$",embolden:true, cents:"."}
};

function countryToCurrency(isoc2)
{
	for (var aCurrency in Currencies)
		if (isoc2==aCurrency.substr(0,2)) return (aCurrency);
	return ("EUR");
}

function currencyToSymbol(currency)
{
	return (Currencies[String(currency)].sym);
}

// Convert theNumber (Decimal) into currency format for locale
function currencyFormat(theNumber, currency, withSymbol) {

	theNumber = String(Math.round(theNumber));	// 1.00 is stored as 100
	while(theNumber.length < 3)
		theNumber = "0" + theNumber;
	
	var amtDollars = theNumber.substr(0, theNumber.length-2);
	var amtCents = theNumber.substr(theNumber.length-2);
		
	var cents = Currencies[String(currency)].cents;
	var comma = Currencies[String(currency)].cents == "." ? ",":".";
	
	var objRegExp  = new RegExp('(-?\[0-9]+)([0-9]{3})');
	while (objRegExp.test(amtDollars)) amtDollars = amtDollars.replace(objRegExp,'$1'+comma+'$2');
	return ((withSymbol ? currencyToSymbol(currency):"") + amtDollars + cents + amtCents);
}