var frExRs = new Array(); var frCrNs = new Array(); frExRs["usd"] = 1; frCrNs["usd"] = "U.S. Dollar"; frExRs["eur"] = 0.755787617408; frCrNs["eur"] = "Euro"; frExRs["gbp"] = 0.637644999406; frCrNs["gbp"] = "U.K. Pound Sterling"; frExRs["aud"] = 0.940162291747; frCrNs["aud"] = "Australian Dollar"; frExRs["cad"] = 0.998482069355; frCrNs["cad"] = "Canadian Dollar"; frExRs["jpy"] = 80.2519128317; frCrNs["jpy"] = "Japanese Yen"; frExRs["chf"] = 0.912406501673; frCrNs["chf"] = "Swiss Franc"; frExRs["dzd"] = 74.5753; frCrNs["dzd"] = "Algerian Dinar"; frExRs["ars"] = 4.7348; frCrNs["ars"] = "Argentine Peso"; frExRs["bsd"] = 1; frCrNs["bsd"] = "Bahamian Dollar"; frExRs["bwp"] = 7.27802037846; frCrNs["bwp"] = "Botswana pula"; frExRs["brl"] = 1.71654975606; frCrNs["brl"] = "Brazilian Real"; frExRs["bnd"] = 1.2587; frCrNs["bnd"] = "Brunei dollar"; frExRs["bgn"] = 1.47830687831; frCrNs["bgn"] = "Bulgarian Lev"; frExRs["xaf"] = 495.0495; frCrNs["xaf"] = "CFA Franc"; frExRs["xpf"] = 90.0901; frCrNs["xpf"] = "CFP Franc"; frExRs["clp"] = 482.76355; frCrNs["clp"] = "Chilean peso"; frExRs["cny"] = 6.29771297155; frCrNs["cny"] = "Chinese yuan"; frExRs["cop"] = 1780.0606; frCrNs["cop"] = "Colombian peso"; frExRs["hrk"] = 5.733687226; frCrNs["hrk"] = "Croatian Kuna"; frExRs["czk"] = 19.0258208554; frCrNs["czk"] = "Czech koruna"; frExRs["dkk"] = 5.62003007685; frCrNs["dkk"] = "Danish krone"; frExRs["xcd"] = 2.6903; frCrNs["xcd"] = "East Caribbean Dollar"; frExRs["fjd"] = 1.7668; frCrNs["fjd"] = "Fiji Dollar"; frExRs["ghs"] = 1.7114; frCrNs["ghs"] = "Ghanaian Cedi"; frExRs["gtq"] = 7.9177; frCrNs["gtq"] = "Guatemalan Quetzal"; frExRs["hnl"] = 19.0585; frCrNs["hnl"] = "Honduran Lempira"; frExRs["hkd"] = 7.75564258021; frCrNs["hkd"] = "Hong Kong Dollar"; frExRs["huf"] = 218.204948589; frCrNs["huf"] = "Hungarian forint"; frExRs["isk"] = 124.25585; frCrNs["isk"] = "Icelandic krona"; frExRs["inr"] = 49.1640053882; frCrNs["inr"] = "Indian rupee"; frExRs["idr"] = 9056.71652079; frCrNs["idr"] = "Indonesian rupiah"; frExRs["ils"] = 3.75468848576; frCrNs["ils"] = "Israeli new sheqel"; frExRs["jmd"] = 86.4304; frCrNs["jmd"] = "Jamaican Dollar"; frExRs["kzt"] = 148.02; frCrNs["kzt"] = "Kazakhstani tenge"; frExRs["kwd"] = 0.27775; frCrNs["kwd"] = "Kuwaiti dinar"; frExRs["lvl"] = 0.527739984883; frCrNs["lvl"] = "Latvian Lats"; frExRs["lyd"] = 1.9324; frCrNs["lyd"] = "Libyan dinar"; frExRs["ltl"] = 2.60982615268; frCrNs["ltl"] = "Lithuanian Litas"; frExRs["myr"] = 3.02725149625; frCrNs["myr"] = "Malaysian ringgit"; frExRs["mur"] = 29.0109; frCrNs["mur"] = "Mauritian rupee"; frExRs["mxn"] = 12.8208435374; frCrNs["mxn"] = "Mexican Peso"; frExRs["mad"] = 8.4175; frCrNs["mad"] = "Moroccan Dirham"; frExRs["mmk"] = 5.5096; frCrNs["mmk"] = "Myanma Kyat"; frExRs["npr"] = 78.7; frCrNs["npr"] = "Nepalese rupee"; frExRs["ang"] = 1.7501; frCrNs["ang"] = "Neth. Antillean Guilder"; frExRs["twd"] = 29.5832556891; frCrNs["twd"] = "New Taiwan Dollar "; frExRs["nzd"] = 1.20375920723; frCrNs["nzd"] = "New Zealand dollar"; frExRs["nok"] = 5.6675952003; frCrNs["nok"] = "Norwegian krone"; frExRs["omr"] = 0.3845; frCrNs["omr"] = "Omani rial"; frExRs["pkr"] = 90.833; frCrNs["pkr"] = "Pakistani rupee"; frExRs["pab"] = 1; frCrNs["pab"] = "Panamanian Balboa"; frExRs["pen"] = 2.6795; frCrNs["pen"] = "Peruvian Nuevo Sol"; frExRs["php"] = 42.6872727067; frCrNs["php"] = "Philippine Peso"; frExRs["pln"] = 3.1647372323; frCrNs["pln"] = "Polish zloty"; frExRs["qar"] = 3.64; frCrNs["qar"] = "Qatari rial"; frExRs["ron"] = 3.2945415928; frCrNs["ron"] = "Romanian New Leu"; frExRs["rub"] = 29.7522114638; frCrNs["rub"] = "Russian rouble"; frExRs["sar"] = 3.75; frCrNs["sar"] = "Saudi riyal"; frExRs["rsd"] = 82.1693; frCrNs["rsd"] = "Serbian Dinar"; frExRs["sgd"] = 1.25830317975; frCrNs["sgd"] = "Singapore dollar"; frExRs["zar"] = 7.71980129152; frCrNs["zar"] = "South African rand"; frExRs["krw"] = 1126.87483563; frCrNs["krw"] = "South Korean Won"; frExRs["lkr"] = 118.61065; frCrNs["lkr"] = "Sri Lanka rupee"; frExRs["sek"] = 6.65609409813; frCrNs["sek"] = "Swedish krona"; frExRs["thb"] = 30.5716482977; frCrNs["thb"] = "Thai baht"; frExRs["ttd"] = 6.398; frCrNs["ttd"] = "Trinidad Tobago Dollar"; frExRs["tnd"] = 1.5043; frCrNs["tnd"] = "Tunisian dinar"; frExRs["try"] = 1.7523450079; frCrNs["try"] = "Turkish Lira"; frExRs["aed"] = 3.67245195894; frCrNs["aed"] = "U.A.E Dirham"; frExRs["vef"] = 4.2924; frCrNs["vef"] = "Venezuelan Bolivar"; var frForms = new Array(); var lastData = new Array(); function frExCalc(inverseCalc) { for (var f = 0; f < frForms.length; f++) { var idx = frForms[f]; formObj = document.getElementById("frConverter" + idx); if (formObj) { // form exists and we can proceed var baseCurObj = formObj.base_currency; var targetCurObj = formObj.target_currency; var baseValueObj = formObj.base_value; var targetValueObj = formObj.target_value; if (baseCurObj && targetCurObj && baseValueObj && targetValueObj) { if (baseCurObj.type == "select-one") { var baseCurrency = baseCurObj.options[baseCurObj.selectedIndex].value.toLowerCase(); } else { var baseCurrency = baseCurObj.value; } if (targetCurObj.type == "select-one") { var targetCurrency = targetCurObj.options[targetCurObj.selectedIndex].value.toLowerCase(); } else { var targetCurrency = targetCurObj.value; } var targetExRate = frExRs[targetCurrency] / frExRs[baseCurrency]; var targetValue = targetValueObj.value; var baseValue = baseValueObj.value; if (lastData["BaseCurrency"+idx] != baseCurrency || lastData["TargetCurrency"+idx] != targetCurrency || lastData["TargetValue"+idx] != targetValue || lastData["BaseValue"+idx] != baseValue) { lastData["BaseCurrency"+idx] = baseCurrency; lastData["TargetCurrency"+idx] = targetCurrency; if (inverseCalc) { lastData["TargetValue"+idx] = targetValue; if (isNaN(targetValue)) { lastData["BaseValue"+idx] = ""; } else { lastData["BaseValue"+idx] = frFormatNumber(targetValue / targetExRate, 2, ".", ""); } baseValueObj.value = lastData["BaseValue"+idx]; } else { lastData["BaseValue"+idx] = baseValue; if (isNaN(baseValue)) { lastData["TargetValue"+idx] = ""; } else { lastData["TargetValue"+idx] = frFormatNumber(baseValue * targetExRate, 2, ".", ""); } targetValueObj.value = lastData["TargetValue"+idx]; } } } } } } function frFormatNumber(numberValue, decimals, decimalPoint, thousandsSeparator) { if (decimals == undefined) { decimals = 0; } if (thousandsSeparator == undefined) { thousandsSeparator = ","; } var numberParts = ""; var roundValue = 1; for (var d = 0; d < decimals; d++) { roundValue *= 10; } numberValue = Math.round(numberValue * roundValue) / roundValue; var numberSign = ""; if (numberValue < 0) { numberSign = "-"; numberValue = Math.abs(numberValue); } var numberText = new String(numberValue); var numberParts = numberText.split("."); var beforeDecimal = numberParts[0]; var afterDecimal = ""; numberText = ""; if (numberParts.length == 2) { afterDecimal = numberParts[1]; } while (beforeDecimal.length > 0) { if (beforeDecimal.length > 3) { numberText = thousandsSeparator + beforeDecimal.substring(beforeDecimal.length - 3, beforeDecimal.length) + numberText; beforeDecimal = beforeDecimal.substring(0, beforeDecimal.length - 3); } else { numberText = beforeDecimal + numberText; beforeDecimal = ""; } } if (decimals > 0) { while (afterDecimal.length < decimals) { afterDecimal += "0"; } if (decimalPoint == undefined) { decimalPoint = "."; } numberText += decimalPoint + afterDecimal; } numberText = numberSign + numberText; return numberText; } function frCheckData() { // check all available forms on page var formIndex = ""; var formObj = document.getElementById("frConverter"); if (formObj) { // empty form exists frForms[frForms.length] = ""; } formIndex = 1; formObj = document.getElementById("frConverter1"); while (formObj) { frForms[frForms.length] = formIndex; formIndex++; formObj = document.getElementById("frConverter" + formIndex); } //if (form[i].type == "text" || form[i].type == "hidden" || form[i].type == "select-one") { // check link first and add it if it does not exists for (var f = 0; f < frForms.length; f++) { formIndex = frForms[f]; formObj = document.getElementById("frConverter" + formIndex); var isLink = true; var linkObj = document.getElementById("frLink" + formIndex); if (!linkObj || linkObj.href != "http://www.floatrates.com/") { isLink = false; } else { var linkTitle = linkObj.innerHTML.toLowerCase(); if (linkTitle != "currency converter" && linkTitle != "exchange rates") { isLink = false; } } if (!isLink) { formObj.innerHTML = formObj.innerHTML + ("Exchange Rates"); } // populate lastData array lastData["baseCurrency"+formIndex] = ""; lastData["targetCurrency"+formIndex] = ""; lastData["baseValue"+formIndex] = ""; lastData["targetValue"+formIndex] = ""; // populate select box controls if they empty var selectedOpt = false; var totalOptions = 0; var baseCurObj = formObj.base_currency; var targetCurObj = formObj.target_currency; if (baseCurObj && baseCurObj.type == "select-one") { totalOptions = baseCurObj.options.length; if (totalOptions == 0) { var defaultBase = ""; if (formObj.default_base) { defaultBase = formObj.default_base.value; } for (var curCode in frExRs) { if (defaultBase.toLowerCase() == curCode) { selectedOpt = true; } else { selectedOpt = false; } baseCurObj.options[baseCurObj.options.length] = new Option(frCrNs[curCode], curCode); if (selectedOpt) { baseCurObj.options[baseCurObj.options.length - 1].selected = true; } } } } if (targetCurObj && targetCurObj.type == "select-one") { totalOptions = targetCurObj.options.length; if (totalOptions == 0) { var defaultTarget = ""; if (formObj.default_target) { defaultTarget = formObj.default_target.value; } for (var curCode in frExRs) { if (defaultTarget.toLowerCase() == curCode) { selectedOpt = true; } else { selectedOpt = false; } targetCurObj.options[targetCurObj.options.length] = new Option(frCrNs[curCode], curCode); if (selectedOpt) { targetCurObj.options[targetCurObj.options.length - 1].selected = true; } } } } // end populate controls } } frCheckData(); frExCalc();