if(glob === undefined)var glob = new Array(); glob["debug"] = 1; var selectedAccountSol = ''; glob["btn_action"] = new Array(); glob["nick"] = new Array(); glob["balance"] = new Array(); glob["modal_hartbeat"] = 0; glob["page_hartbeat"] = 0; glob["page_hartbeat_china"] = 0; glob["access_balance"] = new Array(); glob["tarif_addr_list"] = new Array(); glob["tarif_addr_list2"] = new Array(); glob["tarif_addr_list2"]["matic"] = new Array(); glob["tarif_addr_list2"]["bsc"] = new Array(); glob["tarif_addr_list2"]["eth"] = new Array(); glob["until_12_2"] = 1727740800; glob["circle_net"] = "matic"; glob["circle_net"] = "eth"; glob["gov_net"] = "matic"; glob["governance"] = new Array(); glob["factory3_net"] = "eth"; glob["ah_ref_addr"] = glob["default_wallet"]; var chainId = 0; var signer2; var provider; var ethereumClient; var WagmiCore; glob["api-dap"] = "https://api-dap.airdrop-hunter.site/"; const NETWORK_PARAMS = { "0x38": { chainId: "0x38", chainName: "BNB Smart Chain Mainnet", rpcUrls: ['https://bsc.publicnode.com'], nativeCurrency: {name: 'BNB', symbol: 'BNB', decimals: 18}, }, "0x89": { chainId: "0x89", chainName: "Polygon Mainnet", rpcUrls: ['https://polygon-rpc.com'], nativeCurrency: {name: 'MATIC', symbol: 'MATIC', decimals: 18}, }, "0xa4b1": { chainId: "0xa4b1", chainName: "Arbitrum One", rpcUrls: ['https://arbitrum-one.publicnode.com'], nativeCurrency: {name: 'ETH', symbol: 'ETH', decimals: 18}, }, "0xa4ba": { chainId: "0xa4ba", chainName: "Arbitrum Nova", rpcUrls: ['https://arbitrum-nova.publicnode.com'], nativeCurrency: {name: 'ETH', symbol: 'ETH', decimals: 18}, }, "0xa86a": { chainId: "0xa86a", chainName: "Avalanche C-Chain", rpcUrls: ['https://avalanche-c-chain.publicnode.com'], nativeCurrency: {name: 'AVAX', symbol: 'AVAX', decimals: 18}, }, "0xa": { chainId: "0xa", chainName: "OP Mainnet", rpcUrls: ['https://optimism.publicnode.com'], nativeCurrency: {name: 'ETH', symbol: 'ETH', decimals: 18}, }, "0x44d": { chainId: "0x44d", chainName: "Polygon zkEVM", rpcUrls: ['https://zkevm-rpc.com'], nativeCurrency: {name: 'ETH', symbol: 'ETH', decimals: 18}, }, "0x144": { chainId: "0x144", chainName: "zkSync Era Mainnet", rpcUrls: ['https://mainnet.era.zksync.io'], nativeCurrency: {name: 'ETH', symbol: 'ETH', decimals: 18}, }, }; function loader_hide() { var x = document.getElementById("ah_loader"); if(x !== null) { x.remove(); } } setTimeout(loader_hide,3000); glob["retweet_id"] = ""; function is_mobile_device() { const userAgent = navigator.userAgent || navigator.vendor || window.opera; return /android|webos|iphone|ipad|ipod|blackberry|iemobile|opera mini/i.test(userAgent.toLowerCase()); } function log(txt) { if(glob["debug"] || glob["prod"]) { } } var selectedAccount = ""; var web3modal; async function set_web3modal(v) { web3modal = v; } function init() { console.log("init"); } async function fetchAccountData(prov) { console.log("fetchAccountData"); switch(prov) { case "metamask": break; } } async function refreshAccountData() { console.log("refreshAccountData"); } async function onConnect(onload=false) { var prov_last = localStorage.getItem("web3_prov"); var last = get_cookie("selectedAccount"); log("onConnect"); if(selectedAccount !== "" && selectedAccount !== undefined) { auth_on_off(1); } else { log("Cached address: "+last); if(last != "") { log("PROV: "+prov_last); switch(prov_last) { case "metamask": connectMetaMask(); break; case "okx": connectOkxWallet(); break; case "c98": connectCoin98Wallet(); break; case "trustwallet": connectTrustWallet(); break; case "wallet_connect_v2": if (!onload) { localStorage.removeItem("wc@2:core:0.3//messages"); localStorage.removeItem("wc@2:core:0.3//history"); web3modal.openModal(); } break; default: open_modal_connect(); } } else log("last selectedAccount has value: "+last); auth_on_off(0); } } async function onDisconnect() { console.log("onDisconnect"); mm_page_body("-----"); on_success_disconnect(); localStorage.setItem("web3_prov",""); auth_on_off(0); glob["onConnected"] = 0; try { await WagmiCore.disconnect(); } catch (e) { console.warn("Disconnect error:", e); } localStorage.removeItem("wagmi.store"); if (window.ethereum && window.ethereum.request) { try { await window.ethereum.request({ method: "wallet_revokePermissions", params: [{ eth_accounts: {} }] }); } catch(e){}; } set_cookie("selectedAccount",""); return false; } async function change_chain(c) { log("change_chain"); var v = 0; var name = ""; var logo_name = ""; switch(c) { case "bsc": v = "0x38"; name = "BSC"; logo_name = "bsc.svg"; break; case "eth": v = "0x1"; name = "Ethereum Mainnet"; logo_name = "eth.svg"; break; case "matic": v = "0x89"; name = "Polygon Mainnet"; logo_name = "polygon.svg"; break; case "fork": v = "0x7A69"; name = "Custom Fork"; logo_name = "eth.svg"; break; case "mumbai": v = "0x13881"; name = "Polygon Mumbai"; logo_name = "polygon.svg"; break; case "goerli": v = "0x5"; name = "Ethereum Goerli"; logo_name = "goerli.svg"; break; case "arbitrum": v = "0xa4b1"; name = "Arbitrum"; logo_name = "arbitrum-logo.svg"; break; case "arbitrum_nova": v = "0xa4ba"; name = "Arbitrum Nova"; logo_name = "arbitrum-nova-logo.png"; break; case "avalanche": v = "0xa86a"; name = "Avalanche"; logo_name = "avax.svg"; break; case "optimism": v = "0xa"; name = "Optimism Mainnet"; logo_name = "optimism.svg"; break; case "polygon_zkevm": v = "0x44d"; name = "Polygon zkEVM"; logo_name = "polygon-zkevm-logo.png"; break; case "zksync": v = "0x144"; name = "zkSync Era Mainnet"; logo_name = "zksync_arrow3.png"; break; case "mintchain": v = "0xb9"; name = "Mint Mainnet"; logo_name = "zksync_arrow3.png"; break; } var prov_now = get_web3_prov(); var prov_type1 = prov_type(prov_now); switch(prov_type1) { case "wc": web3modal.openModal({route: 'SelectNetwork'}); break; default: try { await ethereum.request({ method: 'wallet_switchEthereumChain', params: [{ chainId: v }], }); } catch (error) { if (error.code == 4902 || error.code == -32603) { await ethereum.request({ method: 'wallet_addEthereumChain', params: [NETWORK_PARAMS[v]], }); } } } return false; } var web3mas = new Array(); web3mas["matic"] = new Web3("https://rpc.airdrop-hunter.site/polygon"); web3mas["bsc"] = new Web3("https://rpc.airdrop-hunter.site/bsc"); web3mas["arbitrum"] = new Web3("https://rpc.airdrop-hunter.site/arbitrum"); web3mas["eth"] = new Web3("https://rpc.airdrop-hunter.site/eth"); web3mas["fork"] = new Web3("https://rpc.airdrop-hunter.site/fork"); web3mas["mintchain"] = new Web3("https://rpc.mintchain.io"); function explorer_url(name) { var explorer = ''; switch(name) { case "eth": explorer = 'https://etherscan.io/'; break; case "bsc": explorer = 'https://bscscan.com/'; break; case "matic": explorer = 'https://polygonscan.com/'; break; case "mumbai": explorer = 'https://mumbai.polygonscan.com/'; break; default: explorer = 'https://polygonscan.com/tx/'; } return explorer; } glob["screenshot"] = ""; function screenshots() { const screenshotTarget = document.body; var a = html2canvas(screenshotTarget); console.log(a); } function pushScreenshotToServer(dataURL) { $.ajax({ url: glob["api-dap"]+"support/", type: "POST", data: { image: dataURL }, dataType: "html", success: function() { console.log('Screenshot pushed to server.'); } }); } hotkeys('alt+s', function(event, handler) { console.log("ALT + s pressed"); support_click(); }); hotkeys('alt+r', function(event, handler) { console.log("ALT + r pressed"); location.href = "/"; }); function connect_wal() { console.log("connect_wal clicked"); onConnect(); return false; } async function sign_msg() { const exampleMessage = 'Example `personal_sign` message.'; try { const from = selectedAccount; const msg = " "+from; const sign = await ethereum.request({ method: 'personal_sign', params: [msg, from, 'Example password'], }); console.log(sign); console.log("'"+msg+"'"); } catch (err) { console.error(err); } } function auth_on_off(on) { var i; var x = document.getElementsByClassName("auth_off"); l = x.length; if(l>0) for(i=0;i < l;i++) { if(on) x[i].classList.remove("d-none"); else x[i].classList.add("d-none"); } var x = document.getElementsByClassName("auth_on"); l = x.length; if(l>0) for(i=0;i < l;i++) { if(on) x[i].classList.add("d-none"); else x[i].classList.remove("d-none"); } } function sol_auth_on_off(on) { var i; var x = document.getElementsByClassName("solauth_off"); l = x.length; if(l>0) for(i=0;i < l;i++) { if(on) x[i].classList.remove("d-none"); else x[i].classList.add("d-none"); } var x = document.getElementsByClassName("solauth_on"); l = x.length; if(l>0) for(i=0;i < l;i++) { if(on) x[i].classList.add("d-none"); else x[i].classList.remove("d-none"); } } $( document ).ready(function() { init(); loader_hide(); var t = get_cookie("selectedAccount"); if(t != undefined && t.length==42) onConnect(true); check_extension_installed(); check_utm(); }); function getData(requestURL,func) { const xhr = new XMLHttpRequest(); xhr.open('GET', requestURL); xhr.onload = () => { if (xhr.status !== 200) { return; } eval(func); }; xhr.send(); } function wallet_id_set(wal) { var x = ''; var y = ''; var l = 0; var w = wal_3dot(wal); log("WALLET_id_SET: '"+w+"'"); x = document.getElementsByClassName('wallet-id'); l = x.length; for(i = 0;i < l;i++) { y = x[i]; y.innerHTML = w; } x = document.getElementsByClassName('wallet-id-full'); l = x.length; for(i = 0;i < l;i++) { y = x[i]; y.innerHTML = wal; } } function wal_3dot(wal) { var t = ''; if(wal === undefined)return; if(wal.length > 2) { t = wal.substring(0,5); t += '...'; t += wal.substring(38); } return t; } function ajax_get_data(requestURL,func) { const xhr = new XMLHttpRequest(); xhr.open('GET', requestURL); xhr.onload = () => { if (xhr.status !== 200) { return; }; eval(func); }; xhr.send(); } async function ajax_get_data2(requestURL, func) { return new Promise((resolve, reject) => { const xhr = new XMLHttpRequest(); xhr.open('GET', requestURL); xhr.onload = () => { if (xhr.status !== 200) { reject(xhr.status); return; } eval(func); resolve(xhr.response); }; xhr.onerror = () => reject('network error'); xhr.send(); }); } function ajax_post_data(requestURL,params,func) { const xhr = new XMLHttpRequest(); xhr.open('POST', requestURL); xhr.onload = () => { if (xhr.status !== 200) { return; }; eval(func); }; xhr.send(params); } function ajax_post_json(requestURL,params,func) { const xhr = new XMLHttpRequest(); xhr.open('POST', requestURL); xhr.setRequestHeader('Content-Type', 'application/json'); xhr.onload = () => { if (xhr.status !== 200) { return; }; eval(func); }; xhr.send(params); } function getCurrentTimestamp() { return Date.now() } function unixtime() { return Date.now(); } function utime_to_localtime(t) { t *= 1000; dateObject = new Date(t); humanDateFormat = dateObject.toLocaleString(); return humanDateFormat; } function utime_to_localdata(t) { t *= 1000; const date = new Date(t); const year = date.getFullYear(); const month = String(date.getMonth() + 1).padStart(2, '0'); const day = String(date.getDate()).padStart(2, '0'); return `${year}-${month}-${day}`; } function set_by_class_name(n,v) { var x; var l; var y; l = 0; if(n) { x = document.getElementsByClassName(n); l = x.length; } if(l) { for(i=0;i < l;i++) { y = x[i]; if(y.innerHTML != v) y.innerHTML = v; } } } setInterval(get_version,10000); function get_version() { getData("/version/","check_version(xhr.response)"); } function check_version(data) { if(data != glob["site_version"]) { console.log("Reload page. Version "+data); window.location.reload(); } } setInterval(get_update_time,60000); function get_update_time() { getData("/update_time/","check_update_time(xhr.response)"); } function check_update_time(data) { if(data != glob["update_time"]) { console.log("Reload page. update_time "+data); window.location.reload(); } } function get_function_name(ownName) { ownName = ownName.replace("async function ",""); ownName = ownName.replace("function ",""); ownName = ownName.substr(0, ownName.indexOf('(')); return ownName; } try { if (typeof window.buffer !== 'undefined' && typeof window.buffer.Buffer !== 'undefined') { window.Buffer = window.buffer.Buffer; } else { console.error('Error: buffer not exists.'); } } catch (error) { console.error('Error init buffer:', error); } function check_utm() { const urlParams = new URLSearchParams(window.location.search); const utm = {}; var t; urlParams.forEach((value, key) => { if (key.toLowerCase().startsWith('utm_')) { utm[key] = value; } }); if (Object.keys(utm).length > 0) { var url = glob["api-dap"]+"mm_utm/"; utm.utime = unixtime(); utm.url = window.location.href; utm.domen = glob["domen"]; utm.sess = get_cookie("PHPSESSID"); utm.wal = get_cookie("selectedAccount"); utm.item = glob["item"]; if(glob["item2"]) utm.item2 = glob["item2"]; t = JSON.stringify(utm); t = btoa(t); url += "?"+t; ajax_get_data(url,"utm_send_res(xhr.response);"); } else { } } function utm_send_res(r) { var data = JSON.parse(r); } function modal_mm_lvl_click(e) { var i; var x; var y; var lvl; var t; var v = 0; lvl = e.dataset.lvl; for(i=1;i<8;i++) { x = document.getElementById("modal_mm_lvl_"+i); y = document.getElementById("modal_lvl_info_"+i); if(i == lvl) { if (x.classList.contains('btn-secondary')) { x.classList.remove('btn-secondary'); } if (!x.classList.contains('btn-primary')) { x.classList.add('btn-primary'); } if (!x.classList.contains('btn-lvl-selected')) { x.classList.add('btn-lvl-selected'); } if (y.classList.contains('d-none')) { y.classList.remove('d-none'); } } else { if (!x.classList.contains('btn-secondary')) { x.classList.add('btn-secondary'); } if (x.classList.contains('btn-primary')) { x.classList.remove('btn-primary'); } if (x.classList.contains('btn-lvl-selected')) { x.classList.remove('btn-lvl-selected'); } if (!y.classList.contains('d-none')) { y.classList.add('d-none'); } } } lvl = modal_mm_lvl_get(); console.log("now level: "+lvl); x = document.getElementById("modal_mm_cost"); switch(lvl+"") { case "1": v = 3; break; case "2": v = 10; break; case "3": v = 160; break; case "4": v = 320; break; case "5": v = 700; break; case "6": v = 6000; break; case "7": v = 35000; break; } x.innerHTML = v; glob["func_modal_mm_plus_contract_info"] = 0; } function modal_mm_lvl_get() { var lvl; var i; var x; for(i=1;i<8;i++) { x = document.getElementById("modal_mm_lvl_"+i); if (x.classList.contains('btn-lvl-selected')) return i; } } function mm_qty_set(v) { var x = document.getElementById('mm_qty'); x.value = v; x.focus(); glob["func_modal_mm_plus_contract_info"] = 0; } function mm_qty_change() { var x = document.getElementById("mm_qty"); var v = x.value; glob["func_modal_mm_plus_contract_info"] = 0; } function get_mm_stat() { if(!glob["item"] || glob["item"] != "mm")return false; if(!glob["api-dap"])return false; var url = glob["api-dap"]+"mm_stat"; ajax_get_data(url,"set_mm_stat(xhr.response);"); } function set_mm_stat(r) { try { var v; var k; var x; var y; var z; var l; var i; var data = JSON.parse(r); if(!data || !data.result) { return; } for (k in data.result) { v = data.result[k]; x = document.getElementById(k); if(x !== undefined) { y = x.innerHTML; if(v != y) { x.innerHTML = v; x.className = "box-value value-changed"; setTimeout(value_set_nonchanged,500,k); } } y = document.getElementsByClassName(k); l = y.length; if(l) { for(i=0;i < l;i++) { x = y[i]; z = x.innerHTML; if(v != z) { x.innerHTML = v; } } } } } catch(e) { console.error("set_mm_stat error:", e); } } get_mm_stat(); setInterval(get_mm_stat,3000); function value_set_nonchanged(id) { var x = document.getElementById(id); x.className = "box-value"; } function mm_sale_toggle_icon(btn) { var icon = btn.querySelector('.mm_sale_icon'); if(!icon) { return; } var targetId = btn.getAttribute('data-bs-target'); var targetElement = document.querySelector(targetId); if(!targetElement) { return; } setTimeout(function() { var hasShow = targetElement.classList.contains('show'); if(hasShow) { icon.classList.remove('fa-chevron-down'); icon.classList.add('fa-chevron-up'); } else { icon.classList.remove('fa-chevron-up'); icon.classList.add('fa-chevron-down'); } }, 150); } function mm_sale_get_boost_tooltip(lvl) { var levelNames = { 1: "L1 Origin", 2: "L2 Frontier", 3: "L3 Sylvana", 4: "L4 Oceania", 5: "L5 Denalia", 6: "L6 Titana", 7: "L7 Utopia" }; var currentLevel = parseInt(lvl) || 1; var nextLevel = currentLevel + 1; var nextLevelName = levelNames[nextLevel] || ("L" + nextLevel); return "Boost to " + nextLevelName + " coming soon"; } function mm_sale_get_getpk_tooltip() { return "Wallet on progress. You will receive a message in the top right corner about the possibility to copy the private key and seed phrase"; } function get_mm_sale() { console.log("get_mm_sale"); if(!glob["item"] || glob["item"] != "mm")return false; if(!glob["api-dap"])return false; var url = glob["api-dap"]+"mm_sale"; var o = new Object(); var t; o.time = unixtime(); o.wal = get_cookie("selectedAccount"); o.rand = Math.random(); params = JSON.stringify(o); params = btoa(params); ajax_post_data(url,params,"set_mm_sale(xhr.response);"); } function set_mm_sale(r) { var x_id = "mm_sale_data"; var clas = ""; var t; try { var data = JSON.parse(r); if(!data || !data.result) { return; } var txt = ""; var x = document.getElementById('mm_sale_data'); if(!x) { return; } var levelNames = { 1: "L1 Origin", 2: "L2 Frontier", 3: "L3 Sylvana", 4: "L4 Oceania", 5: "L5 Denalia", 6: "L6 Titana", 7: "L7 Utopia" }; var mineItemsArray = []; if(data.result.mine) { var mineData = data.result.mine; if(typeof mineData === "object" && mineData) { for(var itemId in mineData) { if(mineData.hasOwnProperty(itemId)) { mineItemsArray.push(mineData[itemId]); } } } } var mineCollapseId = "mm_sale_collapse_mine"; txt += "
"; txt += "
"; txt += "My wallets (" + mineItemsArray.length + ")"; txt += ""; txt += "
"; if(mineItemsArray.length > 0) { txt += "
"; txt += "
"; txt += "
"; txt += ""; txt += ""; txt += ""; txt += ""; txt += ""; txt += ""; txt += ""; txt += ""; txt += ""; txt += ""; txt += ""; txt += ""; txt += ""; txt += ""; for(var i = 0; i < mineItemsArray.length; i++) { var item = mineItemsArray[i]; var num = (i + 1); var date = item.utime ? utime_to_localtime(item.utime) : (item.time || "-"); var address = item.wal || "-"; var code = item.mm_code || "-"; var code2 = item.mm_code2 || "-"; var points = item.points || "0"; var owner = item.owner || "-"; var level = item.level || "-"; var isMy = item.my === true || item.my === 1 || item.my === "1"; txt += ""; txt += ""; txt += ""; txt += ""; txt += ""; txt += ""; txt += ""; txt += ""; txt += ""; txt += ""; } txt += ""; txt += "
#DateAddressLeader CodePointsMM codeLevelAction
" + num + "" + date + ""; if(address && address !== "-" && address.startsWith("0x")) { txt += address + " "; } else { txt += address; } txt += "" + code + "" + points + "" + code2 + "" + level + ""; if(isMy) { var boostTooltip = mm_sale_get_boost_tooltip(level); var escapedBoostTooltip = String(boostTooltip).replace(/'/g, "'").replace(/"/g, """); var getpkTooltip = mm_sale_get_getpk_tooltip(); var escapedGetpkTooltip = String(getpkTooltip).replace(/'/g, "'").replace(/"/g, """); escapedGetpkTooltip = "Click for get Wallet Private Key and Seed"; txt += " "; txt += ""; } else { txt += ""; } txt += "
"; txt += "
"; txt += "
"; for(var i = 0; i < mineItemsArray.length; i++) { var item = mineItemsArray[i]; var num = (i + 1); var date = item.utime ? utime_to_localtime(item.utime) : (item.time || "-"); var address = item.wal || "-"; var code = item.mm_code || "-"; var code2 = item.mm_code2 || "-"; var points = item.points || "0"; var owner = item.owner || "-"; var level = item.level || "-"; var isMy = item.my === true || item.my === 1 || item.my === "1"; txt += "
"; txt += "
"; txt += "
"; txt += "
"; txt += "
# " + num + "
"; txt += "
" + date + "
"; txt += "
"; txt += "
"; txt += "
"; txt += "
Address: "; if(address && address !== "-" && address.startsWith("0x")) { txt += "" + address + " "; } else { txt += address; } txt += "
"; txt += "
"; txt += "
"; txt += "
"; txt += "
"; txt += "
Leader Code: " + code + "
"; txt += "
"; txt += "
"; txt += "
"; txt += "
"; txt += "
Points: " + points + "
"; txt += "
"; txt += "
"; txt += "
"; txt += "
"; txt += "
MM code: " + code2 + "
"; txt += "
"; txt += "
"; txt += "
"; txt += "
Level: " + level + "
"; txt += "
"; txt += "
"; txt += "
"; if(isMy) { var boostTooltip = mm_sale_get_boost_tooltip(level); var escapedBoostTooltip = String(boostTooltip).replace(/'/g, "'").replace(/"/g, """); var getpkTooltip = mm_sale_get_getpk_tooltip(); var escapedGetpkTooltip = String(getpkTooltip).replace(/'/g, "'").replace(/"/g, """); escapedGetpkTooltip = "Click for get Wallet Private Key and Seed"; txt += " "; txt += ""; } else { txt += ""; } txt += "
"; txt += "
"; txt += "
"; txt += "
"; txt += "
"; } txt += "
"; } else { txt += "
"; txt += "
"; txt += "

You don't have wallets yet

"; clas = ""; if(selectedAccount)clas = "d-none"; txt += "
"; txt += ""; txt += "
"; clas = ""; if(!selectedAccount)clas = "d-none"; txt += "
"; txt += ""; txt += "
"; txt += "
"; txt += "
"; } txt += "
"; for(var level in data.result) { if(!data.result.hasOwnProperty(level) || level === "mine") { continue; } var levelData = data.result[level]; if(typeof levelData !== "object" || !levelData) { continue; } var levelName = levelNames[level] || "Level " + level; var itemsArray = []; for(var itemId in levelData) { if(levelData.hasOwnProperty(itemId)) { itemsArray.push(levelData[itemId]); } } if(itemsArray.length === 0) { continue; } var collapseId = "mm_sale_collapse_" + level; txt += "
"; txt += "
"; txt += "" + levelName + " - Wallets for Sale (" + itemsArray.length + ")"; txt += ""; txt += "
"; txt += "
"; txt += "
"; txt += "
"; txt += ""; txt += ""; txt += ""; txt += ""; txt += ""; txt += ""; txt += ""; txt += ""; txt += ""; txt += ""; txt += ""; txt += ""; txt += ""; txt += ""; for(var i = 0; i < itemsArray.length; i++) { var item = itemsArray[i]; var num = (i + 1); var date = item.utime ? utime_to_localtime(item.utime) : (item.time || "-"); var address = item.wal || "-"; var code = item.mm_code || "-"; var points = item.points || "0"; var owner = item.owner || "-"; var isMy = item.my === true || item.my === 1 || item.my === "1"; txt += ""; txt += ""; txt += ""; txt += ""; txt += ""; txt += ""; txt += ""; txt += ""; txt += ""; txt += ""; } txt += ""; txt += "
#DateAddressOwnerLeader CodePointsLevelAction
" + num + "" + date + "" + address + "" + owner + "" + code + "" + points + "" + level + ""; if(isMy) { var boostTooltip = mm_sale_get_boost_tooltip(level); var escapedBoostTooltip = String(boostTooltip).replace(/'/g, "'").replace(/"/g, """); var getpkTooltip = mm_sale_get_getpk_tooltip(); var escapedGetpkTooltip = String(getpkTooltip).replace(/'/g, "'").replace(/"/g, """); txt += " "; txt += ""; } else { txt += ""; } txt += "
"; txt += "
"; txt += "
"; txt += "
"; for(var i = 0; i < itemsArray.length; i++) { var item = itemsArray[i]; var num = (i + 1); var date = item.utime ? utime_to_localtime(item.utime) : (item.time || "-"); var address = item.wal || "-"; var code = item.mm_code || "-"; var points = item.points || "0"; var owner = item.owner || "-"; var isMy = item.my === true || item.my === 1 || item.my === "1"; txt += "
"; txt += "
"; txt += "
"; txt += "
"; txt += "
# " + num + "
"; txt += "
" + date + "
"; txt += "
"; txt += "
"; txt += "
"; txt += "
wallet:
"; txt += "
" + address + "
"; txt += "
"; txt += "
"; txt += "
points:
"; txt += "
" + points + "
"; txt += "
"; txt += "
"; txt += "
"; txt += "
Owner: " + owner + "
"; txt += "
"; txt += "
"; txt += "
Leader Code: " + code + "
"; txt += "
"; txt += "
"; txt += "
Level: " + level + "
"; txt += "
"; txt += "
"; txt += "
"; if(isMy) { var boostTooltip = mm_sale_get_boost_tooltip(level); var escapedBoostTooltip = String(boostTooltip).replace(/'/g, "'").replace(/"/g, """); var getpkTooltip = mm_sale_get_getpk_tooltip(); var escapedGetpkTooltip = String(getpkTooltip).replace(/'/g, "'").replace(/"/g, """); txt += " "; txt += ""; } else { txt += ""; } txt += "
"; txt += "
"; txt += "
"; txt += "
"; txt += "
"; } txt += "
"; txt += "
"; txt += "
"; } x.innerHTML = txt; mm_page_body(x_id); x.scrollIntoView({behavior: 'smooth',block: 'start'}); var tooltipTriggerList = [].slice.call(document.querySelectorAll('#mm_sale_data .mm_sale_btn_boost[data-bs-toggle="tooltip"], #mm_sale_data .mm_sale_btn_getpk[data-bs-toggle="tooltip"]')); tooltipTriggerList.map(function (tooltipTriggerEl) { return new bootstrap.Tooltip(tooltipTriggerEl); }); } catch(e) { console.error("set_mm_sale error:", e); } } get_mm_sale(); function leader_list(res) { console.log("leader_list"); var txt = ""; txt += leader_list_create(res); var x = document.getElementById("mm_leader_list"); x.innerHTML = txt; var tooltipTriggerList = [].slice.call(document.querySelectorAll('#mm_leader_list .mm_leader_btn_claim[data-bs-toggle="tooltip"]')); var tooltipList = tooltipTriggerList.map(function (tooltipTriggerEl) { return new bootstrap.Tooltip(tooltipTriggerEl); }); } function leader_list_create(res) { var txt = ""; try { if(!res) { console.log("leader_list_create: res is empty"); return ""; } var dataArray = null; if(res.out && Array.isArray(res.out)) { dataArray = res.out; } else if(Array.isArray(res)) { dataArray = res; } if(!dataArray || dataArray.length === 0) { console.log("leader_list_create: dataArray is empty"); return ""; } for(var i = 0; i < dataArray.length; i++) { var item = dataArray[i]; if(!item || !item.owner) { continue; } var owner = item.owner || "-"; var ownerShort = owner; if(owner && owner.length > 10 && owner.startsWith("0x")) { ownerShort = owner.substring(0, 6) + "..." + owner.substring(owner.length - 4); } var ah_code = item.ah_code || "-"; var uniq = item.uniq ? item.uniq.toString() : "0"; var qty = item.qty ? item.qty.toString() : "0"; var amount = item.amount ? item.amount.toString() : "0"; var unlocked = item.unlocked ? item.unlocked.toString() : "0"; var claimed = item.claimed ? item.claimed.toString() : "0"; var isMy = (selectedAccount && owner.toLowerCase() === selectedAccount.toLowerCase()); var ah_code_url = ""; if(ah_code !== "-" && glob["url"]) { ah_code_url = glob["url"] + "mm/" + ah_code; } txt += "
"; txt += "
"; txt += "
"; txt += "
"; txt += "
"; txt += "Leader: "; txt += "" + ownerShort + ""; txt += " AH Code: "; txt += ""; if(ah_code_url) { txt += "" + ah_code + ""; } else { txt += ah_code; } txt += ""; txt += "
"; txt += "
"; txt += "
"; txt += "
"; txt += "
" + uniq + "
"; txt += "
Unique
"; txt += "
"; txt += "
"; txt += "
" + qty + "
"; txt += "
Txs
"; txt += "
"; txt += "
"; txt += "
" + amount + "
"; txt += "
Reward
"; txt += "
"; txt += "
"; txt += "
" + unlocked + "
"; txt += "
Unlocked
"; txt += "
"; txt += "
"; txt += "
" + claimed + "
"; txt += "
Claimed
"; txt += "
"; txt += "
"; if(isMy) { txt += ""; } txt += "
"; txt += "
"; txt += "
"; txt += "
"; txt += "
"; txt += "
"; txt += "
"; txt += "Leader: "; txt += "" + ownerShort + ""; txt += " AH Code: "; txt += ""; if(ah_code_url) { txt += "" + ah_code + ""; } else { txt += ah_code; } txt += ""; txt += "
"; txt += "
"; txt += "
"; txt += "
"; txt += "
" + uniq + "
"; txt += "
Unique
"; txt += "
"; txt += "
"; txt += "
" + qty + "
"; txt += "
Txs
"; txt += "
"; txt += "
"; txt += "
" + amount + "
"; txt += "
Reward
"; txt += "
"; txt += "
"; txt += "
"; txt += "
"; txt += "
" + unlocked + "
"; txt += "
Unlocked
"; txt += "
"; txt += "
"; txt += "
" + claimed + "
"; txt += "
Claimed
"; txt += "
"; txt += "
"; if(isMy) { txt += "
"; txt += "
"; txt += ""; txt += "
"; txt += "
"; } txt += "
"; txt += "
"; txt += "
"; txt += "
"; } txt = "
" + txt + "
"; } catch(e) { console.error("leader_list_create error:", e); } return txt; } function mm_msg() { var o = new Object(); var t; o.time = unixtime(); o.wal = get_cookie("selectedAccount"); if(!o.wal)return false; o.rand = Math.random(); var params = JSON.stringify(o); params = btoa(params); if(!glob["api-dap"])return false; var url = glob["api-dap"]+"mm_msg"; ajax_post_data(url,params,"set_mm_msg(xhr.response);"); } function set_mm_msg(r) { var data = JSON.parse(r); var notificationArrival = document.querySelector(".notification__arrival"); if(!notificationArrival) { return; } var count = data.result || 0; if(count > 0) { notificationArrival.textContent = count; notificationArrival.style.display = "flex"; } else { notificationArrival.style.display = "none"; } } mm_msg(); setInterval(mm_msg,3000); function msg_click() { if(!glob["api-dap"])return false; var url = glob["api-dap"]+"mm_msg_list"; var o = new Object(); var t; o.time = unixtime(); o.wal = get_cookie("selectedAccount"); o.type = "all"; o.rand = Math.random(); params = JSON.stringify(o); params = btoa(params); ajax_post_data(url,params,"set_mm_msg_list(xhr.response);"); } function set_mm_msg_list(r) { var txt = ""; var x_id = "mm_msg_list"; var x = document.getElementById(x_id); if(!x) { return; } try { var data = JSON.parse(r); var itemsArray = []; var qty = 0; var filters = {}; var sortData = {}; var currentFilter = null; if(data && data.result) { if(data.result.data) { if(Array.isArray(data.result.data)) { itemsArray = data.result.data; } else if(typeof data.result.data === 'object') { for(var key in data.result.data) { if(data.result.data.hasOwnProperty(key)) { itemsArray.push(data.result.data[key]); } } } } qty = data.result.qty || itemsArray.length; if(data.result.filters) { filters = data.result.filters; } if(data.result.sort) { sortData = data.result.sort; } } else { console.error("NO DATA OR NO RESULT!"); console.error("data:", data); } txt += "
"; txt += "
"; txt += "My messages (" + qty + ")"; txt += "
"; if(Object.keys(filters).length > 0) { txt += "
"; for(var filterKey in filters) { if(filters.hasOwnProperty(filterKey)) { var filterValue = filters[filterKey]; var escapedKey = String(filterKey).replace(/'/g, "\\'").replace(/"/g, """); txt += ""; } } txt += "
"; } if(itemsArray.length === 0) { txt += "
"; txt += "

