Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // ==UserScript==
- // @name MiningPoolHub balances page enhancer
- // @version 1
- // @grant none
- // @include https://miningpoolhub.com/?page=account&action=balances
- // ==/UserScript==
- var load,execute,loadAndExecute;load=function(a,b,c){var d;d=document.createElement("script"),d.setAttribute("src",a),b!=null&&d.addEventListener("load",b),c!=null&&d.addEventListener("error",c),document.body.appendChild(d);return d},execute=function(a){var b,c;typeof a=="function"?b="("+a+")();":b=a,c=document.createElement("script"),c.textContent=b,document.body.appendChild(c);return c},loadAndExecute=function(a,b){return load(a,function(){return execute(b)})};
- if (window.top != window.self){
- //don't run on frames or iframes
- Log('skipped loading inside iframe');
- }
- loadAndExecute("//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js", function() {
- function Log(data,msg){ if(msg) console.log(data,"MPH-> "+msg); else console.log("MPH->",data); }
- function LogCB(data,msg){ if(msg) console.log(data,"CB-> "+msg); else console.log("CB->",data); }
- function LogCMC(data,msg){ if(msg) console.log(data,"CMC-> "+msg); else console.log("CMC->",data); }
- $ = jQuery.noConflict();
- Log("balances page enhancer: loaded");
- function getPrice(coin,callback){
- if(!coin)coin = "bitcoin";
- $.ajax({
- url:"https://api.coinmarketcap.com/v1/ticker/"+coin+"/",
- type:"GET",
- dataType: "json",
- success:function(data){
- LogCMC(data);
- if(typeof callback === "function") callback(data[0]);
- },
- error:function(data){
- LogCMC(data.responseText,"error");
- },
- });
- }
- var coins = {
- "Adzcoin": "ADZ",
- "Auroracoin": "AUR",
- "Bitcoin": "BTC",
- "Bitcoin-Cash": "BCH",
- "Bitcoin-Gold": "BTG",
- "Dash": "DASH",
- "Digibyte": "DGB",
- "Electroneum": "ETN",
- "Ethereum": "ETH",
- "Ethereum-Classic": "ETC",
- "Expanse": "EXP",
- "Feathercoin": "FTC",
- "Gamecredits": "GAME",
- "Geocoin": "GEO",
- "Globalboosty": "BSTY",
- "Groestlcoin": "GRS",
- "Litecoin": "LTC",
- "Maxcoin": "MAX",
- "Monacoin": "MONA",
- "Monero": "XMR",
- "Musicoin": "MUSIC",
- "Myriadcoin": "XMY",
- "Sexcoin": "SXC",
- "Siacoin": "SC",
- "Startcoin": "START",
- "Verge": "XVG",
- "Vertcoin": "VTC",
- "Zcash": "ZEC",
- "Zclassic": "ZCL",
- "Zcoin": "XZC",
- "Zencash": "ZEN",
- }
- //headers
- $(".tablesorter thead tr")
- .prepend('<th class="header grey" align="left">Tag</th>')
- .prepend('<th class="header grey" align="left">Price</th>')
- .append('<th class="header grey" align="center">BTC</th>')
- .append('<th class="header grey" align="center">USD</th>');
- //extra columns
- var totalbtc = 0;
- var totalusd = 0;
- $(".tablesorter tr td:first-child a").each(function(){//for each linked coin name in the balance list
- var $this = $(this);
- var coin2check = $this.text()+" ";
- Object.keys(coins).some(function(key) {
- var thekey = new RegExp(key+" ");
- if (coin2check.match(thekey) != null) {
- //Log(coin2check+" found: "+coins[key]);
- var $tr = $this.parents("tr");
- $tr.prepend('<td>'+coins[key]+'</td>');//tags
- var confirmedbalance = $tr.find("td:nth-child(3)").text().replace(/ \([^)]*\)/g,"")
- var pair = key;
- //Log("getting price for: "+pair);
- getPrice(pair,function(data){ //geting price for each coin
- //Log("1 "+data.name+" = $"+data.price_usd+" or B"+data.price_btc);
- var btcval = Number(confirmedbalance*data.price_btc).toFixed(8,10);
- var usdval = Number(confirmedbalance*data.price_usd).toFixed(4,10);
- totalbtc += Number(btcval);
- totalusd += Number(usdval);
- $tr.append('<td>'+btcval+'</td>');//BTC value
- $tr.append('<td>$'+usdval+'</td>');//USD value
- $tr.prepend('<td>$'+Number(data.price_usd).toFixed(4,10)+'</td>');//price
- $(".tbtc").text(Number(totalbtc).toFixed(8,10));
- $(".tusd").text('$'+Number(totalusd).toFixed(4,10));
- });
- }
- });
- });
- var $tb = $(".tablesorter tbody");
- var $tr = $('<tr></tr>');
- var $btc = $('<td class="tbtc">'+totalbtc+'</td>');//BTC value
- var $usd = $('<td class="tusd">$'+totalusd+'</td>');//USD value
- $tr.append('<td></td><td></td><td></td><td></td><td></td><td></td><td><b>TOTALS:</b></td>',$btc,$usd);
- $tb.append($tr);
- $tb.append('<style>'+
- '.width_62_percent h3:after{content:"🐞 BugFree Enhanced 🐞";float:right;}'+
- '.tablesorter td, .tablesorterpager td {padding: 5px 10px;}'+
- '.grey {color:#fff;text-shadow:0px 0px 5px #000;}'+
- '</style>');
- });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement