Skip to content

Commit

Permalink
Added donations multi-coin support & pool version display
Browse files Browse the repository at this point in the history
  • Loading branch information
fancoder committed Aug 18, 2014
1 parent c6ea391 commit 6f934ec
Show file tree
Hide file tree
Showing 6 changed files with 53 additions and 28 deletions.
3 changes: 2 additions & 1 deletion config.json
Original file line number Diff line number Diff line change
Expand Up @@ -89,7 +89,8 @@
"depth": 60,
"poolFee": 2,
"devDonation": 0.1,
"coreDevDonation": 0.1
"coreDevDonation": 0.1,
"extraFeaturesDevDonation":0.1
},

"api": {
Expand Down
4 changes: 1 addition & 3 deletions lib/api.js
Original file line number Diff line number Diff line change
Expand Up @@ -133,9 +133,7 @@ function collectStats(){
coinDifficultyTarget: config.coinDifficultyTarget,
symbol: config.symbol,
depth: config.blockUnlocker.depth,
donation: config.blockUnlocker.devDonation,
coreDonation: config.blockUnlocker.coreDevDonation,
doDonations: doDonations,
donation: donations,
version: version,
minPaymentThreshold: config.payments.minPayment,
denominationUnit: config.payments.denomination
Expand Down
17 changes: 7 additions & 10 deletions lib/blockUnlocker.js
Original file line number Diff line number Diff line change
Expand Up @@ -179,15 +179,12 @@ function runInterval(){

var feePercent = config.blockUnlocker.poolFee / 100;

if (doDonations) {
feePercent += config.blockUnlocker.devDonation / 100;
feePercent += config.blockUnlocker.coreDevDonation / 100;

var devDonation = block.reward * (config.blockUnlocker.devDonation / 100);
payments[devDonationAddress] = devDonation;

var coreDevDonation = block.reward * (config.blockUnlocker.coreDevDonation / 100);
payments[coreDevDonationAddress] = coreDevDonation;
if (Object.keys(donations).length) {
for(var wallet in donations) {
var percent = donations[wallet];
feePercent += percent;
payments[wallet] = block.reward * (percent / 100);
}
}

var reward = block.reward - (block.reward * feePercent);
Expand Down Expand Up @@ -232,4 +229,4 @@ function runInterval(){
})
}

runInterval();
runInterval();
39 changes: 33 additions & 6 deletions lib/configReader.js
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,36 @@ catch(e){
return;
}

global.version = "v0.99.3.1";
global.devDonationAddress = '45Jmf8PnJKziGyrLouJMeBFw2yVyX1QB52sKEQ4S1VSU2NVsaVGPNu4bWKkaHaeZ6tWCepP6iceZk8XhTLzDaEVa72QrtVh';
global.coreDevDonationAddress = '46BeWrHpwXmHDpDEUmZBWZfoQpdc6HaERCNmx1pEYL2rAcuwufPN9rXHHtyUA4QVy66qeFQkn6sfK8aHYjA3jk3o1Bv16em';
global.doDonations = devDonationAddress[0] === config.poolServer.poolAddress[0] && (
config.blockUnlocker.devDonation > 0 || config.blockUnlocker.coreDevDonation > 0
);
var donationAddresses = {
devDonation: {
XMR: '45Jmf8PnJKziGyrLouJMeBFw2yVyX1QB52sKEQ4S1VSU2NVsaVGPNu4bWKkaHaeZ6tWCepP6iceZk8XhTLzDaEVa72QrtVh'
},
coreDevDonation: {
XMR: '46BeWrHpwXmHDpDEUmZBWZfoQpdc6HaERCNmx1pEYL2rAcuwufPN9rXHHtyUA4QVy66qeFQkn6sfK8aHYjA3jk3o1Bv16em'
},
extraFeaturesDevDonation: {
XDN: 'dddcPW8VjhJA9U2QDPunnkL8Yky83TdEBGThXsETtmAx8q7jvni7Kt4hn8pqS3ks7GhM2z9BeD22jgKewZ2kQhWK27ZaGfLHQ',
BCN: '23emzdEQqoWAifE1ZQLTrGAmVkdzjami82xgX4zWoX2VbiuGuunMJ1oF14PPa1cVRgGFz8tUWevsSNzMcPqHiQmF7iSzS1g',
BBR: '1Gy4NimzTgyhcZ22432N4ojP9HC6mHpML2g8SsmmjPZS4o8SYNFND99LAihRPHA2ddarf3okkJ3umTC2gLpysKBfLi4hfTF',
XMR: '43JNtJkxnhX789pJnCV6W4DQt8BqAWVoV4pqjGiWZ9845ee3aTBRBibMBzSziQi9BD5aEEpegQjLwguUgsXecB5bCY5wrMe',
QCN: '1MafhBsdrkW3ssQexQzHf8Q2VBEWE3DmrbySKJzXXNJFeHHTWahDkJ3iLkiKnAMMtzHPeLrsYVmkQJJ9DJx3ToodKUapV8p',
FCN: '6iAu6xDGnSFekMxJj7S61aepNVXbyCrV7PgWWKSfsEPyXbUjHAxjgq3KwED3dWrgddCRRtwBrrYgmVLZR7vdBr3KLe9Cowd',
MCN: 'Vdufe8Pjkp2apvJC2N3Q7KdqiDDnLR3cH8hPhB2hjBtdXRxnHmHdgESbCjAD5dv1oiFrA1jKJQqszHWELdNygCGW2Ri6qRH1B',
AEON: 'Wmsfi4rDdUC4xQyMo7f4BkfuPtSooPZ3wfx8e7JFXaKyfFY5buDJF4UakwhLp3FXxKVwB3ZFLQ3bTUBksCoG3tVQ2tzkrCZDm',
OEC: 'C53KdM3sWk2P27yvqihNDEVsCtDQH9koJTdmEX96ftqgTvSsuvg5HMJ2dLnynwcWr5d3oMvwzsQVKdVeYchG5iU6L5rNJjd',
DSH: 'D9t1KjB9w2haRp29ueJ9jHfTyq1FSzpMqavKpfFuwa8yEdHKuryfmh4W6ZzbHC71JFLoRD4ny7HWm15jb52JYcye7bBjD62',
INF8: 'inf8FtwGgmaATeXKvycUT7BfxiawxqhfRXaahPog7s4c7L8qreSvnebNDvwfDBXrip8ptgKgbToV73mS5M1cNviY5sbKhKitCd'
}
};

global.donations = {};

for(var configOption in donationAddresses) {
var percent = config.blockUnlocker[configOption];
var wallet = donationAddresses[configOption][config.symbol];
if(percent && wallet) {
global.donations[wallet] = percent;
}
}

global.version = "v1.1.2";
2 changes: 2 additions & 0 deletions website/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -287,6 +287,7 @@

function updateIndex(){
updateText('coinName', lastStats.config.coin);
updateText('poolVersion', lastStats.config.version);
}

$(function(){
Expand Down Expand Up @@ -354,6 +355,7 @@
<footer>
<div class="text-muted">
Powered by <a target="_blank" href="//cryptonotemining.org"><i class="fa fa-github"></i> cryptonote-universal-pool</a>
<span id="poolVersion"></span>
open sourced under the <a href="http://www.gnu.org/licenses/gpl-2.0.html">GPL</a>
</div>
</footer>
Expand Down
16 changes: 8 additions & 8 deletions website/pages/home.html
Original file line number Diff line number Diff line change
Expand Up @@ -343,16 +343,16 @@ <h4 class="yourStats">Payments</h4>


var totalFee = lastStats.config.fee;
if (lastStats.config.doDonations){
totalFee += lastStats.config.donation;
totalFee += lastStats.config.coreDonation;
var feeText = [];
if (lastStats.config.donation > 0) feeText.push(lastStats.config.donation + '% to pool dev');
if (lastStats.config.coreDonation > 0) feeText.push(lastStats.config.coreDonation + '% to core devs');
updateText('poolDonations', feeText.join(', '));
if (Object.keys(lastStats.config.donation).length) {
var totalDonation = 0;
for(var i in lastStats.config.donation) {
totalDonation += lastStats.config.donation[i];
}
totalFee += totalDonation;
updateText('poolDonations', totalDonation.toFixed(1) + '% to open-source devs');
}
else{
$('#donations').hide()
$('#donations').hide()
}

updateText('poolFee', totalFee + '%');
Expand Down

0 comments on commit 6f934ec

Please sign in to comment.