You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

234 lines
8.1 KiB

var KMDWalletDashboard = function() {
var handle_KMD_Dashboard = function() {
$('#btn_kmd_wallet_dashboard').click(function() {
//console.log('kmd wallet dashbaord button clicked...');
$('#kmd_wallet_dashoard_section').show();
getTotalKMDBalance();
getKMDWalletInfo();
getKMDInfo();
});
}
return {
//main function to initiate the module
init: function() {
handle_KMD_Dashboard();
RunInitFunctions();
}
};
}();
jQuery(document).ready(function() {
//KMDWalletDashboard.init();
});
function RunInitFunctions() {
getTotalKMDBalance();
getKMDWalletInfo();
getKMDInfo();
}
function getTotalKMDBalance() {
var ajax_data = {"agent":"komodo","method":"passthru","function":"z_gettotalbalance","hex":"3100"}
console.log(ajax_data);
$.ajax({
type: 'POST',
data: JSON.stringify(ajax_data),
url: 'http://127.0.0.1:7778',
//dataType: 'text',
success: function(data, textStatus, jqXHR) {
var AjaxOutputData = JSON.parse(data);
//console.log('== Data OutPut ==');
//console.log(AjaxOutputData);
$('#kmd_transparent_balance').text(AjaxOutputData.transparent);
$('#kmd_private_balance').text(AjaxOutputData.private);
$('#kmd_total_tz_balance').text(AjaxOutputData.total);
},
error: function(xhr, textStatus, error) {
console.log('failed getting Coin History.');
console.log(xhr.statusText);
if ( xhr.readyState == 0 ) {
Iguana_ServiceUnavailable();
}
console.log(textStatus);
console.log(error);
}
});
}
function getKMDBalanceT() {
var ajax_data = {"agent":"komodo","method":"passthru","function":"getbalance","hex":""}
console.log(ajax_data);
$.ajax({
type: 'POST',
data: JSON.stringify(ajax_data),
url: 'http://127.0.0.1:7778',
//dataType: 'text',
success: function(data, textStatus, jqXHR) {
var AjaxOutputData = JSON.parse(data);
//console.log('== Data OutPut ==');
//console.log(AjaxOutputData);
//$('#kmd_transparent_balance').text(AjaxOutputData);
},
error: function(xhr, textStatus, error) {
console.log('failed getting Coin History.');
console.log(xhr.statusText);
if ( xhr.readyState == 0 ) {
Iguana_ServiceUnavailable();
}
console.log(textStatus);
console.log(error);
}
});
}
function getKMDBalanceZ() {
var ajax_data = {"agent":"komodo","method":"passthru","function":"z_getbalance","hex":""}
console.log(ajax_data);
$.ajax({
type: 'POST',
data: JSON.stringify(ajax_data),
url: 'http://127.0.0.1:7778',
//dataType: 'text',
success: function(data, textStatus, jqXHR) {
var AjaxOutputData = JSON.parse(data);
//console.log('== Data OutPut ==');
//console.log(AjaxOutputData);
//$('#kmd_private_balance').text(AjaxOutputData);
},
error: function(xhr, textStatus, error) {
console.log('failed getting Coin History.');
console.log(xhr.statusText);
if ( xhr.readyState == 0 ) {
Iguana_ServiceUnavailable();
}
console.log(textStatus);
console.log(error);
}
});
}
function getKMDWalletInfo() {
var ajax_data = {"agent":"komodo","method":"passthru","function":"getwalletinfo","hex":""}
console.log(ajax_data);
$.ajax({
type: 'POST',
data: JSON.stringify(ajax_data),
url: 'http://127.0.0.1:7778',
//dataType: 'text',
success: function(data, textStatus, jqXHR) {
var AjaxOutputData = JSON.parse(data);
//console.log('== Data OutPut ==');
//console.log(AjaxOutputData);
$('#kmd_walletversion').text(AjaxOutputData.walletversion);
$('#kmd_balance').text(AjaxOutputData.balance);
$('#kmd_unconfirmed_balance').text(AjaxOutputData.unconfirmed_balance);
$('#kmd_immature_balance').text(AjaxOutputData.immature_balance);
$('#KMDTotalTransactionsCount').text(AjaxOutputData.txcount);
},
error: function(xhr, textStatus, error) {
console.log('failed getting Coin History.');
console.log(xhr.statusText);
if ( xhr.readyState == 0 ) {
Iguana_ServiceUnavailable();
}
console.log(textStatus);
console.log(error);
}
});
}
function getKMDInfo() {
var ajax_data = {"agent":"komodo","method":"passthru","function":"getinfo","hex":""}
console.log(ajax_data);
$.ajax({
type: 'POST',
data: JSON.stringify(ajax_data),
url: 'http://127.0.0.1:7778',
//dataType: 'text',
success: function(data, textStatus, jqXHR) {
var AjaxOutputData = JSON.parse(data);
//console.log('== Data OutPut ==');
//console.log(AjaxOutputData);
$('#kmd_version').text(AjaxOutputData.version);
$('#kmd_protocolversion').text(AjaxOutputData.protocolversion);
$('#kmd_notarized').text(AjaxOutputData.notarized);
$('#kmd_notarizedhash').text(AjaxOutputData.notarizedhash);
$('#kmd_notarizedbtc').text(AjaxOutputData.notarizedbtc);
$('#kmd_blocks').text(AjaxOutputData.blocks);
$('#kmd_connections').text(AjaxOutputData.connections);
$('#kmd_difficulty').text(AjaxOutputData.difficulty);
$('#kmd_testnet').text(AjaxOutputData.testnet);
$('#kmd_paytxfee').text(AjaxOutputData.paytxfee);
$('#kmd_relayfee').text(AjaxOutputData.relayfee);
$('#kmd_errors').text(AjaxOutputData.errors);
},
error: function(xhr, textStatus, error) {
console.log('failed getting Coin History.');
console.log(xhr.statusText);
if ( xhr.readyState == 0 ) {
Iguana_ServiceUnavailable();
}
console.log(textStatus);
console.log(error);
}
});
}
function KMDlistunspentT() {
var result = [];
var ajax_data = {"agent":"komodo","method":"passthru","function":"listunspent","hex":""}
//console.log(ajax_data);
$.ajax({
async: false,
type: 'POST',
data: JSON.stringify(ajax_data),
url: 'http://127.0.0.1:7778',
//dataType: 'text',
success: function(data, textStatus, jqXHR) {
var AjaxOutputData = JSON.parse(data); //Ajax output gets the whole list of unspent coin with addresses
//console.log('== Data OutPut ==');
//console.log(AjaxOutputData);
var unique_addresses = _.keys(_.countBy(AjaxOutputData, function(data) { return data.address; })); //This code using undscore.js takes only the address into an array which are unique in that list
// This function calls each unique address and calculates the total amount of coins in it.
$.each(unique_addresses, function(index) {
//console.log(unique_addresses[index]);
var unique_addr_tmp_array = _.where(AjaxOutputData, {address: unique_addresses[index]});
//console.log(unique_addr_tmp_array);
var tmpcalcnum = 0;
$.each(unique_addr_tmp_array, function(index, value) {
//console.log(value.amount);
tmpcalcnum = tmpcalcnum + value.amount;
});
//console.log(tmpcalcnum);
var tmp_addr_total_balance_output = {"addr": unique_addr_tmp_array[0].address, "total": tmpcalcnum};
//console.log(tmp_addr_total_balance_output);
result.push(tmp_addr_total_balance_output);
});
},
error: function(xhr, textStatus, error) {
console.log('failed getting Coin History.');
console.log(xhr.statusText);
if ( xhr.readyState == 0 ) {
Iguana_ServiceUnavailable();
}
console.log(textStatus);
console.log(error);
}
});
//console.log(result);
return result;
}