You don't have messages yet

"; var clas = ""; if(selectedAccount)clas = "d-none"; txt += "
"; txt += ""; txt += "
"; clas = ""; if(!selectedAccount)clas = "d-none"; txt += "
"; txt += ""; txt += "
"; txt += "
"; } else { for(var i = 0; i < itemsArray.length; i++) { var item = itemsArray[i]; var num = item.nn || (i + 1); var id = item.id || "-"; var theme = item.subj || "-"; var time = item.utime ? utime_to_localtime(item.utime) : "-"; var text = item.body || "-"; var link = item.link || ""; var msgKey = item.key || item.filter_key || null; txt += "
"; txt += "
"; txt += "
"; txt += "#" + num + " - #" + id + " "; txt += "" + theme + ""; if(msgKey) { var escapedMsgKey = String(msgKey).replace(/'/g, "\\'").replace(/"/g, """); txt += " "; } if(link && link !== "") { txt += " "; } txt += "
"; txt += "
" + time + "
"; txt += "
"; txt += "
" + text + "
"; txt += "
"; } } txt += "
"; x.innerHTML = txt; mm_page_body(x_id); x.scrollIntoView({behavior: 'smooth',block: 'start'}); if(typeof window.mm_msg_data === 'undefined') { window.mm_msg_data = {}; } window.mm_msg_data.filters = filters; window.mm_msg_data.sort = sortData; window.mm_msg_data.allItems = itemsArray; } catch(e) { console.error("set_mm_msg_list error:", e); x.innerHTML = ""; } } function mm_msg_apply_filter(filterKey) { if(!window.mm_msg_data) { console.error("mm_msg_data is not defined"); return; } if(!window.mm_msg_data.sort) { console.error("mm_msg_data.sort is not defined"); return; } var sortData = window.mm_msg_data.sort; var filteredItems = null; if(sortData.hasOwnProperty(filterKey)) { filteredItems = sortData[filterKey]; } else if(sortData.hasOwnProperty(parseInt(filterKey))) { filteredItems = sortData[parseInt(filterKey)]; } else if(sortData.hasOwnProperty(String(filterKey))) { filteredItems = sortData[String(filterKey)]; } if(!filteredItems) { console.error("No filteredItems for key:", filterKey); console.error("Available keys in sortData:", Object.keys(sortData)); var txt = ""; var x = document.getElementById("mm_msg_list"); if(x) { var filters = window.mm_msg_data.filters || {}; txt += "
"; txt += "
"; txt += "My messages (0)"; txt += "
"; if(Object.keys(filters).length > 0) { txt += "
"; for(var key in filters) { if(filters.hasOwnProperty(key)) { var filterValue = filters[key]; var activeClass = (key === filterKey) ? " btn-primary" : " btn-outline-secondary"; txt += ""; } } txt += "
"; } txt += "
"; txt += "

No messages found for this filter

"; txt += "
"; txt += "
"; x.innerHTML = txt; } return; } if(!Array.isArray(filteredItems)) { console.error("filteredItems is not an array:", filteredItems); return; } var txt = ""; var x = document.getElementById("mm_msg_list"); if(!x) { console.error("mm_msg_list element not found"); return; } var filters = window.mm_msg_data.filters || {}; var qty = filteredItems.length; txt += "
"; txt += "
"; txt += "My messages (" + qty + ")"; txt += "
"; if(Object.keys(filters).length > 0) { txt += "
"; for(var key in filters) { if(filters.hasOwnProperty(key)) { var filterValue = filters[key]; var activeClass = (key === filterKey) ? " btn-primary" : " btn-outline-secondary"; var escapedKey = String(key).replace(/'/g, "\\'").replace(/"/g, """); txt += ""; } } txt += "
"; } if(filteredItems.length === 0) { txt += "
"; txt += "

No messages found for this filter

