PageSourceSearch

https://currencyfreaks.com/js/supported-currencies.js

js currencyfreaks.com collected 2026-10-03 22:57:44 UTC 4,837 bytes, 101 lines download raw bytes

1async function loadSupportedCurrencies(displayFlag){
2    let fiatCurrencies = [];
3    let cryptoCurrencies = [];
4    let metalCurrencies = [];
5    let depreciatedCurrencies = [];
6    let  getObjFromSession = JSON.parse(sessionStorage.getItem("currenciesObject"));
7    if (getObjFromSession !== null) {
8        if (displayFlag) {
9            await displayCurrenciesOnTable("fiat_currency_table",getObjFromSession.fiatCurrencies);
10            await displayCurrenciesOnTable("crypto_currency_table",getObjFromSession.cryptoCurrencies);
11            await displayCurrenciesOnTable("metal_currency_table", getObjFromSession.metalCurrencies);
12            await displayCurrenciesOnTable("depreciated_currency_table",getObjFromSession.depreciatedCurrencies);
13        } else {
14            await displayCount(getObjFromSession.fiatCurrencies.length ,getObjFromSession.metalCurrencies.length,getObjFromSession.cryptoCurrencies.length );
15        }
16    }else {
17        var xmlhttp = new XMLHttpRequest;
18        xmlhttp.onreadystatechange = function () {
19            if (4 === this.readyState && 200 === this.status) {
20                let response = JSON.parse(this.responseText);
21                let currencyObj = response.map((currency) => {
22                        if ((currency.countryCode === "Crypto" && currency.status === "Available") || (currency.countryCode == null && currency.status === "Available")) {
23                            cryptoCurrencies.push(currency);
24                        } else if (currency.countryCode === "Metal" && currency.status === "Available") {
25                            metalCurrencies.push(currency);
26                        }else if(currency.status === "Depreciated"){
27                            depreciatedCurrencies.push(currency)
28                        }else {
29                            fiatCurrencies.push(currency);
30                        }
31
32                        var currenciesObject = {fiatCurrencies:fiatCurrencies,cryptoCurrencies:cryptoCurrencies,metalCurrencies:metalCurrencies,depreciatedCurrencies:depreciatedCurrencies};
33
34                        sessionStorage.setItem("currenciesObject", JSON.stringify(currenciesObject));
35                    }
36                );
37                if (displayFlag) {
38                    displayCurrenciesOnTable("fiat_currency_table",fiatCurrencies);
39                    displayCurrenciesOnTable("crypto_currency_table",cryptoCurrencies);
40                    displayCurrenciesOnTable("metal_currency_table",metalCurrencies);
41                    displayCurrenciesOnTable("depreciated_currency_table",depreciatedCurrencies);
42                } else {
43                    displayCount(fiatCurrencies.length ,metalCurrencies.length,cryptoCurrencies.length )
44                }
45            }
46        };
47        xmlhttp.open("GET", "https://billing.currencyfreaks.com/currency-details", !1);
48        xmlhttp.send();
49    }
50}
51
52async function displayCurrenciesOnTable(tableId,currencies) {
53    let i;
54    let x = document.getElementsByClassName("loadingRow");
55    for (i = 0; i < x.length; i++) {
56        x[i].style.display = "none";
57    }
58    let table = document.getElementById(tableId);
59    let row;
60    for (i = currencies.length-1; i>=0;  i--) {
61        row = table.insertRow(1);
62        let icon = row.insertCell(0);
63        let code = row.insertCell(1);
64        let name = row.insertCell(2);
65        let availableFrom = row.insertCell(3);
66        let availableTill = row.insertCell(4);
67
68        code.innerHTML = currencies[i].currencyCode;
69        if (tableId === "depreciated_currency_table") {
70            name.innerHTML = currencies[i].currencyName;
71        } else {
72            name.innerHTML = "<a href='/available-rates/" + currencies[i].currencyCode + "'>" + currencies[i].currencyName + "</a>";
73        }
74        availableFrom.innerHTML = currencies[i].availableFrom;
75        if (currencies[i].availableUntil) {
76            availableTill.innerHTML = currencies[i].availableUntil;
77        } else {
78            availableTill.innerHTML = new Date().toLocaleDateString("en-CA",{timeZone:"UTC"});
79        }
80
81        var iconImg = document.createElement("img");
82        iconImg.src = currencies[i].icon;
83        iconImg.alt = "flag";
84        iconImg.height = "50";
85        iconImg.width = "50";
86        icon.appendChild(iconImg);
87    }
88}
89
90async function displayCount(fiatCount, metalCount, cryptoCount) {
91    let totalCount = fiatCount + metalCount + cryptoCount;
92
93    document.querySelectorAll(".total-count").forEach(element => {
94        element.innerHTML = totalCount;
95    });
96    if (document.querySelector(".fiat-count")!= null) {
97        document.querySelector(".fiat-count").innerHTML = fiatCount;
98        document.querySelector(".metals-count").innerHTML = metalCount;
99        document.querySelector(".crypto-count").innerHTML = cryptoCount;
100    }
101}

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.