Skip to content

Commit

Permalink
Merge branch 'npq7721:master' into master
Browse files Browse the repository at this point in the history
  • Loading branch information
The-Yerbas-Endeavor committed Aug 14, 2022
2 parents 732bcc1 + a9f3eb9 commit fa1b364
Show file tree
Hide file tree
Showing 5 changed files with 79 additions and 26 deletions.
90 changes: 68 additions & 22 deletions app/api/rpcApi.js
Original file line number Diff line number Diff line change
Expand Up @@ -414,7 +414,6 @@ function getRawTransaction(txid) {
getBlockchainInfo().then(function(blockchainInfoResult) {
var result = coins[config.coin].genesisCoinbaseTransaction;
result.confirmations = blockchainInfoResult.blocks;

resolve(result);

}).catch(function(err) {
Expand All @@ -428,7 +427,6 @@ function getRawTransaction(txid) {

return;
}

resolve(result);

}).catch(function(err) {
Expand Down Expand Up @@ -599,10 +597,10 @@ function getRawTransactions(txids) {
var rawResults = await getBatchRpcData(rawRequests);
result.push(...rawResults);
}
resolve(result);
} catch(err) {
reject(err);
};
resolve(result);
})
}

Expand Down Expand Up @@ -814,8 +812,10 @@ function lookForTransactions(transactionRequests, addresses) {

function getRpcMethodHelp(methodName) {
return getRpcDataWithParams({method:"help", parameters:[methodName]});

}


function getRpcData(cmd) {
return new Promise(function(resolve, reject) {
debugLog(`RPC: ${cmd}`);
Expand Down Expand Up @@ -844,6 +844,41 @@ function getRpcData(cmd) {
});
}

function batchRpcCommand(requests, callback, resolve, reject, retry = 2) {
global.rpcClient.command(requests, function(err, result, resHeaders) {
if (err != null) {
if(retry <= 1) {
utils.logError("38eh39hdee", err, {result:result, headers:resHeaders});
reject(err);
callback();
} else {
setTimeout(() => {
retry--;
batchRpcCommand(requests, callback, resolve, reject, retry);
}, 10);
}
return;
}
for(var r of result) {
if(r == null || r.code && r.code < 0) {
if(retry <= 1) {
reject(r);
callback();
} else {
setTimeout(() => {
retry--;
batchRpcCommand(requests, callback, resolve, reject, retry);
}, 10);
}
return;
}
}
resolve(result);

callback();
});
}

function getBatchRpcData(requests) {
return new Promise(function(resolve, reject) {
debugLog(`RPC: ${JSON.stringify(requests)}`);
Expand All @@ -852,14 +887,17 @@ function getBatchRpcData(requests) {
global.rpcClient.command(requests, function(err, result, resHeaders) {
if (err != null) {
utils.logError("38eh39hdee", err, {result:result, headers:resHeaders});

reject(err);

callback();

return;
}

for(var r of result) {
if(r == null || r.code && r.code < 0) {
reject(r);
callback();
return;
}
}
resolve(result);

callback();
Expand All @@ -870,26 +908,34 @@ function getBatchRpcData(requests) {
});
}

function singeRpcCommand(request, callback, resolve, reject, retry = 2) {
global.rpcClient.command([request], function(err, result, resHeaders) {
if (err != null) {
utils.logError("38eh39hdee", err, {result:result, headers:resHeaders});
if(retry <= 1) {
reject(err);
callback();
} else {
setTimeout(() => {
retry--;
singeRpcCommand(request, callback, resolve, reject, retry);
}, 10);
}
return;
}

resolve(result[0]);

callback();
});
}

function getRpcDataWithParams(request) {
return new Promise(function(resolve, reject) {
debugLog(`RPC: ${JSON.stringify(request)}`);

rpcCall = function(callback) {
global.rpcClient.command([request], function(err, result, resHeaders) {
if (err != null) {
utils.logError("38eh39hdee", err, {result:result, headers:resHeaders});

reject(err);

callback();

return;
}

resolve(result[0]);

callback();
});
singeRpcCommand(request, callback, resolve, reject);
};

rpcQueue.push({rpcCall:rpcCall});
Expand Down
1 change: 0 additions & 1 deletion app/cache.js
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,6 @@ class Cache {
resolve(result);

}).catch(function(err) {
console.log(err);
reject(err);
});
};
Expand Down
4 changes: 4 additions & 0 deletions public/txt/mining-pools-configs/RTM/0.json
Original file line number Diff line number Diff line change
Expand Up @@ -159,6 +159,10 @@
"RUveYpGXR24ZEjtynvgP78jC2dzLqMbWNc" : {
"name" : "Mining Madness",
"link" : "https://miningmadness.com/"
},
"RGY1sRzhW7bpoYV7ynCcqsufgApSE7xS7r" : {
"name" : "raptoreum.zone",
"link" : "https://raptoreum.zone/"
}
},

Expand Down
6 changes: 5 additions & 1 deletion routes/baseActionsRouter.js
Original file line number Diff line number Diff line change
Expand Up @@ -524,6 +524,9 @@ router.get("/tx/:transactionId", function(req, res, next) {
res.locals.result.txInputs = txInputs;

resolve();
}).catch(err => {
res.locals.pageErrors.push(utils.logError("0q83hreuwgd", err));
reject(err);
});
});
}));
Expand All @@ -535,8 +538,9 @@ router.get("/tx/:transactionId", function(req, res, next) {

}).catch(function(err) {
res.locals.pageErrors.push(utils.logError("1237y4ewssgt", err));
res.locals.message = "Failed to load some part of transaction with txid=" + txid + " and reload may help. error: " + err;

res.render("transaction");
res.render("error");

next();
});
Expand Down
4 changes: 2 additions & 2 deletions views/transaction.pug
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ block content
each txInput, txInputIndex in result.txInputs
if (txInput)
- var vout = txInput.vout[result.getrawtransaction.vin[txInputIndex].vout];
if (vout.value)
if (vout && vout.value)
- totalInputValue = totalInputValue.plus(new Decimal(vout.value));

- var totalOutputValue = new Decimal(0);
Expand Down Expand Up @@ -137,7 +137,7 @@ block content
div(class="summary-split-table-label") Locktime
div(class="summary-split-table-content monospace")
if (result.getrawtransaction.locktime < 500000000)
span Spendable in block
span Spendable in block
a(href=("/block-height/" + result.getrawtransaction.locktime)) #{result.getrawtransaction.locktime.toLocaleString()}
span or later
a(href="https://bitcoin.org/en/developer-guide#locktime-and-sequence-number", data-toggle="tooltip", title="More info about locktime", target="_blank")
Expand Down

0 comments on commit fa1b364

Please sign in to comment.