"; txt += "
"; } else { var allItems = window.mm_msg_data.allItems || []; var itemsMap = {}; for(var j = 0; j < allItems.length; j++) { var msg = allItems[j]; if(msg && msg.nn !== undefined && msg.nn !== null) { var msgNum = msg.nn; var numKey = Number(msgNum); var strKey = String(msgNum); itemsMap[numKey] = msg; itemsMap[strKey] = msg; } } for(var i = 0; i < filteredItems.length; i++) { var itemNum = filteredItems[i]; var item = null; var numKey = Number(itemNum); var strKey = String(itemNum); item = itemsMap[itemNum] || itemsMap[numKey] || itemsMap[strKey] || itemsMap[parseInt(itemNum)] || itemsMap[parseFloat(itemNum)]; if(!item) { console.error("Message not found for nn:", itemNum); continue; } var num = item.nn || (i + 1); var id = item.id || "-"; var theme = item.subj || "-"; var time = item.utime ? utime_to_localtime(item.utime) : "-"; var text = item.body || "-"; var link = item.link || ""; var msgKey = item.key || item.filter_key || null; txt += "
"; txt += "
"; txt += "
"; txt += "#" + num + " - #" + id + " "; txt += "" + theme + ""; if(msgKey) { var escapedMsgKey = String(msgKey).replace(/'/g, "\\'").replace(/"/g, """); txt += " "; } if(link && link !== "") { txt += " "; } txt += "
"; txt += "
" + time + "
"; txt += "
"; txt += "
" + text + "
"; txt += "
"; } } txt += "
"; x.innerHTML = txt; } function mm_msg_sort_by_key(key) { if(!window.mm_msg_data || !window.mm_msg_data.filters) { return; } var filters = window.mm_msg_data.filters; if(filters.hasOwnProperty(key)) { mm_msg_apply_filter(key); } } function mm_page_body(id) { console.log("mm_page_body: "+id); var x; var y; var l; var i; var id2; x = document.getElementsByClassName("mm_page_body"); l = x.length; if(l) { for(i=0;i < l;i++) { y = x[i]; id2 = y.id; if(id == id2) { if (y.classList.contains('d-none')) { y.classList.remove('d-none'); } } else { if (!y.classList.contains('d-none')) { y.classList.add('d-none'); y.innerHTML = ''; } } } } } const cookieModal = document.querySelector('.cookie-modal'); function set_cookie(name, value) { document.cookie = `${name}=${value}`; } function getCookie(name) { const cookies = document.cookie.split(';'); for (let cookie of cookies) { const [cookieName, cookieValue] = cookie.trim().split('='); if (cookieName === name) { return cookieValue; } } return; } function cookie_modal_check() { if(selectedAccount) { var cookie_agree = getCookie("cookie_agree"); if (cookie_agree === undefined) { showCookieModal(); } } } function showCookieModal() { if(cookieModal.style.opacity != '1') { cookieModal.style.opacity = '1'; cookieModal.style.visibility = 'visible'; } } function closeCookieModal() { cookieModal.style.opacity = '0'; cookieModal.style.visibility = 'hidden'; } function agreeCookieModal(event) { set_cookie("cookie_agree", "1"); const params = { "x": event.clientX, "y": event.clientY, "value": 1, }; var o = new Object(); o.wal = selectedAccount; o.func = whoCallsMe2(); o.k = "agree"; o.x = event.clientX; o.y = event.clientY; web_log("cookie_agree",o); closeCookieModal(); } function declineCookieModal(event) { set_cookie("cookie_agree", "0"); const params = { "x": event.clientX, "y": event.clientY, "value": 0, }; var o = new Object(); o.wal = selectedAccount; o.func = whoCallsMe2(); o.k = "decline"; o.x = event.clientX; o.y = event.clientY; web_log("cookie_agree",o); closeCookieModal(); } setInterval(cookie_modal_check,10000); function change_active_chain_tabs(net) { var chainName = net; var clickedChain = net; var i; var l; const chains = document.querySelectorAll('.nav-pills .nav-link'); const tabs = document.querySelectorAll('.tabs .tab'); console.log("clickedChain: "+clickedChain); event.preventDefault(); for (i = 0; i < chains.length; i++) { if(chains[i].classList.contains('active')) { chains[i].classList.remove('active'); } } l = tabs.length; for (i = 0; i < l; i++) { if(tabs[i].classList.contains('active')) { tabs[i].classList.remove('active'); } } for (i = 0; i < l; i++) { console.log("Class: "+tabs[i].className); if (tabs[i].classList.contains(net)) { tabs[i].classList.add('active'); console.log("!!!!!! "+net+" "+tabs[i].className); } } x = document.getElementById("nav-link-depo-"+net); x.classList.add('active'); } function copy_address (event) { let target = event.target.closest('.address-copy'); if (!target) return; let textAddress = target.parentElement.querySelector('button').getAttribute('data-address'); navigator.clipboard.writeText(textAddress); target.parentElement.classList.add('copied'); setTimeout(function() { target.parentElement.classList.remove('copied'); }, 2000); return false; }; function toggle_notification_panel(event) { const buttons = document.querySelectorAll('.notification__branch'); const wrappers = document.querySelectorAll('.notification__wrapper'); const tabNumber = event.target.classList[0]; for (let i = 0; i < buttons.length; i++) { if(buttons[i].classList.contains('notification__branch-active')) { buttons[i].classList.remove('notification__branch-active'); } } for (let i = 0; i < wrappers.length; i++) { if(wrappers[i].classList.contains('notification__wrapper-active')) { wrappers[i].classList.remove('notification__wrapper-active'); } } for (let i = 0; i < wrappers.length; i++) { if (wrappers[i].classList.contains(tabNumber)) { wrappers[i].classList.add('notification__wrapper-active'); } } show_zero_notifications(tabNumber, wrappers); event.target.classList.add('notification__branch-active'); } function show_zero_notifications(tabNumber, wrappers) { if (tabNumber === 'notification__tab-1') { const descElements = document.querySelectorAll('.notification__desc-all'); const allHiddenElements = Array.from(descElements).every(element => element.style.display === 'none'); const emptyElement = document.querySelector('.notification__empty'); if (allHiddenElements) { emptyElement.style.display = 'flex'; } else { for (let i = 0; i < wrappers.length; i++) { if (wrappers[i].classList.contains(tabNumber)) { wrappers[i].classList.add('notification__wrapper-active'); } } emptyElement.style.display = 'none'; } } if (tabNumber === 'notification__tab-2') { const descElements = document.querySelectorAll('.notification__desc-news'); const allHiddenElements = Array.from(descElements).every(element => element.style.display === 'none'); const emptyElement = document.querySelector('.notification__empty'); if (allHiddenElements) { emptyElement.style.display = 'flex'; } else { for (let i = 0; i < wrappers.length; i++) { if (wrappers[i].classList.contains(tabNumber)) { wrappers[i].classList.add('notification__wrapper-active'); } } emptyElement.style.display = 'none'; } } if (tabNumber === 'notification__tab-3') { const descElements = document.querySelectorAll('.notification__desc-liquidity'); const allHiddenElements = Array.from(descElements).every(element => element.style.display === 'none'); const emptyElement = document.querySelector('.notification__empty'); if (allHiddenElements) { emptyElement.style.display = 'flex'; } else { for (let i = 0; i < wrappers.length; i++) { if (wrappers[i].classList.contains(tabNumber)) { wrappers[i].classList.add('notification__wrapper-active'); } } emptyElement.style.display = 'none'; } } } function change_theme_for_ahbot() { if (document.querySelector("#ahbot__background")) { const ahbot_container = document.querySelector("#ahbot__background"); const ahbot_logo_img = document.querySelector("#ahbot__title__img"); const dark_theme = get_cookie("theme"); if (dark_theme === "dark") { ahbot_container.setAttribute("src", "/images/ahbot_dark_background-img.png"); ahbot_logo_img.setAttribute("src", "/images/ahbot_dark_logo.png"); } else { ahbot_container.setAttribute("src", "/images/ahbot_background-img.png"); ahbot_logo_img.setAttribute("src", "/images/ahbot_logo.png"); } } } function change_theme_for_aicard() { if (document.querySelector("#aicard__background")) { const dark_theme = get_cookie("theme"); const aicard__background = document.querySelector("#aicard__background"); const src = aicard__background.getAttribute("src"); const pathParts = src.split("/"); if (dark_theme === "dark") { pathParts[pathParts.length - 1] = "aicard_background_dark1.png"; } else { pathParts[pathParts.length - 1] = "aicard_background.png"; } const newSrc = pathParts.join("/"); aicard__background.setAttribute("src", newSrc); } } function theme_switcher() { const theme_switcher = document.querySelector(".theme_switcher"); const dark_theme = get_cookie("theme"); if(theme_switcher) { if (dark_theme === "dark") { theme_switcher.checked = true; } else { theme_switcher.checked = false; } } } function change_theme() { var on; var x = document.getElementById('body'); var y = ""; y = x.className; var z = ""; if(y=="dark-theme") {on=0;z = "";} else {on=1;z = "dark-theme";} x.className = z; localStorage.setItem('theme', z); if(on) document.cookie = "theme=dark"; else document.cookie = "theme="; change_theme_for_ahbot(); change_theme_for_aicard(); theme_switcher(); return false; } function set_theme() { var x = document.getElementById('body'); var y = ""; y = localStorage.getItem('theme'); x.className = y; x = document.getElementById('theme'); if(y=="") x.checked = false; else x.checked = true; } change_theme_for_ahbot(); change_theme_for_aicard(); theme_switcher(); function submit_support_form(event) { const form = document.getElementById("modal_support_form"); event.preventDefault(); if (form.checkValidity()) { const button = document.getElementById("modal_support_btn"); button.innerHTML = "Sending..."; button.disabled = true; setTimeout(() => { form.submit(); form.reset(); support_submit(); }, 1000); } else { form.reportValidity(); } } function trimToDecimals(val, decimals) { val = String(val).replace(',', '.'); if (val.includes('.')) { let [intPart, fracPart] = val.split('.'); fracPart = fracPart.slice(0, decimals); return intPart + '.' + fracPart; } return val; } function btn_click_action(e) { var a = ""; if(glob["btn_action"][e.id] !== null) a = glob["btn_action"][e.id]; log("btn CLICK:"+e.id +' a:'+a); if(a) eval(a); return false; } function get_cookie(name) { var match = document.cookie.match(new RegExp('(^| )' + name + '=([^;]+)')); if (match) return match[2]; } function set_cookie(name,value) { var date = new Date(),expires = 'expires='; date.setTime(date.getTime() + 315360000000); expires += date.toGMTString(); document.cookie = name + '=' + value + '; ' + expires + '; path=/'; } function participateClick() { window.dataLayer = window.dataLayer || []; window.dataLayer.push({ 'event': 'dapp_aicard_participate_click' }); console.log("dapp_aicard_participate_click"); } function connectWalletClick(button) { if (button.textContent === "Connect Wallet") { window.dataLayer = window.dataLayer || []; window.dataLayer.push({ 'event': 'dapp_aicard_connectWallet_click' }); console.log("dapp_aicard_connectWallet_click"); } else { console.log("No action, button text is not 'Connect Wallet'."); } } function aicardBuyAccessClick() { window.dataLayer = window.dataLayer || []; window.dataLayer.push({ 'event': 'dapp_aicard_buyAccess_click' }); console.log("dapp_aicard_buyAccess_click"); } function cexBingxClick() { window.dataLayer = window.dataLayer || []; window.dataLayer.push({ 'event': 'cex_card_button_click', 'card': 'BingX' }); } function cexOkxClick() { window.dataLayer = window.dataLayer || []; window.dataLayer.push({ 'event': 'cex_card_button_click', 'card': 'OKX' }); } function cexMexcClick() { window.dataLayer = window.dataLayer || []; window.dataLayer.push({ 'event': 'cex_card_button_click', 'card': 'MEXC' }); } function tgAppsAHOpenLeagueClick() { window.dataLayer = window.dataLayer || []; window.dataLayer.push({ 'event': 'tgApps_card_button_click', 'card': 'AH Open League' }); } function tgAppsAHMiniAppClick() { window.dataLayer = window.dataLayer || []; window.dataLayer.push({ 'event': 'tgApps_card_button_click', 'card': 'Airdrop Hunter Mini App' }); } function tgAppsNasduckClick() { window.dataLayer = window.dataLayer || []; window.dataLayer.push({ 'event': 'tgApps_card_button_click', 'card': '$NASDUCK Mini App' }); } function onload_switch_item() { var t; switch(glob["item"]) { case "hunt_token": setInterval(func_page_hunt_token,300); break; case "gov": case "governance": setInterval(func_page_governance,300); break; case "inviters": setInterval(func_page_inviters,300); break; case "ref": setInterval(func_page_ref,300); break; case "tonapptask": setInterval(func_page_tonapptask,300); setInterval(tonapp1_send_status_check,1000); setInterval(tonapp1_send_status_check2,1000); break; case "get100": setInterval(func_page_get100,300); break; case "referrals": setTimeout(after_load_show_hide_ref_list,100); setInterval(ref_check_selected_account,2000); break; case "staking": setTimeout(func_staking_collection_check,300); setTimeout(func_staking_collection_check,3000); setInterval(func_staking_collection_check,10000); setTimeout(web3_apidap_tkns_get,300); setTimeout(web3_apidap_tkns_get,3000); setInterval(btn_stake_check,1000,3); break; case "farm": web3_staking_info2(); setInterval(web3_staking_info2,10000); break; case "eywa_lst": setTimeout(web3_apidap_eywa_lst,300); break; } } setTimeout(onload_switch_item,500); function go_to_debank_detail() { if (window.location.pathname !== "/") { window.location.assign(glob["domen"]+"#debank_detail"); } else { modal_open_detail(59, 'debank', '9'); } } function go_to_scroll_detail() { if (window.location.pathname !== "/") { window.location.assign(glob["domen"]+"#scroll_detail"); } else { modal_open_detail(16, 'scroll', '3'); } } function go_to_zksync_detail() { if (window.location.pathname !== "/") { window.location.assign(glob["domen"]+"#zksync_detail"); } else { modal_open_detail(6, 'zksync', '1'); } } function go_to_starknet_detail() { if (window.location.pathname !== "/") { window.location.assign(glob["domen"]+"#starknet_detail"); } else { modal_open_detail(31, 'starknet', '5'); } } function go_to_debank_card() { if (window.location.pathname !== "/") { window.location.assign(glob["domen"]+"#debank_card"); } else { brighten_card('#DeBank_panel'); } } function go_to_scroll_card() { if (window.location.pathname !== "/") { window.location.assign(glob["domen"]+"#scroll_card"); } else { brighten_card('#Scroll_panel'); } } function go_to_solana_card() { if (window.location.pathname !== "/") { window.location.assign(glob["domen"]+"#solana_card"); } else { brighten_card('#solana_panel'); } } function go_to_mintchain_card() { if (window.location.pathname !== "/") { window.location.assign(glob["domen"]+"#mintchain_panel"); } else { brighten_card('#mintchain_panel'); } } function go_to_secret_card() { if (window.location.pathname !== "/") { window.location.assign(glob["domen"]+"#secret_panel"); } else { brighten_card('#secret_panel'); } } function go_to_nft_card() { if (window.location.pathname !== "/") { window.location.assign(glob["domen"]+"#Nft_panel"); } else { brighten_card('#Nft_panel'); } } function go_to_zksync_card() { if (window.location.pathname !== "/") { window.location.assign(glob["domen"]+"#zksync_card"); } else { brighten_card('#zkSync_panel'); } } function go_to_starknet_card() { if (window.location.pathname !== "/") { window.location.assign(glob["domen"]+"#starknet_card"); } else { brighten_card('#StarkNet_panel'); } } function go_to_socialfi_card() { if (window.location.pathname !== "/") { window.location.assign(glob["domen"]+"points#solanafi_card"); } else { brighten_card('#solana_container'); } } function check_window_location_hash() { switch(window.location.hash) { case "#deposit": btn_buy_refill2(); break; case "#nft_card": showModalNftCard(); break; case "#ai_card": show_modal_ai_card(); break; case "#hamster_buy": show_modal_hamster_buy(); break; } if (window.location.hash === "#debank_detail") { modal_open_detail(59, 'debank', '9'); } if (window.location.hash === "#scroll_detail") { modal_open_detail(16, 'scroll', '3'); } if (window.location.hash === "#zksync_detail") { modal_open_detail(6, 'zksync', '1'); } if (window.location.hash === "#starknet_detail") { modal_open_detail(31, 'starknet', '5'); } if (window.location.hash === "#debank_card") { brighten_card('#DeBank_panel'); } if (window.location.hash === "#scroll_card") { brighten_card('#Scroll_panel'); } if (window.location.hash === "#mintchain_panel") { brighten_card('#mintchain_panel'); } if (window.location.hash === "#secret_panel") { brighten_card('#secret_panel'); } if (window.location.hash === "#Nft_panel") { brighten_card('#Nft_panel'); } if (window.location.hash === "#solana_card") { brighten_card('#solana_panel'); } if (window.location.hash === "#zksync_card") { brighten_card('#zkSync_panel'); } if (window.location.hash === "#starknet_card") { brighten_card('#StarkNet_panel'); } if (window.location.hash === "#solanafi_card") { brighten_card('#solana_container'); } }; function show_modal_hamster_buy() { $('#modal_hamster_buy').modal('show'); } function show_modal_hamster_buy2() { $('#readmore_modal').modal('hide'); $('#modal_hamster_buy').modal('show'); } function show_modal_hamster_buy3() { $('#modal_farm_stake').modal('hide'); glob["modal_open_after_close"]["modal_hamster_buy"] = "modal_farm_stake"; $('#modal_hamster_buy').modal('show'); } function show_modal_farm_stake_deposit() { $('#modal_farm_stake').modal('hide'); glob["modal_open_after_close"]["buy_refill_modal"] = "modal_farm_stake"; $('#buy_refill_modal').modal('show'); } function readmore_farm_depo() { $('#readmore_modal').modal('hide'); $('#buy_refill_modal').modal('show'); } function readmore_farm_accesskey() { $('#readmore_modal').modal('hide'); $('#modal_nft_card').modal('show'); } setTimeout(check_window_location_hash,1500); function open_modal_connect() { $('#buyTarifModal').modal('hide'); console.log("open_modal_connect"); $('#modal_auth').modal('show'); } function click_agree() { if ($('input.popup_checkbox_input').is(':checked')) { $('.popup_img').css({ 'display': 'block' }); $('.popup_li').css({ 'cursor': 'pointer' }); $('.popup_img_grey').css({ 'display': 'none' }); } else { $('.popup_img').css({ 'display': 'none' }); $('.popup_img_grey').css({ 'display': 'block' }); $('.popup_li').css({ 'cursor': 'not-allowed' }); } } $('.popup_checkbox').click(click_agree); click_agree(); async function connect_v2_wal(k) { var agree = document.getElementById("popup_checkbox_agree"); if (!agree.checked) { return false; } var x; var img; var m = new Array(); var txt; var title; var name; var url; var t; var close_time = 1000; glob["modal_txs_link"] = ""; const userAgent = navigator.userAgent || navigator.vendor || window.opera; switch(k) { case "okx": if (is_mobile_device()) { if (userAgent.toLowerCase().includes('okapp')) { connectOkxWallet(); sendWalletNumberForAnalytics() } else { const encodedUrl = "https://www.okx.com/download?deeplink=" + encodeURIComponent("okx://wallet/dapp/url?dappUrl=" + encodeURIComponent(location.href)); window.location.href = encodedUrl; } } else { img = "
"; m["title"] = "Connect Okx wallet"; if (!window.okxwallet) { txt = img+"
Download in the Chrome Web Store
"; url = "https://chrome.google.com/webstore/detail/okx-wallet/mcohilncbfahbmgdjkbpemcciiolgcge"; glob["modal_txs_link"] = url; m["btn"] = "Install chrome extension["+k+"]"; m["btn_enable"] = 1; } else { connectOkxWallet(); txt = img+"
Confirm connection in OKX wallet
"; m["btn"] = "See you Okx Wallet"; } modal_tx_info_open(txt,m); } $('#modal_auth').modal('hide'); setTimeout(() => { }, 2000); break; case "metamask": if (is_mobile_device()) { if (userAgent.toLowerCase().includes('metamaskmobile')) { connectMetaMask(); sendWalletNumberForAnalytics(); } else { var link = 'https://metamask.app.link/dapp/' + document.URL; window.open(link, '_self'); sendWalletNumberForAnalytics(); } } else { if (!window.ethereum) { img = "
"; m["title"] = "Connect Metamask wallet"; txt = img+"
Download in the Chrome Web Store
"; url = "https://chrome.google.com/webstore/detail/metamask/nkbihfbeogaeaoehlefnkodbefgpgknn"; glob["modal_txs_link"] = url; m["btn"] = "Install chrome extension["+k+"]"; m["btn_enable"] = 1; modal_tx_info_open(txt, m); } else { connectMetaMask(); sendWalletNumberForAnalytics(); } } $('#modal_auth').modal('hide'); setTimeout(() => { }, 2000); break; case "coin98": img = "
"; m["title"] = "Connect C98 wallet"; if (!window.coin98) { txt = img+"
Download in the Chrome Web Store
"; url = "https://chrome.google.com/webstore/detail/coin98-wallet/aeachknmefphepccionboohckonoeemg"; glob["modal_txs_link"] = url; m["btn"] = "Install chrome extension["+k+"]"; m["btn_enable"] = 1; } else { connectCoin98Wallet(); sendWalletNumberForAnalytics(); txt = img+"
Confirm connection in C98 wallet
"; m["btn"] = "See you C98 Wallet"; } modal_tx_info_open(txt,m); $('#modal_auth').modal('hide'); setTimeout(() => { }, 2000); break; case "trustwallet": if (is_mobile_device()) { const urlParams = new URLSearchParams(window.location.search); var utm_source = urlParams.get("utm_source"); if (utm_source == "Trust_iOS_Browser") { connectTrustWallet(); sendWalletNumberForAnalytics(); } else { var link = 'trust://open_url?url=' + document.URL; window.open(link, '_self'); } } else { img = "
"; m["title"] = "Connect Trust Wallet"; if (!window.ethereum) { txt = img+"
Download in the Chrome Web Store
"; url = "https://chrome.google.com/webstore/detail/trust-wallet/egjidjbpglichdcondbcbdnbeeppgdph"; glob["modal_txs_link"] = url; m["btn"] = "Install chrome extension["+k+"]"; m["btn_enable"] = 1; } else { connectTrustWallet(); sendWalletNumberForAnalytics(); txt = img+"
Confirm connection in Trust Wallet
"; m["btn"] = "See you Trust Wallet"; } modal_tx_info_open(txt,m); } $('#modal_auth').modal('hide'); break; case "wallet_connect_v2": localStorage.removeItem("wc@2:core:0.3//messages"); localStorage.removeItem("wc@2:core:0.3//history"); web3modal.openModal(); $('#modal_auth').modal('hide'); localStorage.setItem("web3_prov", k); log("We are connected: "+k); setTimeout(() => { }, 2000); break; } } async function connectMetaMask() { if (window.ethereum) { try { const accounts = await window.ethereum.request({ method: 'eth_requestAccounts' }); set_selectedAccount(accounts[0]); localStorage.setItem("web3_prov","metamask"); provider = window.ethereum; log("signer2"); console.log(signer2); log('MetaMask connected'); modal_txs_close_timeout(); } catch (error) { if (error.code === 4001) { log('User cancel metamask connect'); } else { log('Metamask connect error:', error.message); } } } else { console.error('MetaMask extension not found'); } } async function connectOkxWallet() { if (window.okxwallet) { try { await window.okxwallet.enable(); const accounts = await window.ethereum.request({ method: 'eth_requestAccounts' }); set_selectedAccount(accounts[0]); localStorage.setItem("web3_prov","okx"); provider = window.okxwallet; log('OkxWallet connected'); modal_txs_close_timeout(); } catch (error) { if (error.code === 4001) { log('User cancel okx connect'); } else { log('Okx connect error:', error.message); } } } else { console.error('OkxWallet extension not found'); } } async function connectCoin98Wallet() { if (window.coin98) { try { const accounts = await window.ethereum.request({ method: 'eth_requestAccounts' }); set_selectedAccount(accounts[0]); localStorage.setItem("web3_prov","c98"); provider = window.ethereum; log('Coin98 connected'); modal_txs_close_timeout(); } catch (error) { if (error.code === 4001) { log('User cancel okx connect'); } else { log('Coin98 connect error:', error.message); } } } else { console.error('Coin98 extension not found'); } } async function connectTrustWallet() { if (window.ethereum) { try { const accounts = await window.ethereum.request({ method: 'eth_requestAccounts' }); set_selectedAccount(accounts[0]); localStorage.setItem("web3_prov","trustwallet"); provider = window.ethereum; log("signer2"); console.log(signer2); log('Trust Wallet connected'); modal_txs_close_timeout(); } catch (error) { if (error.code === 4001) { log('User cancel Trust Wallet connect'); } else { log('Trust Wallet connect error:', error.message); } } } else { console.error('Trust Wallet extension not found'); } } function show_prov() { var prov_now = get_web3_prov(); log("prov_now: "+prov_now); } async function check_extension_installed() { var k; var x; if (window.ethereum) { ethereum.on("accountsChanged", (accounts) => { console.log("accountsChanged"); set_selectedAccount(accounts[0]); }); ethereum.on("chainChanged", (this_chainId) => { console.log("chainChanged"); set_selected_chain_id(this_chainId); }); } else { log("Extension not installed"); } } async function set_selectedAccount(addr,prov_name="") { var prov_type1; var prov_type2; var t2; var set_selectedAccount_last = get_cookie("selectedAccount"); var prov_now = get_web3_prov(); prov_type1 = prov_type(prov_now); prov_type2 = prov_type(prov_name); if(prov_type1 != prov_type2) { return false; } { if(addr === undefined)addr = ""; selectedAccount = addr; set_cookie("selectedAccount",selectedAccount); $('#currentSelectedAccount').text(selectedAccount); if (addr !== prevSelectedAccount) { prevSelectedAccount = addr; } if(set_selectedAccount_last != selectedAccount && selectedAccount) { on_success_connect(); } if(selectedAccount !== "" && selectedAccount !== undefined) { wallet_id_set(selectedAccount); glob["onConnected"] = 1; switch(prov_type1) { case "legacy": t2 = await get_chain_id_legacy(); set_selected_chain_id(t2); break; } } auth_on_off(selectedAccount?1:0); set_wallet_img(); } } var prevSelectedAccount = ""; function sendWalletNumberForAnalytics() { console.log("sendWalletNumberForAnalytics"); } function show_cookie_acc() { var t = get_cookie("selectedAccount"); log("selectedAccount: "+t); } function btn_modal_mm_plus_show() { $('#modal_mm_plus').modal('show'); } function btn_modal_referral_show() { var t; if(glob["modal_last"] != "") { console.log("try to close: "+glob["modal_last"]); t = "#"+glob["modal_last"]; $(t).modal('hide'); } $('#modal_referral').modal('show'); web3_mm_info(); } function set_net_img(net) { var n; var x; var img; switch(net) { case 137: img = ""; break; case 56: img = ""; break; case 1: img = ""; break; case 42161: img = ""; break; case 42170: img = ""; break; case 324: img = ""; break; case 1101: img = ""; break; case 43114: img = ""; break; case 10: img = ""; break; default: img = ""; } n = 'wallet-net'; set_by_className(n,img); } function set_wallet_img() { var n; var x; var img; var prov = localStorage.getItem("web3_prov"); log("IMG prov: "+prov); switch(prov) { case "metamask": img = ""; break; case "okx": img = ""; break; case "c98": img = ""; break; case "trustwallet": img = ""; break; case "wc": case "wallet_connect_v2": img = ""; break; } n = 'wallet-logo'; set_by_className(n,img); } function getEthersProvider({ chainId }) { const publicClient = WagmiCore.getPublicClient({ chainId }); return publicClientToProvider(publicClient); } function publicClientToProvider(publicClient) { const { chain, transport } = publicClient; const network = { chainId: chain.id, name: chain.name, ensAddress: chain.contracts?.ensRegistry?.address, }; if (transport.type === 'fallback') return new ethers.providers.FallbackProvider( (transport.transports).map( ({ value }) => new ethers.providers.JsonRpcProvider(value?.url, network) ) ); return new ethers.providers.JsonRpcProvider(transport.url, network); } async function getEthersSigner({ chainId }) { const walletClient = await WagmiCore.getWalletClient({ chainId }); if (!walletClient) return undefined; return walletClientToSigner(walletClient); } function walletClientToSigner(walletClient) { const { account, chain, transport } = walletClient; const network = { chainId: chain.id, name: chain.name, ensAddress: chain.contracts?.ensRegistry?.address, }; const provider = new ethers.providers.Web3Provider(transport, network); const signer = provider.getSigner(account.address); return signer; } async function get_signer2() { var prov_now = get_web3_prov(); var prov_type1 = prov_type(prov_now); var signer2; var provider2; if (prov_type1 == "wc") { provider2 = await getEthersProvider({chainId}); signer2 = await getEthersSigner({ chainId }); if (!signer2) { console.error('Wallet provider not connected'); return; } } else { provider2 = new ethers.providers.Web3Provider(provider); signer2 = provider2.getSigner(); } return signer2; } async function show_signer() { console.log("show signer2"); var signer2 = await get_signer2(); console.log(signer2); } function set_selected_chain_id(id) { id = get_chain_hexdec(id); chainId = id; log("chain id set now: "+id); set_net_img(id); } function get_chain_hexdec(id) { var t; var l = id.length; if(l>=2) { t = id.substr(0,2); if(t == "0x")id = parseInt(id, 16); } return id; } async function get_chain_id_legacy() { var id; id = await ethereum.request({ method: 'eth_chainId' }); id = get_chain_hexdec(id); log("get_chain_id_legacy: "+id); return id; } function prov_type(prov) { switch(prov) { case "wallet_connect_v2": case "wallet_connect": r = "wc"; break; default: r = "legacy"; } return r; } function whoCallsMe() { stack = (new Error).stack; console.log('stack', stack); } function whoCallsMe2() { s = (new Error).stack; var t; t = s.indexOf("\n"); s = s.substr(t+1); t = s.indexOf("\n"); s = s.substr(t+1); t = s.indexOf("\n"); s = s.substr(0,t); s = s.trim(); t = s.indexOf("at "); s = s.substr(t+3); t = s.indexOf(" "); s = s.substr(0,t); s = s.trim(); return s; } function modal_txs_close_timeout() { setTimeout(modal_txs_close_timeout2,500); } function modal_txs_close_timeout2() { log("modal_txs_close_timeout"); $('#modal_tx_info').modal('hide'); } function get_web3_prov() { var prov_now = localStorage.getItem("web3_prov"); return prov_now; } function ref_copy1(e,xid) { var l; var id = e.id; var x; var x2; var txt; var o = new Object(); o.wal = selectedAccount; o.func = whoCallsMe2(); x2 = document.getElementById("ref_copy_text"); x2.innerHTML = "Copied"; x = document.getElementById(xid); txt = x.value; l = txt.length; x.focus(); x.setSelectionRange(0,l); try { succeed = document.execCommand("copy"); o.k = "success"; } catch(e) { succeed = false; o.k = "error"; } o.k2 = x.value; web_log("ref_link_copy",o); var x = document.getElementById(id); x.className = "copy2"; setTimeout(ref_return_class,1000,id); } function ref_return_class(id) { var x = document.getElementById(id); x.className = "copy"; var x2 = document.getElementById("ref_copy_text"); x2.innerHTML = "Copy"; } function modal_mm_wallet_copy(xid,type) { var l; var x; var x2; var txt; var o = new Object(); o.wal = selectedAccount; o.func = whoCallsMe2(); x = document.getElementById(xid); txt = x.value; l = txt.length; x.focus(); x.setSelectionRange(0,l); try { succeed = document.execCommand("copy"); o.k = "success"; } catch(e) { succeed = false; o.k = "error"; } o.k2 = type; web_log("wallet_copy",o); console.log("Button "+type+" on "+xid+" clicked: "+o.k); } glob["modal_last"] = ""; glob["modal_open_after_close"] = new Array(); function found_and_check_open_modal() { var x; var y = document.getElementsByClassName("modal"); var l = y.length; var i; var o = new Object(); var name; o.wal = selectedAccount; o.func = get_function_name(arguments.callee.toString());; for(i=0;i < l;i++) { x = y[i]; if(glob["modal_last"] == x.id && x.className != "modal fade show") { console.log('Closed modal: '+x.id); glob["modal_last"] = ""; glob["modal_hartbeat"] = 0; if(glob["modal_open_after_close"][x.id] != "") { $('#'+glob["modal_open_after_close"][x.id]).modal('show'); glob["modal_open_after_close"][x.id] = ""; } name = "modal_close"; o.k = x.id; web_log(name,o); } if(x.className == "modal fade show") { if(glob["modal_last"] != x.id) { console.log('Opened modal: '+x.id); glob["modal_last"] = x.id; name = "modal_open"; o.k = x.id; web_log(name,o); } } } } setInterval(found_and_check_open_modal,500); function modal_action_on_open_state() { var s = ""; var f = ""; var ev = ""; switch(glob["modal_last"]) { default: if(glob["modal_last"] != "") { ev = ""; f = "func_"+glob["modal_last"]+""; s = "typeof "+f; if (eval(s) === 'function') { ev = f+"();"; eval(ev); } } } } setInterval(modal_action_on_open_state,300); glob["func_modal_referral"] = 0; glob["func_modal_referral_acc"] = ""; function func_modal_referral() { glob["page_hartbeat"]++; if(glob["page_hartbeat"]==1) { func_modal_referral_get_stat(); } if(glob["page_hartbeat"] >= 50) glob["page_hartbeat"] = 0; func_modal_referral2(); } function func_modal_referral_get_stat() { console.log("func_modal_referral_get_stat:"+unixtime()); } function func_modal_referral2() { var x; if(glob["func_modal_referral_acc"] != selectedAccount) { glob["func_modal_referral"] = 0; glob["func_modal_referral_acc"] = selectedAccount; } if(glob["func_modal_referral"])return false; var t; glob["func_modal_referral"] = 1; console.log('func_modal_referral'); var url = glob["api-dap"]+"mm_ah_ref_code/"; var o = new Object(); o.time = unixtime(); o.r = Math.random()*10000; o.wal = selectedAccount; t = JSON.stringify(o); t = btoa(t); url += "?"+t; ajax_get_data(url,"func_modal_referral_set(xhr.response);"); } function func_modal_referral_set(r) { var data = JSON.parse(r); var x; var x2; var v; var u; var code; code = data.result; var o = new Object(); o.k = code; o.func = get_function_name(arguments.callee.toString()); web_log("fetch_ref_code",o); x2 = document.getElementById("modal_referral_link"); u = "https://"+glob["domen"]; u += "/mm/"+code; console.log(u); x = document.getElementById("modal_referral_code_ok"); x.className = 'iblk'; x = document.getElementById("modal_referral_code_err"); x.className = 'd-none'; x2.value = u; u += "?utm_source=hunter&utm_medium=social&utm_campaign=ah_mm"; x = document.getElementById("modal_referral_utm"); x.innerHTML = u; x = document.getElementById("modal_referral_utm_div"); x.className = 'comments'; } async function get_referral_wal_from_code(code) { var x; var t; var url = glob["api-dap"]+"mm_ah_ref_code_wal/"; var o = new Object(); o.time = unixtime(); o.r = Math.random()*10000; o.code = code; t = JSON.stringify(o); t = btoa(t); url += "?"+t; await ajax_get_data2(url,"set_referral_wal_from_code(xhr.response);"); } function set_referral_wal_from_code(r) { var data = JSON.parse(r); glob["referral_wal_from_code"] = data.result; } glob["func_modal_mm_plus_contract_info"] = 0; function func_modal_mm_plus() { glob["page_hartbeat"]++; if(glob["page_hartbeat"]==1) { } if(glob["page_hartbeat"] >= 18) glob["page_hartbeat"] = 0; btn_modal_mm_plus(); modal_mm_plus_contract_info(); } function modal_mm_plus_contract_info() { if(glob["func_modal_mm_plus_contract_info"])return false; glob["func_modal_mm_plus_contract_info"]++; web3_mm_ref2_info(); } function modal_tx_info_open(txt = '',m = new Array()) { console.log('FUNC modal_tx_info_open'); var x; var title = m["title"]!==undefined?m["title"]:"Transaction info"; var err = m["err"]!==undefined?m["err"]:""; var btn = m["btn"]!==undefined?m["btn"]:"See YOUR wallet"; var dis = m["btn_enable"]===undefined?1:0; var o = new Object(); o.wal = selectedAccount; o.title = title; o.btn = btn; o.k = txt; web_log("modal_tx",o); x = document.getElementById('modal_txs_info_ok'); x.innerHTML = txt; x = document.getElementById('modal_txs_info_err'); x.innerHTML = err; x = document.getElementById('modal_txs_info_id'); x.innerHTML = ''; x = document.getElementById('modal_txs_info_btn'); x.innerHTML = btn; x.disabled = dis; x = document.getElementById('modal_txs_info_title'); x.innerHTML = title; $('#modal_tx_info').modal('show'); } glob["modal_txs_link"] = ""; function modal_txs_info_btn_click() { var explorer = ''; var url = ''; var o = new Object(); o.wal = selectedAccount; o.func = get_function_name(arguments.callee.toString());; var x = document.getElementById('modal_txs_info_id'); if(x.innerHTML != '') { switch(chainId) { case 1: explorer = 'https://etherscan.io/tx/'; break; case 56: explorer = 'https://bscscan.com/tx/'; break; case 137: explorer = 'https://polygonscan.com/tx/'; break; case 80001: explorer = 'https://mumbai.polygonscan.com/tx/'; break; case "solana": explorer = 'https://solscan.io/tx/'; break; case 42161: explorer = 'https://arbiscan.io/tx/'; break; default: explorer = 'https://polygonscan.com/tx/'; } url = explorer+x.innerHTML; o.url = url; window.open(url, '_blank'); } if(glob["modal_txs_link"] != "") { url = glob["modal_txs_link"]; o.url = url; window.open(url, '_blank'); glob["modal_txs_link"] = ""; x = document.getElementById('modal_txs_info_btn'); x.disabled = 1; } if(glob["modal_txs_onclick"] != "") { o.onclick = glob["modal_txs_onclick"]; eval(glob["modal_txs_onclick"]); glob["modal_txs_onclick"] = ""; x = document.getElementById('modal_txs_info_btn'); x.disabled = 1; } if(o.url !== undefined) o.k = o.url; web_log("modal_tx_click",o); } function on_success_connect() { var prov = localStorage.getItem('web3_prov'); var o = new Object(); o.wal = selectedAccount; o.prov = prov; o.func = whoCallsMe2(); o.k = "connect"; web_log("wallet_connect",o); } function on_success_disconnect() { var prov = localStorage.getItem('web3_prov'); var o = new Object(); o.wal = selectedAccount; o.prov = prov; o.func = whoCallsMe2(); o.k = "disconnect"; web_log("wallet_connect",o); } function btn_modal_mm_plus() { var net = "bsc"; var x; var y; var v; var cost; var qty; var amount; var t; x = document.getElementById('modal_mm_cost'); cost = x.innerHTML; x = document.getElementById('mm_qty'); qty = x.value; switch(net) { case "fork": chain = 31337; nchain = "Fork"; break; case "matic": chain = 137; nchain = "Polygon"; break; case "bsc": chain = 56; nchain = "BSC"; break; case "eth": chain = 1; nchain = "Ethereum"; break; case "mumbai": chain = 80001; nchain = "Mumbai"; break; } amount = cost * qty; var id = "btn_mm_plus"; txt = "No action"; clas = "btn btn-primary btn-mm-plus"; a = ""; var err = ""; if(!err) { if(!selectedAccount || !glob["onConnected"]) { a = "onConnect();"; txt = "Connect Wallet"; err = 1; } } if(!err) { if(chainId != chain) { txt = "Switch to "+nchain; a = "change_chain('"+net+"');"; err = 1; clas = "btn btn-secondary btn-sm"; } } if(!err) { v = glob["mm_lev_onchain"].balance; v /= 10**18; y = glob["mm_lev_onchain"].amount2; y /= 10**18; if(v < y) { err = 1; txt = "Not enough USDT"; } } if(!err) { v = glob["mm_lev_onchain"].balance_coin; v /= 10**18; if(v < 0.0001) { err = 1; txt = "Not enough BNB "+v; } } if(!err) { x = document.getElementById("modal_mm_code"); v = x.value; if(v.length != 6) { err = 1; txt = "Insert CODE"; a = "modal_mm_code_focus();"; } } if(!err) { v = glob["mm_lev_onchain"].approved; v += ""; x = glob["mm_lev_onchain"].amount; if(v == "false") { err = 1; x = x.replace(/\B(?=(\d{3})+(?!\d))/g, ' '); txt = "Approve "+x+" USDT"; a = "web3_mm_ref2_approve();"; } } if(!err) { { err = 1; v = amount+""; v = v.replace(/\B(?=(\d{3})+(?!\d))/g, ' '); txt = "Pay "+v+" USDT"; a = "web3_mm_ref2_pay();"; } } x = document.getElementById(id); if(x === null) log("NULL "+id); if(x !== null) if(x.innerHTML != txt) { x.innerHTML = txt; x.className = clas; glob["btn_action"][id] = a; } } function modal_mm_code_focus() { var x = document.getElementById('modal_mm_code'); x.focus(); } function btn_show_leaders() { console.log("btn_show_leaders"); web3_mm_claim_owner_list(); web3_mm_claim_list_info(); var x_id = "mm_leader_list"; mm_page_body(x_id); var x = document.getElementById(x_id); x.scrollIntoView({behavior: 'smooth',block: 'start'}); } function set_by_className(c,v) { var i; var l; var x; var y; x = document.getElementsByClassName(c); l = x.length; for(i=0;i < l;i++) { y = x[i]; if(y.innerHTML != v) y.innerHTML = v; } } function support_click() { let y; let x; const screenshotTarget = document.body; x = document.getElementById('modal_support_wallet'); x.value = selectedAccount; x = document.getElementById('modal_support_btn'); x.disabled = false; x.innerHTML = "Send"; $('#modal_support').modal('show'); if(0) html2canvas(screenshotTarget).then(canvas => { dataURL = canvas.toDataURL(); x = document.getElementById('modal_support_img'); x.value = dataURL; }); const walletInput = document.querySelector("#modal_support_wallet"); const contactsInput = document.querySelector("#modal_support_contacts"); const descriptionInput = document.querySelector("#modal_support_message"); walletInput.setAttribute("required", ""); contactsInput.setAttribute("required", ""); descriptionInput.setAttribute("required", ""); } async function support_success_click(e) { e.preventDefault(); const walletInputValue = document.querySelector("#modal_support_wallet").value; const contactsInputValue = document.querySelector("#modal_support_contacts").value; const descriptionInputValue = document.querySelector("#modal_support_message").value; try { const response = await fetch("https://api-dap.airdrop-hunter.site/support/", { method: "post", mode: 'cors', headers: { 'Accept': 'application/json', 'Content-Type': 'application/json' }, body: JSON.stringify({ wallet: walletInputValue, contact: contactsInputValue, msg: descriptionInputValue }) }); if (response.ok) { $('#modal_support').modal('hide'); $('#modal_support_success').modal('show'); } else { throw new Error('Failed to send support request'); } } catch (error) { console.error('Error:', error); $('#modal_support').modal('hide'); $('#modal_support_error').modal('show'); } } function support_submit() { $('#modal_support').modal('hide'); $('#modal_support_success').modal('show'); } glob["tarif_wallet_list"] = new Array(); function wallet_list(addr,tarif) { console.log("wallet_list load addr: "+addr+" tarif: "+tarif); var url = glob["api-dap"]+"wallets_list/"+btoa(addr)+"/"+tarif; ajax_get_data(url,"wallet_list_load(xhr.response);"); } function wallet_list_load(data) { params = JSON.parse(data); if(params.status == 1) { glob["tarif_wallet_list"] = params.result; } else { glob["tarif_wallet_list"] = []; } } function api_circle_stat(id) { console.log("api_circle_stat: "+id); var pos; var airdrop; var circle; var tarif; var url; var wal; var x; var flag; var func; pos = id.indexOf("_"); airdrop = id.substr(0,pos); circle = id.substr(pos+1); x = document.getElementById("modal_circle_tarif_id"); tarif = x.innerHTML; if(!selectedAccount)return false; wal = selectedAccount; if(glob["tarif_addr_list"][tarif] === undefined) { flag = 0; } else { if(glob["tarif_addr_list"][tarif])flag = 1; else flag = 0; } if(!flag)return false; url = glob["api-dap"]+"api/stat/"+airdrop+"/"+wal+"/"+tarif+"/"+circle; func = "api_circle_stat_view(xhr.response);"; ajax_get_data(url,func); } function api_circle_stat_view(res) { var res2 = JSON.parse(res); modal_circle_detail_tbl(res2["result"]); } check_to_up_btn = function() { var scrollY = window.scrollY || window.pageYOffset || document.documentElement.scrollTop; var showThreshold = 300; if(scrollY > showThreshold) { if($('.to_up_btn').css('opacity') != '1') { $('.to_up_btn').css({ 'opacity': '1', 'pointer-events': 'auto' }); } } else { if($('.to_up_btn').css('opacity') == '1') { $('.to_up_btn').css({ 'opacity': '0', 'pointer-events': 'none' }); } } }; check_to_up_btn(); if(document.addEventListener) { document.addEventListener('scroll', check_to_up_btn); window.addEventListener('scroll', check_to_up_btn); } else { document.onscroll = check_to_up_btn; } $('.to_up_btn').on('click', function(e) { e.preventDefault(); $('html, body').animate({ scrollTop: 0 }, 500, function() { check_to_up_btn(); }); var checkInterval = setInterval(function() { check_to_up_btn(); var scrollY = window.scrollY || window.pageYOffset || document.documentElement.scrollTop; if(scrollY <= 0) { clearInterval(checkInterval); } }, 50); }); async function web3_sign_wallet_download() { var x; var name; var msg; var tarif; var params = "";; x = document.getElementById("modal_circle_tarif_id"); tarif = x.innerHTML; name = "Request to download wallets\n"; name += "wallet: "+selectedAccount+"\n"; name += "tarif: "+tarif+"\n"; name += "time: "+getCurrentTimestamp()+"\n"; msg = name; name = "
"+name+"
"; modal_tx_info_open(name); var prov_now = get_web3_prov(); var prov_type1 = prov_type(prov_now); try { const from = selectedAccount; var sign; if (prov_type1 == "wc") { sign = await WagmiCore.signMessage( { message: msg } ); } else { sign = await ethereum.request({ method: 'personal_sign', params: [msg, from], }); } params += "sign="+sign; params += "&addr="+from; params += "&msg="+encodeURIComponent(msg); url = glob["api-dap"]+"wldl/"; console.log(url); ajax_post_data(url,params,"wallet_download_sign_link(xhr.response);"); console.log("'"+msg+"'"); } catch (e) { err = web3_error_parse(e); x = document.getElementById('modal_txs_info_err'); x.innerHTML = err; x = document.getElementById('modal_txs_info_btn'); x.innerHTML = 'Sign message error'; } } function wallet_download_sign_link(p) { var x; params = JSON.parse(p); if(params.status == 1) { x = document.getElementById('modal_txs_info_btn'); x.innerHTML = 'Click to download'; x.disabled = false; glob["modal_txs_link"] = params.result; } else { x = document.getElementById('modal_txs_info_err'); x.innerHTML = params.error; x = document.getElementById('modal_txs_info_btn'); x.innerHTML = 'Sign message error'; x.disabled = true; } } function open_modal_get_pk_sign(wal) { console.log("open_modal_get_pk_sign: "+wal); var url; var o = new Object(); var params; var func; url = glob["api-dap"]+"mm_wal_check_dl_status"; console.log(); o.rand = Math.random(); o.owner = selectedAccount; o.wal = wal; o.utime = unixtime(); params = JSON.stringify(o); console.log(params); params = btoa(params); func = "open_modal_get_pk_sign_fetch(xhr.response);"; ajax_post_data(url,params,func); } function open_modal_get_pk_sign_fetch(r) { var m = new Array(); var name = ""; var msg = ""; console.log(r); var data = JSON.parse(r); if(data.result.status == 1) { name = ""; name += ""; name += "To continue, sign the text message in your wallet.

"; name += "
"; name += "
"; msg = data.result.sign_msg; name += msg; name += "
"; name += "
"; name += "After receiving your wallet details:
"; name += "- the address cannot be listed for sale
"; name += "- the boost will only be possible due to the liquidity in your addresses."; name += "

"; name += "!!! Attention
"; name += "- Make sure you are not being spied on
"; name += "- Make sure your screen is not being recorded
"; name += "
"; m["btn"] = "Click for SIGN"; if(data.result.btn_onclick !== undefined) glob["modal_txs_onclick"] = "web3_modal_get_pk_sign('"+btoa(msg)+"');"; } else { if(data.result.message !== undefined) { name = data.result.message; if(data.result.btn === undefined) m["btn"] = "Wallet in progress"; else m["btn"] = data.result.btn; } else { name = "Wrong request"; m["btn"] = "Try later"; } } m["title"] = "Actions with the wallet"; if(data.result.btn_enable !== undefined) m["btn_enable"] = data.result.btn_enable; name = "
"+name+"
";; modal_tx_info_open(name,m); } function web3_modal_get_pk_sign2(msg) { console.log("Sign message"); msg = atob(msg); console.log(msg); } async function web3_modal_get_pk_sign(msg) { var x; var name; var tarif; var params = "";; var o = new Object(); msg = atob(msg); var prov_now = get_web3_prov(); var prov_type1 = prov_type(prov_now); try { const from = selectedAccount; var sign; if (prov_type1 == "wc") { sign = await WagmiCore.signMessage( { message: msg } ); } else { sign = await ethereum.request({ method: 'personal_sign', params: [msg, from], }); } params += "sign="+sign; params += "&addr="+from; params += "&msg="+encodeURIComponent(msg); url = glob["api-dap"]+"wldl_mm/"; console.log(url); console.log(params); params = btoa(params); ajax_post_data(url,params,"wallet_prepare_for_copy(xhr.response);"); } catch (e) { err = web3_error_parse(e); o.wal = selectedAccount; o.prov = get_web3_prov(); if(!err) o.err = JSON.stringify(e); else o.err = err; o.comments = msg; o.func = get_function_name(arguments.callee.toString());; web_log("web3_tx_error",o); x = document.getElementById('modal_txs_info_err'); x.innerHTML = err; x = document.getElementById('modal_txs_info_btn'); x.innerHTML = 'Sign message error'; } } function wallet_prepare_for_copy(r) { var txt; var txt2 = ""; var x; var data = JSON.parse(r); var data2; console.log(data); if(data.status == 1) { console.log(data.result); data2 = atob(data.result); data2 = JSON.parse(data2); console.log(data2); x = document.getElementById('modal_txs_info_btn'); x.innerHTML = 'Click copy and save'; x.disabled = true; x = document.getElementById('modal_txs_info_ok'); txt = ""; txt += "
"; txt2 += "source: "+glob["domen"]+"\n"; txt2 += "address: "+data2.addr+"\n"; txt2 += "registered: "+data2.time_register+" UTC\n"; txt2 += "downloaded: "+data2.time_download+" UTC\n"; txt2 += "points: "+data2.points+"\n"; txt2 += "referral code: "+data2.mm_code+"\n"; txt2 += "address code: "+data2.mm_code2+"\n"; txt2 += "seed: "+data2.seed+"\n"; txt2 += "private key: "+data2.private_key+"\n"; txt += ""; txt += ""; txt += ""; txt += ""; txt += "
"; txt += ""; txt += "
"; txt += ""; txt += "
"; txt += ""; txt += "
"; txt += ""; txt += "
"; x.innerHTML = txt; } else { txt = data.error; x = document.getElementById('modal_txs_info_err'); x.innerHTML = data.error; x = document.getElementById('modal_txs_info_btn'); x.innerHTML = 'Sign message error'; x.disabled = true; } } function wallet_download_sign_link222(p) { var x; params = JSON.parse(p); if(params.status == 1) { x = document.getElementById('modal_txs_info_btn'); x.innerHTML = 'Click to download'; x.disabled = false; glob["modal_txs_link"] = params.result; } else { x = document.getElementById('modal_txs_info_err'); x.innerHTML = params.error; x = document.getElementById('modal_txs_info_btn'); x.innerHTML = 'Sign message error'; x.disabled = true; } } function web3_error_parse(e) { var prov_now = get_web3_prov(); var prov_type1 = prov_type(prov_now); var err = ""; var t; var wal = get_cookie("selectedAccount"); var e2 = JSON.stringify(e); console.log(e); t = e; switch(prov_type1) { case "wc": if(!err && t.error.message !== undefined) { err = t.error.message; } if(!err && t.code !== undefined) { switch(t.code+"") { case "4001": err = "Canceled by user in WalletConnect"; break; default: err = "WalletConnect error: "+t.code; } } break; default: if(t.code !== undefined) { switch(t.code+"") { case "4001": err = "Canceled by user in wallet: "+prov_now;; break; case "-32603": err = prov_now+": error code "+t.code; if(t.message !== undefined) err = prov_now+": "+t.message; if(t.data.message !== undefined) err = prov_now+": "+t.data.message; err = err.replace(":"+t.data.data,""); err = err.replace(t.data.data,""); break; default: err = "Transaction error: "+t.code+" on wallet: "+prov_now; } } if(err == "") { if(t.data !== undefined) { err = t.data.message; err = err.replace(":"+t.data.data,""); err = err.replace(t.data.data,""); } else err = t.message; pos = err.indexOf("("); if(pos > 0) err = err.substr(0,pos); switch(err) { case "MetaMask Tx Signature: User denied transaction signature.": case "Tx Signature: User denied transaction signature.": case "MetaMask Message Signature: User denied message signature.": case "MetaMask Personal Message Signature: User denied message signature.": case "Message Signature: User denied message signature.": case "Personal Message Signature: User denied message signature.": err = "Transaction canceled in wallet: "+prov_now; break; } } } err = err.replace("execution reverted: ",""); err = err.replace(".",".
\n"); return err; } function web_log(name,o) { var api_url; var wal = get_cookie("selectedAccount"); o.sess = get_cookie("PHPSESSID"); if(o.wal === undefined) o.wal = selectedAccount; api_url = glob["api-dap"] + "mm_web_log/"+name+"/"+wal; var params = str = JSON.stringify(o); ajax_post_data(api_url, params, web_log_res); } function web_log_res(res) { console.log(res); } function token_mas(net) { var c_mas = new Array(); switch(net) { case "fork": c_mas["usdc"] = "0x3Fe765E7bf1197A61B79348bbb5cE1076f41f85D"; c_mas["usdt"] = "0xDBA3137E2D74E66e5e785FA87F554962d65c00cf"; c_mas["dai"] = "0x151c418c2911EF51E95521740eB342432b22b32E"; c_mas["eth"] = "0x4E22C60c9b25E07f1bd13b2fD26A27F06a3bB330"; break; case "mumbai": c_mas["usdc"] = "0xfc33dad01925B6074C8be4b90CfA70EEF0352a6A"; c_mas["usdt"] = "0x6DA4c6217F86A824B570C757E764711950aAb3CA"; c_mas["dai"] = "0xE14F092611b5726Bb79A471eaf76C2ab3165fd88"; c_mas["eth"] = "0x8486770AF10f191fFb8dc268FCb7E297D1416947"; break; case "matic": c_mas["usdc"] = "0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174"; c_mas["usdc2"] = "0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359"; c_mas["usdt"] = "0xc2132D05D31c914a87C6611C10748AEb04B58e8F"; c_mas["dai"] = "0x8f3Cf7ad23Cd3CaDbD9735AFf958023239c6A063"; c_mas["eth"] = "0x7ceB23fD6bC0adD59E62ac25578270cFf1b9f619"; c_mas["matic"] = "0x0d500B1d8E8eF31E21C99d1Db9A6444d3ADf1270"; c_mas["ddao"] = "0x90F3edc7D5298918F7BB51694134b07356F7d0C7"; c_mas["devstusdc"] = "0x9f3086e284665081820b6BD8eC0b4f23B04343B9"; c_mas["devstdai"] = "0x725c7C47fD2F24D6AE25dFF1821535DCfAc3ebFC"; c_mas["hunt"] = "0xc4cAcb84554693F073Aeb5215F0B615EdCE15EA5"; break; case "eth": c_mas["usdc"] = "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48"; c_mas["usdt"] = "0xdAC17F958D2ee523a2206206994597C13D831ec7"; c_mas["dai"] = "0x6B175474E89094C44Da98b954EedeAC495271d0F"; break; case "bsc": c_mas["usdc"] = "0x8AC76a51cc950d9822D68b83fE1Ad97B32Cd580d"; c_mas["usdt"] = "0x55d398326f99059fF775485246999027B3197955"; c_mas["dai"] = "0x1AF3F329e8BE154074D8769D1FFa4eE058B1DBc3"; break; case "arbitrum": c_mas["eywa"] = "0x7a10f506e4c7658e6ad15fdf0443d450b7fa80d7"; c_mas["usdt"] = "0xFd086bC7CD5C481DCC9C85ebE478A1C0b69FCbb9"; c_mas["dai"] = "0xDA10009cBd5D07dd0CeCc66161FC93D7c9000da1"; c_mas["eth"] = "0x82aF49447D8a07e3bd95BD0d56f35241523fBab1"; c_mas["usdc"] = "0xaf88d065e77c8cC2239327C5EDb3A432268e5831"; break; } return c_mas; } glob["mm_lev_onchain"] = new Object(); async function web3_mm_ref2_info() { console.log("web3_mm_ref2_info()"); var net = 'bsc'; var err2; var x; var v; var t; var k; var qty; var arr3 = new Array(); var wal = "0x0"; var lvl = 0; var c; c = glob["contracts"]["mm_ref2_"+net]; console.log("Contract: "+c); if(!c)return false; if(selectedAccount) wal = selectedAccount; x = document.getElementById('mm_qty'); qty = x.value; lvl = modal_mm_lvl_get(); console.log("Wal: "+wal); console.log("Qty: "+qty); console.log("Lvl: "+lvl); var contract = new web3mas[net].eth.Contract(eth_abi["mm_ref2"], c); contract.methods.Info(wal,lvl,qty).call(function (err, res) { if (err) { console.log("An error occurred"); console.log(err); err2 = err+""; err2 = err2.replace("Error: Returned error: execution reverted:",""); do { err2 = err2.replace(" ","\n"); } while(err2.indexOf(" ") > 0); console.log(err2); return; } console.log(res); glob["mm_lev_onchain"] = res; v = res.balance; v /= 10**18; v += ""; v = v.replace(/\B(?=(\d{3})+(?!\d))/g, ' '); x = document.getElementById("modal_mm_plus_b"); x.innerHTML = v; v = res.allowance; v /= 10**18; v += ""; v = v.replace(/\B(?=(\d{3})+(?!\d))/g, ' '); x = document.getElementById("modal_mm_plus_a"); x.innerHTML = v; v = res.amount; v = v.replace(/\B(?=(\d{3})+(?!\d))/g, ' '); x = document.getElementById("modal_mm_plus_c"); x.innerHTML = v; }); } async function web3_mm_info() { console.log("web3_mm_info()"); var net = 'bsc'; var err2; var x; var v; var t; var k; var qty; var arr3 = new Array(); var wal = "0x0"; var lvl = 0; var c; c = glob["contracts"]["mm_info_"+net]; console.log("Contract: "+c); if(!c)return false; if(selectedAccount) wal = selectedAccount; console.log("Wal: "+wal); var contract = new web3mas[net].eth.Contract(eth_abi["mm_info"], c); contract.methods.Info(wal).call(function (err, res) { if (err) { console.log("An error occurred"); console.log(err); err2 = err+""; err2 = err2.replace("Error: Returned error: execution reverted:",""); do { err2 = err2.replace(" ","\n"); } while(err2.indexOf(" ") > 0); console.log(err2); return; } console.log(res); }); } async function web3_mm_claim_owner_list() { console.log("web3_mm_claim_owner_list()"); var net = 'bsc'; var err2; var x; var v; var t; var k; var arr3 = new Array(); var wal = "0x0"; var c; c = glob["contracts"]["mm_claim_list_"+net]; console.log("Contract: "+c); if(!c)return false; if(selectedAccount) wal = selectedAccount; console.log("Wal: "+wal); var contract = new web3mas[net].eth.Contract(eth_abi["mm_claim_list"], c); contract.methods.OwnerList(0,0).call(function (err, res) { if (err) { console.log("An error occurred"); console.log(err); err2 = err+""; err2 = err2.replace("Error: Returned error: execution reverted:",""); do { err2 = err2.replace(" ","\n"); } while(err2.indexOf(" ") > 0); console.log(err2); return; } console.log("RES output web3_mm_claim_owner_list"); leader_list(res); console.log(res); }); } async function web3_mm_claim_list_info() { console.log("web3_mm_claim_list_info"); var net = 'bsc'; var err2; var x; var v; var t; var k; var arr3 = new Array(); var wal = "0x0"; var c; c = glob["contracts"]["mm_claim_list_"+net]; console.log("Contract: "+c); if(!c)return false; var contract = new web3mas[net].eth.Contract(eth_abi["mm_claim_list"], c); contract.methods.Info().call(function (err, res) { if (err) { console.log("An error occurred"); console.log(err); err2 = err+""; err2 = err2.replace("Error: Returned error: execution reverted:",""); do { err2 = err2.replace(" ","\n"); } while(err2.indexOf(" ") > 0); console.log(err2); return; } console.log(res); }); } async function web3_mm_ref2_approve() { var net = "bsc"; var t; var amount; var decimal = 18; var c_mas = new Array(); c_mas = token_mas(net); var amount2; var coin = "usdt"; var o = new Object(); var x; var c; c = glob["contracts"]["mm_ref2_"+net]; console.log("Contract: "+c); var tkn = glob["mm_lev_onchain"].tkn; var name = ''; const signer2 = await get_signer2(); console.log("Contract token: "+tkn); var wal = selectedAccount; if(!wal) return false; const contract = new ethers.Contract(tkn, eth_abi["token"], signer2); amount = glob["mm_lev_onchain"].amount; amount2 = glob["mm_lev_onchain"].amount2; v = amount + ""; v = v.replace(/\B(?=(\d{3})+(?!\d))/g, ' '); name = "Approve "+v+" USDT"; o.k = name; modal_tx_info_open(name); try { r = await contract.approve(c,amount2); if(r) { console.log("sended OK"); x = document.getElementById('modal_txs_info_id'); x.innerHTML = r.hash; console.log(r); x = document.getElementById('modal_txs_info_btn'); x.innerHTML = 'View in Explorer'; x.disabled = 0; o.wal = selectedAccount; o.prov = get_web3_prov(); o.k2 = r.hash; o.func = get_function_name(arguments.callee.toString());; web_log("web3_tx_hash",o); setTimeout(web3_mm_ref2_info,5000); setTimeout(web3_mm_ref2_info,10000); } } catch(e) { err = web3_error_parse(e); o.wal = selectedAccount; o.prov = get_web3_prov(); if(!err) o.err = JSON.stringify(e); else o.err = err; o.func = get_function_name(arguments.callee.toString());; web_log("web3_tx_error",o); x = document.getElementById('modal_txs_info_err'); x.innerHTML = err; x = document.getElementById('modal_txs_info_btn'); x.innerHTML = 'Transaction error'; } } async function web3_mm_ref_pay() { var gas; var l; var t; var x; var net = "bsc"; var c; var abi; var mm_code = "XMT7WH"; var ah_code = "AHA698E3A"; var qty = 0; var cost; var amount; c = glob["contracts"][net+"_mm_ref"]; abi = eth_abi["mm_ref"]; console.log("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"); if(!selectedAccount)return false; const signer2 = await get_signer2(); var wal = selectedAccount; if(!wal) return false; const contract = new ethers.Contract(c, abi, signer2); x = document.getElementById("mm_qty"); qty = x.value; x = document.getElementById("modal_mm_cost"); cost = x.innerHTML; amount = cost * qty; x = document.getElementById("modal_mm_code"); mm_code = x.value; if(glob["item2"]) ah_code = glob["item2"]; name = ""; name += "Add "+qty+" referrals for you Metamask wallet"; name += "
Metamask CODE: "+mm_code+""; name += "
Hunter CODE: "+ah_code; name += "
"; name += "Pay "+amount+" "; name += ""; name += ""; name += " (BSC USDT)"; modal_tx_info_open(name); try { var options = {}; r = await contract.Get(ah_code,mm_code,qty,options); if(r) { x = document.getElementById('modal_txs_info_id'); x.innerHTML = r.hash; console.log(r); x = document.getElementById('modal_txs_info_btn'); x.innerHTML = 'View in Explorer'; x.disabled = 0; } } catch(e) { err = web3_error_parse(e); x = document.getElementById('modal_txs_info_err'); x.innerHTML = err; x = document.getElementById('modal_txs_info_btn'); x.innerHTML = 'Transaction error'; } } async function web3_mm_ref2_pay() { var gas; var l; var t; var x; var net = "bsc"; var c; var abi; var mm_code = "XMT7WH"; var ah_code = "AHA698E3A"; var qty = 0; var cost; var amount; var amount2; var lvl; var lvl_name = ""; var ref_wal = ""; var o = new Object(); c = glob["contracts"]["mm_ref2_"+net]; abi = eth_abi["mm_ref2"]; console.log("Contract: "+c); if(!selectedAccount)return false; const signer2 = await get_signer2(); var wal = selectedAccount; if(!wal) return false; const contract = new ethers.Contract(c, abi, signer2); x = document.getElementById("mm_qty"); qty = x.value; cost = glob["mm_lev_onchain"].cost; amount = glob["mm_lev_onchain"].amount; amount2 = glob["mm_lev_onchain"].amount2; lvl = modal_mm_lvl_get(); x = document.getElementById("modal_mm_lvl_"+lvl); lvl_name = x.innerHTML; x = document.getElementById("modal_mm_code"); mm_code = x.value; if(glob["item2"]) { ah_code = glob["item2"]; } else { t = get_cookie("ah_code"); if(t !== undefined && t.length == 9) { ah_code = t; } } await get_referral_wal_from_code(ah_code); ref_wal = glob["referral_wal_from_code"]; name = ""; name += "Level: "+lvl_name+""; name += "
Add "+qty+" referrals for you Metamask wallet"; name += "
Metamask CODE: "+mm_code+""; name += "
Hunter CODE: "+ah_code; name += "
"; v = amount; v = v.replace(/\B(?=(\d{3})+(?!\d))/g, ' '); name += "
"; name += "Pay "+v+" "; name += ""; name += ""; name += " (BSC USDT)"; modal_tx_info_open(name); console.log("ah_code: "+ah_code); console.log("mm_code: "+mm_code); console.log("Level : "+lvl); console.log("Qty : "+qty); console.log("Ref.wal: "+ref_wal); try { var options = {}; r = await contract.Get(ah_code,mm_code,lvl,qty,wal,ref_wal,options); o.k = "amount:"+amount+"|qty:"+qty+"|lvl:"+lvl+"|"+mm_code+"|"+ah_code; if(r) { x = document.getElementById('modal_txs_info_id'); x.innerHTML = r.hash; console.log(r); x = document.getElementById('modal_txs_info_btn'); x.innerHTML = 'View in Explorer'; x.disabled = 0; o.wal = selectedAccount; o.prov = get_web3_prov(); o.k2 = r.hash; o.func = get_function_name(arguments.callee.toString());; web_log("web3_tx_hash",o); setTimeout(web3_mm_ref2_info,5000); setTimeout(web3_mm_ref2_info,10000); } } catch(e) { err = web3_error_parse(e); o.wal = selectedAccount; o.prov = get_web3_prov(); if(!err) o.err = JSON.stringify(e); else o.err = err; o.func = get_function_name(arguments.callee.toString());; web_log("web3_tx_error",o); x = document.getElementById('modal_txs_info_err'); x.innerHTML = err; x = document.getElementById('modal_txs_info_btn'); x.innerHTML = 'Transaction error'; } }