2017-10-19 06:43:14 -07:00
/*** Simple GUI JS ***/
2017-11-04 07:57:53 -07:00
var CheckOrderbook _Interval = null ;
var CheckPortfolio _Interval = null ;
2017-10-19 06:43:14 -07:00
var check _coin _balance _Interval = null ;
2017-11-04 10:53:15 -07:00
var check _swap _status _Internal = null ;
var check _my _prices _Internal = null ;
2017-11-04 13:45:26 -07:00
var check _bot _list _Internal = null ;
2017-10-19 06:43:14 -07:00
var coin _pair = [ "BTC" , "KMD" ]
$ ( '.coin.pair-one' ) . html ( coin _pair [ 0 ] ) ;
$ ( '.coin.pair-two' ) . html ( coin _pair [ 1 ] ) ;
2017-11-04 07:57:53 -07:00
/ * $ . e a c h ( $ ( ' . p a i r - o n e [ d a t a - c o i n ] ' ) , f u n c t i o n ( i n d e x , v a l u e ) {
2017-10-19 06:43:14 -07:00
$ ( '.pair-one[data-coin]' ) . attr ( 'data-coin' , coin _pair [ 0 ] ) ;
} ) ;
$ . each ( $ ( '.pair-two[data-coin]' ) , function ( index , value ) {
$ ( '.pair-two[data-coin]' ) . attr ( 'data-coin' , coin _pair [ 1 ] ) ;
2017-11-04 07:57:53 -07:00
} ) ; * /
2017-10-19 06:43:14 -07:00
$ ( document ) . ready ( function ( ) {
var mmstatus = ShepherdIPC ( { "command" : "mmstatus" } ) ;
if ( mmstatus !== 'closed' ) {
$ ( '.mainbody' ) . show ( ) ;
$ ( '.loginbody' ) . hide ( ) ;
//var refresh_data = {"coin":" ", "status": "enable"};
//enable_disable_coin(refresh_data);
//get_myprices();
2017-11-04 07:57:53 -07:00
//check_coin_balance_Interval = setInterval(check_coin_balance,3000);
//check_coin_balance();
CheckPortfolio _Interval = setInterval ( CheckPortfolioFn , 60000 ) ;
CheckPortfolioFn ( ) ;
2017-10-19 06:43:14 -07:00
} else {
$ ( '.mainbody' ) . hide ( ) ;
$ ( '.loginbody' ) . show ( ) ;
}
//$('.set_goal_label_portfolio').html($('.sell_coin_p').selectpicker('val'));
} ) ;
2017-11-04 07:57:53 -07:00
$ ( '.porfolio_coins_list tbody' ) . on ( 'click' , '.btn-portfoliogo' , function ( ) {
console . log ( 'portfolio coin button clicked' )
console . log ( $ ( this ) . data ( ) ) ;
console . log ( $ ( this ) . data ( 'coin' ) ) ;
$ ( '.screen-portfolio' ) . hide ( ) ;
$ ( '.screen-coindashboard' ) . show ( )
coin = $ ( this ) . data ( 'coin' ) ;
$ . each ( $ ( '.coindashboard[data-coin]' ) , function ( index , value ) {
$ ( '.coindashboard[data-coin]' ) . attr ( 'data-coin' , coin ) ;
} ) ;
2017-11-04 13:45:26 -07:00
$ . each ( $ ( '.coinexchange[data-coin]' ) , function ( index , value ) {
$ ( '.coinexchange[data-coin]' ) . attr ( 'data-coin' , coin ) ;
} ) ;
2017-11-04 07:57:53 -07:00
selected _coin = { }
selected _coin . coin = $ ( this ) . data ( 'coin' ) ;
selected _coin . coin _name = $ ( this ) . data ( 'coinname' ) ;
selected _coin . addr = $ ( this ) . data ( 'addr' ) ;
console . log ( selected _coin ) ;
sessionStorage . setItem ( 'mm_selectedcoin' , JSON . stringify ( selected _coin ) ) ;
CheckPortfolioFn ( false ) ;
check _coin _balance _Interval = setInterval ( check _coin _balance ( $ ( this ) . data ( ) ) , 3000 ) ;
} ) ;
$ ( '.btn_coindashboard_back' ) . click ( function ( ) {
console . log ( 'btn_coindashboard_back clicked' ) ;
console . log ( $ ( this ) . data ( ) ) ;
2017-10-19 06:43:14 -07:00
2017-11-04 07:57:53 -07:00
$ ( '.screen-portfolio' ) . show ( ) ;
$ ( '.screen-coindashboard' ) . hide ( )
2017-10-19 06:43:14 -07:00
2017-11-04 07:57:53 -07:00
check _coin _balance ( false ) ;
CheckPortfolioFn ( ) ;
CheckPortfolio _Interval = setInterval ( CheckPortfolioFn , 60000 ) ;
} ) ;
2017-10-19 06:43:14 -07:00
2017-11-04 07:57:53 -07:00
$ ( '.btn_coindashboard_receive' ) . click ( function ( ) {
2017-10-19 06:43:14 -07:00
console . log ( 'btn-receive clicked' ) ;
2017-11-04 07:57:53 -07:00
console . log ( $ ( this ) . data ( ) ) ;
coin = $ ( this ) . data ( 'coin' ) ;
2017-10-19 06:43:14 -07:00
2017-11-04 07:57:53 -07:00
var coin _name = return _coin _name ( coin ) ;
var userpass = sessionStorage . getItem ( 'mm_userpass' ) ;
var ajax _data = { "userpass" : userpass , "method" : "getcoin" , "coin" : coin } ;
var url = "http://127.0.0.1:7783" ;
2017-10-19 06:43:14 -07:00
2017-11-04 07:57:53 -07:00
$ . ajax ( {
async : true ,
data : JSON . stringify ( ajax _data ) ,
dataType : 'json' ,
type : 'POST' ,
url : url
} ) . done ( function ( data ) {
// If successful
console . log ( data ) ;
if ( ! data . userpass === false ) {
console . log ( 'first marketmaker api call execution after marketmaker started.' )
sessionStorage . setItem ( 'mm_usercoins' , JSON . stringify ( data . coins ) ) ;
sessionStorage . setItem ( 'mm_userpass' , data . userpass ) ;
sessionStorage . setItem ( 'mm_mypubkey' , data . mypubkey ) ;
}
bootbox . dialog ( {
//title: 'A custom dialog with init',
message : '<div style="text-align: center; margin-top: -40px;"><img src="img/cryptologo/' + coin + '.png" style="border: 10px solid #fff;border-radius: 50px; background: #fff;"/></div><div style="text-align: center;"><div id="receive_addr_qrcode"></div><pre style="font-size: 18px;">' + data . coin . smartaddress + '</pre class="receive_addr_qrcode_addr"></div>'
} ) ;
var qrcode = new QRCode ( "receive_addr_qrcode" ) ;
qrcode . makeCode ( data . coin . smartaddress ) ; // make another code.
$ ( '#receive_addr_qrcode > img' ) . removeAttr ( 'style' ) ;
$ ( '#receive_addr_qrcode > img' ) . css ( 'display' , 'initial' ) ;
$ ( '#receive_addr_qrcode > img' ) . css ( 'border' , '9px solid #f1f1f1' , 'border-radius' , '5px' , 'margin' , '5px' ) ;
$ ( '#receive_addr_qrcode > img' ) . css ( 'border-radius' , '5px' ) ;
$ ( '#receive_addr_qrcode > img' ) . css ( 'margin' , '5px' ) ;
} ) . fail ( function ( jqXHR , textStatus , errorThrown ) {
// If fail
console . log ( textStatus + ': ' + errorThrown ) ;
2017-10-19 06:43:14 -07:00
} ) ;
} )
2017-11-04 07:57:53 -07:00
$ ( '.btn_coindashboard_enable' ) . click ( function ( ) {
2017-10-19 06:43:14 -07:00
console . log ( 'btn-enable clicked' ) ;
//console.log($(this).data());
2017-11-04 07:57:53 -07:00
var electrum _option = $ ( '#coindashboard-toggle' ) . prop ( 'checked' ) ;
2017-10-19 06:43:14 -07:00
//console.log(electrum_option);
var enable _data = $ ( this ) . data ( ) ;
enable _data [ 'electrum' ] = electrum _option ;
//console.log(enable_data);
enable _disable _coin ( enable _data ) ;
} ) ;
2017-11-04 07:57:53 -07:00
$ ( '.btn_coindashboard_disable' ) . click ( function ( ) {
2017-10-19 06:43:14 -07:00
console . log ( 'btn-disable clicked' ) ;
//console.log($(this).data());
2017-11-04 07:57:53 -07:00
var electrum _option = $ ( '#coindashboard-toggle' ) . prop ( 'checked' ) ;
2017-10-19 06:43:14 -07:00
//console.log(electrum_option);
var enable _data = $ ( this ) . data ( ) ;
enable _data [ 'electrum' ] = electrum _option ;
//console.log(enable_data);
enable _disable _coin ( enable _data ) ;
} ) ;
2017-10-26 02:56:05 -07:00
2017-11-04 07:57:53 -07:00
$ ( '.btn_coindashboard_send' ) . click ( function ( e ) {
2017-10-26 02:56:05 -07:00
e . preventDefault ( ) ;
console . log ( 'btn-send clicked' ) ;
console . log ( $ ( this ) . data ( ) ) ;
2017-11-04 07:57:53 -07:00
$ ( '.screen-coindashboard' ) . hide ( )
2017-10-26 02:56:05 -07:00
$ ( '.screen-sendcoin' ) . show ( ) ;
check _coin _balance ( false ) ;
2017-11-04 07:57:53 -07:00
$ ( '.sendcoin-title' ) . html ( 'Send (' + $ ( '.coindashboard-balance' ) . html ( ) + ' ' + $ ( this ) . data ( 'coin' ) + ')' ) ;
2017-10-26 02:56:05 -07:00
$ ( '.sendcoin-title' ) . data ( 'coin' , $ ( this ) . data ( 'coin' ) ) ;
} ) ;
$ ( '.btn-sendcoin' ) . click ( function ( e ) {
e . preventDefault ( ) ;
console . log ( 'btn-sendcoin clicked' ) ;
//console.log($(this).data());
2017-11-04 07:57:53 -07:00
var selected _coin = JSON . parse ( sessionStorage . getItem ( 'mm_selectedcoin' ) ) ;
var coin = selected _coin . coin ;
2017-10-26 02:56:05 -07:00
console . log ( coin ) ;
var to _addr = $ ( '#send-toaddr' ) . val ( ) ;
var send _amount = $ ( '#send-amount' ) . val ( ) ;
//console.log(to_addr);
//console.log(send_amount);
var output _data = { } ;
output _data [ to _addr ] = send _amount ;
//console.log(output_data);
var userpass = sessionStorage . getItem ( 'mm_userpass' ) ;
var ajax _data = { "userpass" : userpass , "method" : "withdraw" , "coin" : coin , "outputs" : [ output _data ] } ;
var url = "http://127.0.0.1:7783" ;
console . log ( ajax _data ) ;
2017-10-27 00:18:01 -07:00
var a1 = $ . ajax ( {
async : true ,
data : JSON . stringify ( ajax _data ) ,
dataType : 'json' ,
type : 'POST' ,
url : url
} ) ,
a2 = a1 . then ( function ( data ) {
// .then() returns a new promise
console . log ( data ) ;
if ( data . complete == false ) {
toastr . error ( 'Uncessful Transaction. Please try again.' , 'Tansaction info' ) ;
}
if ( data . complete == true ) {
bootbox . confirm ( {
message : ` <b>Send</b>: ` + send _amount + ` ` + ajax _data . coin + ` <br>
< b > To < / b > : ` + t o _ a d d r + ` < b r > ` ,
buttons : {
confirm : {
label : 'Confirm' ,
className : 'btn-primary'
} ,
cancel : {
label : 'Cancel' ,
className : 'btn-default'
}
} ,
callback : function ( result ) {
console . log ( 'This was logged in the callback: ' + result ) ;
if ( result == true ) {
var ajax _data2 = { "userpass" : userpass , "method" : "sendrawtransaction" , "coin" : coin , "signedtx" : data . hex } ;
console . log ( ajax _data2 ) ;
toastr . info ( 'Transaction Executed' , 'Transaction Status' ) ;
2017-11-04 07:57:53 -07:00
$ . ajax ( {
2017-10-27 00:18:01 -07:00
async : true ,
data : JSON . stringify ( ajax _data2 ) ,
dataType : 'json' ,
type : 'POST' ,
url : url
} )
} else {
console . log ( 'Sending Transaction operation canceled.' ) ;
return { 'output' : 'canceled' } ;
}
}
2017-10-26 02:56:05 -07:00
} ) ;
}
} ) ;
2017-10-27 00:18:01 -07:00
a2 . done ( function ( data ) {
console . log ( data ) ;
} ) ;
} ) ;
2017-10-19 06:43:14 -07:00
2017-10-26 02:56:05 -07:00
$ ( '.btn-sendcoinclose' ) . click ( function ( e ) {
e . preventDefault ( ) ;
console . log ( 'btn-sendcoinclose clicked' ) ;
console . log ( $ ( this ) . data ( ) ) ;
2017-11-04 07:57:53 -07:00
$ ( '.screen-coindashboard' ) . show ( )
2017-10-26 02:56:05 -07:00
$ ( '.screen-sendcoin' ) . hide ( ) ;
$ ( '#send-toaddr' ) . val ( '' ) ;
$ ( '#send-amount' ) . val ( '' ) ;
check _coin _balance _Interval = setInterval ( check _coin _balance , 3000 ) ;
} ) ;
2017-10-19 06:43:14 -07:00
2017-11-04 07:57:53 -07:00
$ ( '.btn_coindashboard_inventory' ) . click ( function ( e ) {
2017-10-26 03:28:48 -07:00
e . preventDefault ( ) ;
console . log ( 'btn-inventory clicked' ) ;
2017-11-04 07:57:53 -07:00
console . log ( $ ( this ) . data ( ) ) ;
var selected _coin = JSON . parse ( sessionStorage . getItem ( 'mm_selectedcoin' ) ) ;
var coin = selected _coin . coin ;
console . log ( coin ) ;
$ ( '.screen-coindashboard' ) . hide ( )
2017-10-26 03:28:48 -07:00
$ ( '.screen-inventory' ) . show ( ) ;
check _coin _balance ( false ) ;
2017-11-04 07:57:53 -07:00
$ ( '.inventory-title' ) . html ( 'Manage Inventory (' + $ ( '.coindashboard-balance' ) . html ( ) + ' ' + coin + ')' ) ;
$ ( '.inventory-title' ) . data ( 'coin' , coin ) ;
$ ( '.coininventory[data-coin]' ) . attr ( 'data-coin' , coin ) ;
//$('.coininventory[data-coin]').attr('data-pair', $(this).data('pair'));
$ ( '.coininventory[data-coin]' ) . attr ( 'data-addr' , selected _coin . addr ) ;
$ ( '.inventory-sliderTotalCoin' ) . html ( ' ' + coin ) ;
2017-10-27 00:18:01 -07:00
2017-11-01 02:00:04 -07:00
$ ( '.dex_showinv_alice_tbl tbody' ) . html ( '<th><div style="text-align: center;">Loading...</div></th>' ) ;
$ ( '.dex_showlist_unspents_tbl tbody' ) . html ( '<th><div style="text-align: center;">Loading...</div></th>' ) ;
2017-11-04 07:57:53 -07:00
check _coin _inventory ( coin ) ;
2017-11-01 02:00:04 -07:00
check _coin _listunspent ( $ ( this ) . data ( ) ) ;
2017-10-27 00:18:01 -07:00
2017-11-04 07:57:53 -07:00
calc _data = { "coin" : coin , "balance" : $ ( '.coindashboard-balance' ) . html ( ) } ;
2017-10-27 00:18:01 -07:00
clac _coin _inventory ( calc _data ) ;
2017-10-26 03:28:48 -07:00
} ) ;
$ ( '.btn-inventoryclose' ) . click ( function ( e ) {
e . preventDefault ( ) ;
console . log ( 'btn-inventoryclose clicked' ) ;
2017-10-27 03:44:54 -07:00
//console.log($(this).data());
2017-11-04 07:57:53 -07:00
$ ( '.screen-coindashboard' ) . show ( )
2017-10-26 03:28:48 -07:00
$ ( '.screen-inventory' ) . hide ( ) ;
2017-10-27 00:18:01 -07:00
$ ( '.dex_showinv_alice_tbl tbody' ) . empty ( ) ;
2017-11-01 02:00:04 -07:00
$ ( '.dex_showlist_unspents_tbl tbody' ) . empty ( ) ;
2017-10-27 00:18:01 -07:00
$ ( '.RawJSONInventory-output' ) . empty ( ) ;
2017-10-26 03:28:48 -07:00
check _coin _balance _Interval = setInterval ( check _coin _balance , 3000 ) ;
} ) ;
2017-10-27 00:18:01 -07:00
$ ( '.btn-inventoryrefresh' ) . click ( function ( e ) {
e . preventDefault ( ) ;
console . log ( 'btn-inventoryrefresh clicked' ) ;
2017-11-01 02:00:04 -07:00
console . log ( $ ( this ) . data ( ) ) ;
$ ( '.dex_showinv_alice_tbl tbody' ) . html ( '<th><div style="text-align: center;">Loading...</div></th>' ) ;
$ ( '.dex_showlist_unspents_tbl tbody' ) . html ( '<th><div style="text-align: center;">Loading...</div></th>' ) ;
2017-10-27 00:18:01 -07:00
check _coin _inventory ( $ ( this ) . data ( 'coin' ) ) ;
2017-11-01 02:00:04 -07:00
check _coin _listunspent ( $ ( this ) . data ( ) ) ;
2017-10-27 00:18:01 -07:00
} ) ;
$ ( '.dex_showinv_alice_tbl tbody' ) . on ( 'click' , '.btn_coiniventory_detail' , function ( ) {
2017-10-27 03:44:54 -07:00
//console.log($(this).data());
2017-10-27 00:18:01 -07:00
var index = $ ( this ) . data ( 'index' ) ;
var coininventory = sessionStorage . getItem ( 'mm_coininventory' ) ;
coininventory = JSON . parse ( coininventory ) ;
console . log ( coininventory . alice [ index ] ) ;
bootbox . dialog ( {
message : `
< table class = "table table-striped" >
< tbody >
< tr >
< th rowspan = "13" style = "width: 30px;" > ` + index + ` < / t h >
< th > method < / t h >
< th > ` + coininventory.alice[index].method + ` < / t h >
< / t r >
< tr >
< td > gui < / t d >
< td > ` + coininventory.alice[index].gui + ` < / t d >
< / t r >
< tr >
< td > coin < / t d >
< td > ` + coininventory.alice[index].coin + ` < / t d >
< / t r >
< tr >
< td > iambob < / t d >
< td > ` + coininventory.alice[index].iambob + ` < / t d >
< / t r >
< tr >
< td > address < / t d >
< td > ` + coininventory.alice[index].address + ` < / t d >
< / t r >
< tr >
< td > txid < / t d >
< td > ` + coininventory.alice[index].txid + ` < / t d >
< / t r >
< tr >
< td > vout < / t d >
< td > ` + coininventory.alice[index].vout + ` < / t d >
< / t r >
< tr >
< td > value < / t d >
< td > ` + (parseFloat(coininventory.alice[index].value)/100000000).toFixed(8) + ` ` + coininventory.alice[index].coin + ` < / t d >
< / t r >
< tr >
< td > satoshis < / t d >
< td > ` + coininventory.alice[index].satoshis + ` < / t d >
< / t r >
< tr >
< td > txid2 < / t d >
< td > ` + coininventory.alice[index].txid2 + ` < / t d >
< / t r >
< tr >
< td > vout2 < / t d >
< td > ` + coininventory.alice[index].vout2 + ` < / t d >
< / t r >
< tr >
< td > value2 < / t d >
< td > ` + (parseFloat(coininventory.alice[index].value2)/100000000).toFixed(8) + ` ` + coininventory.alice[index].coin + ` < / t d >
< / t r >
< tr >
< td > desthash < / t d >
< td > ` + coininventory.alice[index].desthash + ` < / t d >
< / t r >
< / t b o d y >
< / t a b l e > ` ,
closeButton : true ,
size : 'large'
} ) ;
} ) ;
2017-10-26 03:28:48 -07:00
2017-10-19 06:43:14 -07:00
2017-10-27 02:08:57 -07:00
$ ( '.btn-makeinventory' ) . click ( function ( e ) {
e . preventDefault ( ) ;
console . log ( 'btn-makeinventory clicked' ) ;
2017-10-27 03:44:54 -07:00
//console.log($(this).data());
utxo _input1 = $ ( "#inventory_slider_input1" ) . val ( ) ;
utxo _input2 = $ ( "#inventory_slider_input2" ) . val ( ) ;
utxo _input3 = $ ( "#inventory_slider_input3" ) . val ( ) ;
//console.log(utxo_input1);
//console.log(utxo_input2);
//console.log(utxo_input3);
var slider _input1 = $ ( '#inventory-slider1' ) . val ( ) ;
var slider _input2 = $ ( '#inventory-slider2' ) . val ( ) ;
var slider _input3 = $ ( '#inventory-slider3' ) . val ( ) ;
//console.log(slider_input1);
//console.log(slider_input2);
//console.log(slider_input3);
2017-11-04 07:57:53 -07:00
var selected _coin = JSON . parse ( sessionStorage . getItem ( 'mm_selectedcoin' ) ) ;
var coin _addr = selected _coin . addr ;
console . log ( coin _addr ) ;
2017-10-27 03:44:54 -07:00
var withdraw _outputs = [ ]
for ( var i = 0 ; i < slider _input1 ; i ++ ) {
var tmp _json = { }
2017-11-04 07:57:53 -07:00
tmp _json [ coin _addr ] = utxo _input1
2017-10-27 03:44:54 -07:00
//console.log(tmp_json)
withdraw _outputs . push ( tmp _json )
}
for ( var i = 0 ; i < slider _input2 ; i ++ ) {
var tmp _json = { }
2017-11-04 07:57:53 -07:00
tmp _json [ coin _addr ] = utxo _input2
2017-10-27 03:44:54 -07:00
withdraw _outputs . push ( tmp _json )
}
for ( var i = 0 ; i < slider _input3 ; i ++ ) {
var tmp _json = { }
2017-11-04 07:57:53 -07:00
tmp _json [ coin _addr ] = utxo _input3
2017-10-27 03:44:54 -07:00
withdraw _outputs . push ( tmp _json )
}
//console.log(withdraw_outputs);
inventory _data = { } ;
inventory _data [ 'coin' ] = $ ( this ) . data ( 'coin' ) ;
inventory _data [ 'outputs' ] = withdraw _outputs ;
2017-11-04 07:57:53 -07:00
console . log ( inventory _data ) ;
2017-10-27 03:44:54 -07:00
make _inventory _withdraw ( inventory _data ) ;
2017-10-27 02:08:57 -07:00
} ) ;
2017-11-01 02:00:04 -07:00
2017-11-04 07:57:53 -07:00
$ ( '.btn_coindashboard_exchange' ) . click ( function ( e ) {
2017-11-01 02:00:04 -07:00
e . preventDefault ( ) ;
console . log ( 'btn-makeinventory clicked' ) ;
console . log ( $ ( this ) . data ( ) ) ;
2017-11-04 07:57:53 -07:00
var selected _coin = JSON . parse ( sessionStorage . getItem ( 'mm_selectedcoin' ) ) ;
console . log ( selected _coin ) ;
var coin = selected _coin . coin ;
$ ( '.screen-coindashboard' ) . hide ( )
2017-11-01 02:00:04 -07:00
$ ( '.screen-exchange' ) . show ( ) ;
2017-11-04 07:57:53 -07:00
$ ( '.coin_ticker' ) . html ( coin ) ;
2017-11-04 13:45:26 -07:00
$ . each ( $ ( '.coinexchange[data-coin]' ) , function ( index , value ) {
$ ( '.coinexchange[data-coin]' ) . attr ( 'data-coin' , coin ) ;
} ) ;
/ * $ ( ' . b t n - e x c h a n g e c l o s e ' ) . a t t r ( ' d a t a - c o i n ' , c o i n ) ;
2017-11-04 07:57:53 -07:00
$ ( '.btn-exchangerefresh' ) . attr ( 'data-coin' , coin ) ;
2017-11-04 10:53:15 -07:00
$ ( '.btn-myordersrefresh' ) . attr ( 'data-coin' , coin ) ;
2017-11-04 13:45:26 -07:00
$ ( '.btn-botlistrefresh' ) . attr ( 'data-coin' , coin ) ;
$ ( '.btn-refreshtrading_pair' ) . attr ( 'data-coin' , coin ) ; * /
2017-11-04 07:57:53 -07:00
check _coin _balance ( false ) ;
CheckOrderbook _Interval = setInterval ( CheckOrderBookFn , 3000 ) ;
2017-11-04 13:45:26 -07:00
check _swap _status _Internal = setInterval ( check _swap _status , 10000 ) ;
check _bot _list _Internal = setInterval ( check _bot _list , 60000 ) ;
2017-11-01 02:00:04 -07:00
} ) ;
2017-11-04 07:57:53 -07:00
$ ( '.btn-exchangeclose' ) . click ( function ( e ) {
e . preventDefault ( ) ;
console . log ( 'btn-exchangeclose clicked' ) ;
console . log ( $ ( this ) . data ( ) ) ;
$ ( '.screen-coindashboard' ) . show ( )
$ ( '.screen-exchange' ) . hide ( ) ;
CheckOrderBookFn ( false ) ;
2017-11-04 10:53:15 -07:00
check _swap _status ( false ) ;
2017-11-04 13:45:26 -07:00
check _bot _list ( false ) ;
2017-11-04 07:57:53 -07:00
check _coin _balance _Interval = setInterval ( check _coin _balance ( $ ( this ) . data ( ) ) , 3000 ) ;
check _coin _balance ( $ ( this ) . data ( ) ) ;
} ) ;
$ ( '.btn-exchangerefresh' ) . click ( function ( e ) {
e . preventDefault ( ) ;
console . log ( 'btn-exchangerefresh clicked' ) ;
console . log ( $ ( this ) . data ( ) ) ;
CheckOrderBookFn ( ) ;
} ) ;
2017-11-04 10:53:15 -07:00
$ ( '.btn-myordersrefresh' ) . click ( function ( e ) {
e . preventDefault ( ) ;
console . log ( 'btn-myordersrefresh clicked' ) ;
console . log ( $ ( this ) . data ( ) ) ;
check _my _prices ( ) ;
} ) ;
2017-11-04 13:45:26 -07:00
$ ( '.btn-botlistrefresh' ) . click ( function ( e ) {
e . preventDefault ( ) ;
console . log ( 'btn-botlistrefresh clicked' ) ;
console . log ( $ ( this ) . data ( ) ) ;
check _bot _list ( ) ;
} ) ;
$ ( '.btn-bot_action' ) . click ( function ( e ) {
e . preventDefault ( ) ;
console . log ( 'btn-botlistrefresh clicked' ) ;
console . log ( $ ( this ) . data ( ) ) ;
console . log ( $ ( this ) . data ( 'action' ) ) ;
pair _price = $ ( '.trading_pair_coin_price' ) . val ( ) ;
pair _volume = $ ( '.trading_pair_coin_volume' ) . val ( ) ;
bot _data = { }
bot _data . price = pair _price ;
bot _data . volume = pair _volume ;
bot _data . action = $ ( this ) . data ( 'action' ) ;
console . log ( bot _data ) ;
bot _buy _sell ( bot _data ) ;
} ) ;
$ ( '.exchange_bot_list_tbl tbody' ) . on ( 'click' , '.btn_bot_status' , function ( ) {
console . log ( 'bot status button clicked' )
console . log ( $ ( this ) . data ( ) ) ;
} ) ;
$ ( '.exchange_bot_list_tbl tbody' ) . on ( 'click' , '.btn_bot_resume' , function ( ) {
console . log ( 'bot resume button clicked' )
console . log ( $ ( this ) . data ( ) ) ;
bot _stop _pause _resume ( $ ( this ) . data ( ) ) ;
} ) ;
$ ( '.exchange_bot_list_tbl tbody' ) . on ( 'click' , '.btn_bot_pause' , function ( ) {
console . log ( 'bot pause button clicked' )
console . log ( $ ( this ) . data ( ) ) ;
bot _stop _pause _resume ( $ ( this ) . data ( ) ) ;
} ) ;
$ ( '.exchange_bot_list_tbl tbody' ) . on ( 'click' , '.btn_bot_stop' , function ( ) {
console . log ( 'bot stop button clicked' )
console . log ( $ ( this ) . data ( ) ) ;
bot _stop _pause _resume ( $ ( this ) . data ( ) ) ;
} ) ;
$ ( '.exchange_bot_list_tbl tbody' ) . on ( 'click' , '.btn_bot_settings' , function ( ) {
console . log ( 'bot settings button clicked' )
console . log ( $ ( this ) . data ( ) ) ;
} ) ;
2017-11-04 10:53:15 -07:00
2017-11-04 07:57:53 -07:00
function check _coin _balance ( coin _data ) {
console . log ( coin _data ) ;
if ( coin _data == false ) {
2017-10-19 06:43:14 -07:00
clearInterval ( check _coin _balance _Interval ) ;
2017-10-26 02:56:05 -07:00
console . log ( 'checking coin balance stopped.' )
2017-11-04 07:57:53 -07:00
return
2017-10-19 06:43:14 -07:00
} else {
console . log ( 'checking coin balance' ) ;
}
2017-11-04 07:57:53 -07:00
var selected _coin = JSON . parse ( sessionStorage . getItem ( 'mm_selectedcoin' ) ) ;
console . log ( selected _coin ) ;
var coin = selected _coin . coin ;
console . log ( coin ) ;
2017-10-19 06:43:14 -07:00
2017-11-04 07:57:53 -07:00
if ( ( ( coin _data == null ) ? coin : coin _data . coin ) == 'BTC' ) {
$ ( '#coindashboard-toggle' ) . bootstrapToggle ( 'enable' ) ;
} else {
$ ( '#coindashboard-toggle' ) . bootstrapToggle ( 'disable' ) ;
}
2017-10-19 06:43:14 -07:00
2017-11-04 07:57:53 -07:00
$ ( '.coindashboard-title' ) . empty ( ) ;
$ ( '.coindashboard-coin' ) . empty ( ) ;
$ ( '.coindashboard-balance' ) . empty ( ) ;
$ ( '.coindashboard-address[data-coin="' + ( ( coin _data == null ) ? coin : coin _data . coin ) + '"]' ) . empty ( ) ;
$ ( ".coindashboard-coinicon" ) . attr ( "src" , "img/cryptologo/" + ( ( coin _data == null ) ? coin : coin _data . coin ) . toLowerCase ( ) + ".png" ) ;
2017-10-19 06:43:14 -07:00
2017-11-04 07:57:53 -07:00
var coin _name = return _coin _name ( ( ( coin _data == null ) ? coin : coin _data . coin ) ) ;
2017-10-19 06:43:14 -07:00
2017-11-04 07:57:53 -07:00
var userpass = sessionStorage . getItem ( 'mm_userpass' ) ;
var ajax _data = { "userpass" : userpass , "method" : "getcoin" , "coin" : ( ( coin _data == null ) ? coin : coin _data . coin ) } ;
var url = "http://127.0.0.1:7783" ;
2017-10-19 06:43:14 -07:00
2017-11-04 07:57:53 -07:00
$ . ajax ( {
async : true ,
data : JSON . stringify ( ajax _data ) ,
dataType : 'json' ,
type : 'POST' ,
url : url
} ) . done ( function ( data ) {
// If successful
//console.log(data);
if ( ! data . userpass === false ) {
console . log ( 'first marketmaker api call execution after marketmaker started.' )
sessionStorage . setItem ( 'mm_usercoins' , JSON . stringify ( data . coins ) ) ;
sessionStorage . setItem ( 'mm_userpass' , data . userpass ) ;
sessionStorage . setItem ( 'mm_mypubkey' , data . mypubkey ) ;
}
2017-10-19 06:43:14 -07:00
2017-11-04 07:57:53 -07:00
if ( ! data . error === false && data . error == 'coin is disabled' ) {
console . log ( data . coin ) ;
console . log ( 'coin ' + data . coin . coin + ' is disabled' ) ;
$ ( '.btn_coindashboard_send[data-coin="' + data . coin . coin + '"]' ) . hide ( ) ;
$ ( '.btn_coindashboard_receive[data-coin="' + data . coin . coin + '"]' ) . hide ( ) ;
$ ( '.btn_coindashboard_exchange[data-coin="' + data . coin . coin + '"]' ) . hide ( ) ;
$ ( '.btn_coindashboard_inventory[data-coin="' + data . coin . coin + '"]' ) . hide ( ) ;
$ ( '.btn_coindashboard_enable[data-coin="' + data . coin . coin + '"]' ) . show ( ) ;
$ ( '.btn_coindashboard_disable[data-coin="' + data . coin . coin + '"]' ) . hide ( ) ;
2017-11-01 02:00:04 -07:00
2017-11-04 07:57:53 -07:00
$ ( '.coindashboard-balance' ) . html ( 'Coin is disabled.<br>Please enable before trading ' )
$ ( '.coindashboard-balance' ) . css ( "font-size" , "35px" ) ;
2017-11-01 02:00:04 -07:00
2017-11-04 07:57:53 -07:00
} else {
//console.log(data);
console . log ( data . coin ) ;
//console.log(data.coin.smartaddress);
//console.log(val);
2017-10-19 06:43:14 -07:00
2017-11-04 07:57:53 -07:00
$ ( '.btn_coindashboard_send[data-coin="' + data . coin . coin + '"]' ) . show ( ) ;
$ ( '.btn_coindashboard_receive[data-coin="' + data . coin . coin + '"]' ) . show ( ) ;
$ ( '.btn_coindashboard_exchange[data-coin="' + data . coin . coin + '"]' ) . show ( ) ;
$ ( '.btn_coindashboard_inventory[data-coin="' + data . coin . coin + '"]' ) . show ( ) ;
$ ( '.btn_coindashboard_enable[data-coin="' + data . coin . coin + '"]' ) . hide ( ) ;
$ ( '.btn_coindashboard_disable[data-coin="' + data . coin . coin + '"]' ) . show ( ) ;
$ ( '.coindashboard-address[data-coin="' + data . coin . coin + '"]' ) . html ( data . coin . smartaddress ) ;
$ ( '.coindashboard-title' ) . html ( coin _name + ' (' + data . coin . coin + ')' ) ;
$ ( '.coindashboard-coin' ) . html ( data . coin . coin ) ;
$ ( '.coindashboard-balance' ) . css ( "font-size" , "55px" ) ;
$ ( '.coindashboard-balance' ) . html ( data . coin . balance ) ;
$ ( '.coindashboard-height' ) . html ( data . coin . height ) ;
$ ( '.coindashboard-kmdvalue' ) . html ( data . coin . KMDvalue ) ;
$ ( '.btn_coindashboard_inventory[data-addr]' ) . attr ( 'data-addr' , data . coin . smartaddress ) ;
}
2017-10-19 06:43:14 -07:00
2017-11-04 07:57:53 -07:00
//if (data.error == 'coin is disabled') {
//console.log('coin '+ val + ' is disabled');
//}
} ) . fail ( function ( jqXHR , textStatus , errorThrown ) {
// If fail
console . log ( textStatus + ': ' + errorThrown ) ;
} ) ;
2017-10-19 06:43:14 -07:00
}
function get _balance ( ) {
var coin _pair _one = sessionStorage . getItem ( 'coin_pair_one' ) ;
var coin _pair _one = JSON . parse ( coin _pair _one ) ;
var coin _pair _two = sessionStorage . getItem ( 'coin_pair_two' ) ;
var coin _pair _two = JSON . parse ( coin _pair _two ) ;
//console.log(coin_pair_one);
//console.log(coin_pair_two);
$ . each ( [ coin _pair _one , coin _pair _two ] , function ( index , value ) {
//console.log(index);
//console.log(value.coin);
var userpass = sessionStorage . getItem ( 'mm_userpass' ) ;
var ajax _data = { "userpass" : userpass , "method" : "balance" , "coin" : value . coin , "address" : value . smartaddress } ;
var url = "http://127.0.0.1:7783" ;
$ . ajax ( {
2017-10-27 00:18:01 -07:00
async : true ,
2017-10-19 06:43:14 -07:00
data : JSON . stringify ( ajax _data ) ,
dataType : 'json' ,
type : 'POST' ,
url : url
} ) . done ( function ( data ) {
// If successful
//console.log(value.coin);
//console.log(data);
if ( ! data . userpass === false ) {
console . log ( 'first marketmaker api call execution after marketmaker started.' )
sessionStorage . setItem ( 'mm_usercoins' , JSON . stringify ( data . coins ) ) ;
sessionStorage . setItem ( 'mm_userpass' , data . userpass ) ;
sessionStorage . setItem ( 'mm_mypubkey' , data . mypubkey ) ;
}
if ( ! data . error == true ) {
if ( index == 0 ) {
$ ( '.balance.pair-one' ) . css ( "font-size" , "55px" ) ;
$ ( '.balance.pair-one' ) . html ( data . balance ) ;
} else {
$ ( '.balance.pair-two' ) . css ( "font-size" , "55px" ) ;
$ ( '.balance.pair-two' ) . html ( data . balance ) ;
}
}
} ) . fail ( function ( jqXHR , textStatus , errorThrown ) {
// If fail
console . log ( textStatus + ': ' + errorThrown ) ;
} ) ;
} )
}
2017-11-04 07:57:53 -07:00
function get _coins ( ) {
//console.log(data);
2017-10-19 06:43:14 -07:00
var userpass = sessionStorage . getItem ( 'mm_userpass' ) ;
2017-11-01 02:00:04 -07:00
var ajax _data = { "userpass" : userpass , "method" : "getcoins" } ;
2017-10-19 06:43:14 -07:00
var url = "http://127.0.0.1:7783" ;
$ . ajax ( {
2017-11-04 07:57:53 -07:00
async : true ,
2017-10-19 06:43:14 -07:00
data : JSON . stringify ( ajax _data ) ,
dataType : 'json' ,
type : 'POST' ,
url : url
} ) . done ( function ( data ) {
// If successful
2017-11-01 02:00:04 -07:00
console . log ( data ) ;
2017-11-04 07:57:53 -07:00
$ . each ( data , function ( index , val ) {
//console.log(index);
//console.log(val);
if ( val . status == 'active' ) {
console . log ( index ) ;
console . log ( val ) ;
}
} ) ;
2017-10-19 06:43:14 -07:00
if ( ! data . userpass === false ) {
console . log ( 'first marketmaker api call execution after marketmaker started.' )
sessionStorage . setItem ( 'mm_usercoins' , JSON . stringify ( data . coins ) ) ;
sessionStorage . setItem ( 'mm_userpass' , data . userpass ) ;
sessionStorage . setItem ( 'mm_mypubkey' , data . mypubkey ) ;
}
//toastr.success('Auto goal setup executed!', 'Portfolio Info')
//$('.initcoinswap-output').html(JSON.stringify(data, null, 2));
} ) . fail ( function ( jqXHR , textStatus , errorThrown ) {
// If fail
console . log ( textStatus + ': ' + errorThrown ) ;
} ) ;
}
function enable _disable _coin ( data ) {
console . log ( data ) ;
var electrum _option = data . electrum //If 'false', electrum option selected
var userpass = sessionStorage . getItem ( 'mm_userpass' ) ;
var url = "http://127.0.0.1:7783" ;
if ( electrum _option == false ) {
console . log ( electrum _option ) ;
console . log ( "electrum selected for " + data . coin ) ;
var ajax _data = { "userpass" : userpass , "method" : "electrum" , "coin" : data . coin , "ipaddr" : "46.4.125.2" , "port" : 50001 } ;
} else {
console . log ( electrum _option ) ;
console . log ( "native selected for " + data . coin ) ;
var ajax _data = { "userpass" : userpass , "method" : data . method , "coin" : data . coin } ;
}
/ * i f ( d a t a . c o i n ! = = ' ' ) {
console . log ( 'coin value is not empty' ) ;
} else {
console . log ( 'coin value is empty' ) ;
}
if ( data . coin !== ' ' && data . status == 'enable' ) {
} else if ( data . coin !== ' ' && data . status == 'disable' ) {
var ajax _data = { "userpass" : userpass , "method" : data . status , "coin" : data . coin } ;
} else if ( data . coin == ' ' ) {
var ajax _data = { "userpass" : userpass , "method" : "getcoins" } ;
} * /
console . log ( ajax _data ) ;
$ . ajax ( {
2017-10-27 00:18:01 -07:00
async : true ,
2017-10-19 06:43:14 -07:00
data : JSON . stringify ( ajax _data ) ,
dataType : 'json' ,
type : 'POST' ,
url : url
} ) . done ( function ( data ) {
// If successful
console . log ( data ) ;
if ( ! data . userpass === false ) {
console . log ( 'first marketmaker api call execution after marketmaker started.' )
sessionStorage . setItem ( 'mm_usercoins' , JSON . stringify ( data . coins ) ) ;
sessionStorage . setItem ( 'mm_userpass' , data . userpass ) ;
sessionStorage . setItem ( 'mm_mypubkey' , data . mypubkey ) ;
if ( ajax _data . status === 'enable' ) {
toastr . success ( ajax _data . coin + ' Enabled' , 'Coin Status' ) ;
}
if ( ajax _data . status === 'disable' ) {
toastr . success ( ajax _data . coin + ' Disabled' , 'Coin Status' ) ;
}
//get_coins_list(data.coins);
} else {
//get_coins_list(data);
if ( electrum _option == false ) {
//get_coins_list('');
//$('.refresh_dex_balances').trigger('click');
} else {
//get_coins_list(data);
}
}
2017-10-20 12:05:10 -07:00
if ( ! data . error === false ) {
//console.log(data.error);
if ( data . error == 'couldnt find coin locally installed' ) { //{error: "couldnt find coin locally installed", coin: "BTC"}
bootbox . alert ( {
title : "Couldn't find " + data . coin + " locally installed" ,
message : ` <p>It seems you don't have ` + data . coin + ` wallet installed on your OS. Please check these following points to make sure you have your wallet setup properly:</p>
< ol >
< li > Make sure your wallet is installed properly . < / l i >
< li > Make sure your wallet is running and synced to network . < / l i >
< li > Make sure your wallet has proper RPC settings configured in it ' s configuration file . < / l i >
< li > If you have all the above covered properly , please logout and then login back and try activating the coin again . < / l i >
< / o l >
< p > If you still having issues activating the your wallet , please get in touch with our support desk . < / p >
< ul >
< li > < a href = "https://support.supernet.org/" target = "_blank" > https : //support.supernet.org</a></li>
< / u l > ` ,
size : 'large'
} ) ;
}
}
2017-10-19 06:43:14 -07:00
} ) . fail ( function ( jqXHR , textStatus , errorThrown ) {
// If fail
console . log ( textStatus + ': ' + errorThrown ) ;
} ) ;
2017-10-20 12:05:10 -07:00
}
2017-10-26 02:56:05 -07:00
2017-10-27 00:18:01 -07:00
function check _coin _inventory ( coin ) {
console . log ( coin ) ;
2017-10-26 02:56:05 -07:00
2017-10-27 00:18:01 -07:00
var userpass = sessionStorage . getItem ( 'mm_userpass' ) ;
var mypubkey = sessionStorage . getItem ( 'mm_mypubkey' ) ;
var ajax _data = { "userpass" : userpass , "method" : "inventory" , "coin" : coin } ;
var url = "http://127.0.0.1:7783" ;
2017-10-26 02:56:05 -07:00
2017-10-27 00:18:01 -07:00
$ . ajax ( {
async : true ,
data : JSON . stringify ( ajax _data ) ,
dataType : 'json' ,
type : 'POST' ,
url : url
} ) . done ( function ( data ) {
// If successful
console . log ( data ) ;
if ( ! data . userpass === false ) {
console . log ( 'first marketmaker api call execution after marketmaker started.' )
sessionStorage . setItem ( 'mm_usercoins' , JSON . stringify ( data . coins ) ) ;
sessionStorage . setItem ( 'mm_userpass' , data . userpass ) ;
sessionStorage . setItem ( 'mm_mypubkey' , data . mypubkey ) ;
//get_coins_list(data.coins);
//$( ".inv_btn[data-coin='"+ coin +"']" ).trigger( "click" );
} else {
sessionStorage . setItem ( 'mm_coininventory' , JSON . stringify ( data ) ) ;
$ ( '.RawJSONInventory-output' ) . html ( JSON . stringify ( data , null , 2 ) ) ;
$ ( '.dex_showinv_alice_tbl tbody' ) . empty ( ) ;
$ . each ( data . alice , function ( index , val ) {
//console.log(index);
//console.log(val);
var inv _alice _table _tr = '' ;
inv _alice _table _tr += '<tr>' ;
inv _alice _table _tr += '<th rowspan="2" style="width: 30px;">' + index + '</th>' ;
inv _alice _table _tr += '<th>coin</th>' ;
inv _alice _table _tr += '<th>vout1</th>' ;
inv _alice _table _tr += '<th>value1</th>' ;
inv _alice _table _tr += '<th>vout2</th>' ;
inv _alice _table _tr += '<th>value2</th>' ;
inv _alice _table _tr += '<th></th>' ;
inv _alice _table _tr += '</tr>' ;
inv _alice _table _tr += '<tr>' ;
inv _alice _table _tr += '<td>' + val . coin + '</td>' ;
inv _alice _table _tr += '<td>' + val . vout + '</td>' ;
inv _alice _table _tr += '<td>' + ( parseFloat ( val . value ) / 100000000 ) . toFixed ( 8 ) + ' ' + val . coin + '</td>' ;
inv _alice _table _tr += '<td>' + val . vout2 + '</td>' ;
inv _alice _table _tr += '<td>' + ( parseFloat ( val . value2 ) / 100000000 ) . toFixed ( 8 ) + ' ' + val . coin + '</td>' ;
inv _alice _table _tr += '<td><button class="btn btn-default btn_coiniventory_detail" data-invof="alice" data-index="' + index + '">Detail</button></td>' ;
inv _alice _table _tr += '</tr>' ;
$ ( '.dex_showinv_alice_tbl tbody' ) . append ( inv _alice _table _tr ) ;
} )
}
} ) . fail ( function ( jqXHR , textStatus , errorThrown ) {
// If fail
console . log ( textStatus + ': ' + errorThrown ) ;
} ) ;
}
2017-11-01 02:00:04 -07:00
function check _coin _listunspent ( coin _data ) {
console . log ( coin _data ) ;
var userpass = sessionStorage . getItem ( 'mm_userpass' ) ;
var mypubkey = sessionStorage . getItem ( 'mm_mypubkey' ) ;
var ajax _data = { "userpass" : userpass , "method" : "listunspent" , "coin" : coin _data . coin , "address" : coin _data . addr } ;
var url = "http://127.0.0.1:7783" ;
$ . ajax ( {
async : true ,
data : JSON . stringify ( ajax _data ) ,
dataType : 'json' ,
type : 'POST' ,
url : url
} ) . done ( function ( data ) {
// If successful
//console.log(data);
$ ( '.dex_showlist_unspents_tbl tbody' ) . empty ( ) ;
$ . each ( data , function ( index , val ) {
//console.log(index);
//console.log(val);
var show _list _unspents _tbl _tr = '' ;
show _list _unspents _tbl _tr += '<tr>' ;
show _list _unspents _tbl _tr += '<th style="width: 30px;">Index</th>' ;
show _list _unspents _tbl _tr += '<th>coin</th>' ;
show _list _unspents _tbl _tr += '<th>height</th>' ;
show _list _unspents _tbl _tr += '<th>TX Possition</th>' ;
show _list _unspents _tbl _tr += '<th>Value</th>' ;
show _list _unspents _tbl _tr += '<th>TX Hash</th>' ;
show _list _unspents _tbl _tr += '</tr>' ;
show _list _unspents _tbl _tr += '<tr>' ;
show _list _unspents _tbl _tr += '<td>' + index + '</td>' ;
show _list _unspents _tbl _tr += '<td>' + coin _data . coin + '</td>' ;
show _list _unspents _tbl _tr += '<td>' + val . height + '</td>' ;
show _list _unspents _tbl _tr += '<td>' + val . tx _pos + '</td>' ;
show _list _unspents _tbl _tr += '<td>' + ( parseFloat ( val . value ) / 100000000 ) . toFixed ( 8 ) + ' ' + coin _data . coin + '</td>' ;
show _list _unspents _tbl _tr += '<td>' + val . tx _hash + '</td>' ;
show _list _unspents _tbl _tr += '</tr>' ;
$ ( '.dex_showlist_unspents_tbl tbody' ) . append ( show _list _unspents _tbl _tr ) ;
} )
} ) . fail ( function ( jqXHR , textStatus , errorThrown ) {
// If fail
console . log ( textStatus + ': ' + errorThrown ) ;
} ) ;
}
2017-10-27 00:18:01 -07:00
$ ( "#inventory-slider1" ) . slider ( ) ;
$ ( "#inventory-slider1" ) . on ( "slide" , function ( slideEvt ) {
$ ( "#inventory-slider1Val" ) . text ( slideEvt . value ) ;
utxo _input = $ ( "#inventory_slider_input1" ) . val ( ) ;
$ ( "#inventory-slider1Total" ) . text ( slideEvt . value * utxo _input ) ;
2017-10-27 02:08:57 -07:00
var slider _input2 = $ ( '#inventory-slider2' ) . val ( ) ;
var slider _input3 = $ ( '#inventory-slider3' ) . val ( ) ;
var slider _total = parseFloat ( slideEvt . value * utxo _input1 ) + parseFloat ( slider _input2 * utxo _input2 ) + parseFloat ( slider _input3 * utxo _input3 ) ;
$ ( '.inventory-sliderTotal' ) . text ( slider _total . toFixed ( 8 ) ) ;
2017-10-27 00:18:01 -07:00
} ) ;
$ ( "#inventory-slider2" ) . slider ( ) ;
$ ( "#inventory-slider2" ) . on ( "slide" , function ( slideEvt ) {
$ ( "#inventory-slider2Val" ) . text ( slideEvt . value ) ;
utxo _input = $ ( "#inventory_slider_input2" ) . val ( ) ;
$ ( "#inventory-slider2Total" ) . text ( slideEvt . value * utxo _input ) ;
2017-10-27 02:08:57 -07:00
var slider _input1 = $ ( '#inventory-slider1' ) . val ( ) ;
var slider _input3 = $ ( '#inventory-slider3' ) . val ( ) ;
var slider _total = parseFloat ( slider _input1 * utxo _input1 ) + parseFloat ( slideEvt . value * utxo _input2 ) + parseFloat ( slider _input3 * utxo _input3 ) ;
$ ( '.inventory-sliderTotal' ) . text ( slider _total . toFixed ( 8 ) ) ;
2017-10-27 00:18:01 -07:00
} ) ;
$ ( "#inventory-slider3" ) . slider ( ) ;
$ ( "#inventory-slider3" ) . on ( "slide" , function ( slideEvt ) {
$ ( "#inventory-slider3Val" ) . text ( slideEvt . value ) ;
utxo _input = $ ( "#inventory_slider_input3" ) . val ( ) ;
$ ( "#inventory-slider3Total" ) . text ( slideEvt . value * utxo _input ) ;
2017-10-27 02:08:57 -07:00
var slider _input1 = $ ( '#inventory-slider1' ) . val ( ) ;
var slider _input2 = $ ( '#inventory-slider2' ) . val ( ) ;
var slider _total = parseFloat ( slider _input1 * utxo _input1 ) + parseFloat ( slider _input2 * utxo _input2 ) + parseFloat ( slideEvt . value * utxo _input3 ) ;
$ ( '.inventory-sliderTotal' ) . text ( slider _total . toFixed ( 8 ) ) ;
2017-10-27 00:18:01 -07:00
} ) ;
function clac _coin _inventory ( data ) {
console . log ( data ) ;
2017-10-26 02:56:05 -07:00
2017-10-27 00:18:01 -07:00
utxo _input1 = ( parseFloat ( data . balance ) * 0.12 ) . toFixed ( 8 ) ;
utxo _input2 = ( parseFloat ( data . balance ) * 0.01 ) . toFixed ( 8 ) ;
utxo _input3 = ( parseFloat ( data . balance ) * 0.1 ) . toFixed ( 8 ) ;
///console.log(utxo_input1);
//console.log(utxo_input2);
//console.log(utxo_input3);
$ ( "#inventory_slider_input1" ) . val ( utxo _input1 ) ;
$ ( "#inventory_slider_input2" ) . val ( utxo _input2 ) ;
$ ( "#inventory_slider_input3" ) . val ( utxo _input3 ) ;
var slider _input1 = $ ( '#inventory-slider1' ) . val ( ) ;
var slider _input2 = $ ( '#inventory-slider2' ) . val ( ) ;
var slider _input3 = $ ( '#inventory-slider3' ) . val ( ) ;
$ ( "#inventory-slider1Total" ) . text ( parseFloat ( slider _input1 * utxo _input1 ) . toFixed ( 8 ) ) ;
$ ( "#inventory-slider2Total" ) . text ( parseFloat ( slider _input2 * utxo _input2 ) . toFixed ( 8 ) ) ;
$ ( "#inventory-slider3Total" ) . text ( parseFloat ( slider _input3 * utxo _input3 ) . toFixed ( 8 ) ) ;
var slider _total = parseFloat ( slider _input1 * utxo _input1 ) + parseFloat ( slider _input2 * utxo _input2 ) + parseFloat ( slider _input3 * utxo _input3 ) ;
console . log ( slider _total ) ;
2017-10-27 02:08:57 -07:00
$ ( '.inventory-sliderTotal' ) . text ( slider _total . toFixed ( 8 ) ) ;
2017-10-27 03:44:54 -07:00
}
function make _inventory _withdraw ( data ) {
//console.log(data);
coin = data . coin ;
var userpass = sessionStorage . getItem ( 'mm_userpass' ) ;
var ajax _data = { "userpass" : userpass , "method" : "withdraw" , "coin" : data . coin , "outputs" : data . outputs } ;
var url = "http://127.0.0.1:7783" ;
console . log ( ajax _data ) ;
var a1 = $ . ajax ( {
async : true ,
data : JSON . stringify ( ajax _data ) ,
dataType : 'json' ,
type : 'POST' ,
url : url
} ) ,
a2 = a1 . then ( function ( data ) {
// .then() returns a new promise
console . log ( data ) ;
if ( data . complete == false ) {
toastr . error ( 'Uncessful Transaction. Please try again.' , 'Tansaction info' ) ;
}
if ( data . complete == true ) {
bootbox . confirm ( {
message : 'Please confirm if you are ready to make inventory.' ,
buttons : {
confirm : {
label : 'Confirm' ,
className : 'btn-primary'
} ,
cancel : {
label : 'Cancel' ,
className : 'btn-default'
}
} ,
callback : function ( result ) {
console . log ( 'This was logged in the callback: ' + result ) ;
if ( result == true ) {
var ajax _data2 = { "userpass" : userpass , "method" : "sendrawtransaction" , "coin" : coin , "signedtx" : data . hex } ;
console . log ( ajax _data2 ) ;
toastr . info ( 'Transaction Executed' , 'Transaction Status' ) ;
return $ . ajax ( {
async : true ,
data : JSON . stringify ( ajax _data2 ) ,
dataType : 'json' ,
type : 'POST' ,
url : url
} )
} else {
console . log ( 'Sending Transaction operation canceled.' ) ;
return { 'output' : 'canceled' } ;
}
}
} ) ;
}
} ) ;
a2 . done ( function ( data ) {
console . log ( data ) ;
} ) ;
}
2017-11-01 02:00:04 -07:00
/* Portfolio section functions START */
function CheckPortfolioFn ( sig ) {
if ( sig == false ) {
clearInterval ( CheckPortfolio _Interval ) ;
return 'Check portfolio calls stopped.' ;
} else {
console . log ( 'checking portfolio' ) ;
}
var userpass = sessionStorage . getItem ( 'mm_userpass' ) ;
var mypubkey = sessionStorage . getItem ( 'mm_mypubkey' ) ;
var ajax _data = { "userpass" : userpass , "method" : "portfolio" } ;
console . log ( ajax _data )
var url = "http://127.0.0.1:7783" ;
$ . ajax ( {
async : true ,
data : JSON . stringify ( ajax _data ) ,
dataType : 'json' ,
type : 'POST' ,
url : url
} ) . done ( function ( data ) {
// If successful
console . log ( data ) ;
2017-11-04 07:57:53 -07:00
if ( ! data . userpass === false ) {
console . log ( 'first marketmaker api call execution after marketmaker started.' )
sessionStorage . setItem ( 'mm_usercoins' , JSON . stringify ( data . coins ) ) ;
sessionStorage . setItem ( 'mm_userpass' , data . userpass ) ;
sessionStorage . setItem ( 'mm_mypubkey' , data . mypubkey ) ;
CheckPortfolioFn ( ) ;
return
}
PortfolioTblDataFn ( data ) ;
PortfolioChartUpdate ( data . portfolio ) ;
2017-11-01 02:00:04 -07:00
//$('.initcoinswap-output').html(JSON.stringify(data, null, 2));
} ) . fail ( function ( jqXHR , textStatus , errorThrown ) {
// If fail
console . log ( textStatus + ': ' + errorThrown ) ;
} ) ;
}
function PortfolioTblDataFn ( data ) {
//console.log(data);
$ ( '.portfolio_kmd_equiv' ) . html ( data . kmd _equiv ) ;
$ ( '.portfolio_buycoin' ) . html ( data . buycoin ) ;
$ ( '.portfolio_buyforce' ) . html ( data . buyforce ) ;
$ ( '.portfolio_sellcoin' ) . html ( data . sellcoin ) ;
$ ( '.portfolio_sellforce' ) . html ( data . sellforce ) ;
$ ( '.portfolio_base' ) . html ( data . base ) ;
$ ( '.portfolio_rel' ) . html ( data . rel ) ;
$ ( '.portfolio_relvolume' ) . html ( data . relvolume ) ;
$ ( '.dex_portfolio_coins_tbl tbody' ) . empty ( ) ;
2017-11-04 07:57:53 -07:00
$ ( '.porfolio_coins_list tbody' ) . empty ( ) ;
2017-11-01 02:00:04 -07:00
$ . each ( data . portfolio , function ( index , val ) {
//console.log(index);
2017-11-04 07:57:53 -07:00
console . log ( val ) ;
2017-11-01 02:00:04 -07:00
var coin _name = return _coin _name ( val . coin )
var dex _portfolio _coins _tbl _tr = '' ;
dex _portfolio _coins _tbl _tr += '<tr>' ;
2017-11-04 07:57:53 -07:00
dex _portfolio _coins _tbl _tr += '<td><img src="img/cryptologo/' + val . coin . toLowerCase ( ) + '.png" width="30px;"/> ' + coin _name + ' (' + val . coin + ')</td>' ;
2017-11-01 02:00:04 -07:00
//dex_portfolio_coins_tbl_tr += '<td>' + val.address + '</td>';
dex _portfolio _coins _tbl _tr += '<td>' + val . amount + '</td>' ;
dex _portfolio _coins _tbl _tr += '<td>' + val . price + '</td>' ;
dex _portfolio _coins _tbl _tr += '<td>' + val . kmd _equiv + '</td>' ;
2017-11-04 07:57:53 -07:00
dex _portfolio _coins _tbl _tr += '<td><button class="btn btn-sm btn-default btn-portfoliogo" data-coin="' + val . coin + '" data-coinname="' + coin _name + '" data-addr="' + val . address + '"><span class="glyphicon glyphicon-chevron-right" aria-hidden="true"></span></button></td>'
/ * d e x _ p o r t f o l i o _ c o i n s _ t b l _ t r + = ' < t d > ' + v a l . p e r c + ' < / t d > ' ;
2017-11-01 02:00:04 -07:00
dex _portfolio _coins _tbl _tr += '<td>' + val . goal + '</td>' ;
dex _portfolio _coins _tbl _tr += '<td>' + val . goalperc + '</td>' ;
dex _portfolio _coins _tbl _tr += '<td>' + val . relvolume + '</td>' ;
dex _portfolio _coins _tbl _tr += '<td>' + val . force + '</td>' ;
dex _portfolio _coins _tbl _tr += '<td>' + val . balanceA + '</td>' ;
dex _portfolio _coins _tbl _tr += '<td>' + val . valuesumA + '</td>' ;
dex _portfolio _coins _tbl _tr += '<td>' + val . aliceutil + '</td>' ;
dex _portfolio _coins _tbl _tr += '<td>' + val . balanceB + '</td>' ;
dex _portfolio _coins _tbl _tr += '<td>' + val . valuesumB + '</td>' ;
dex _portfolio _coins _tbl _tr += '<td>' + val . balance + '</td>' ;
2017-11-04 07:57:53 -07:00
dex _portfolio _coins _tbl _tr += '<td>' + val . bobutil + '</td>' ; * /
2017-11-01 02:00:04 -07:00
dex _portfolio _coins _tbl _tr += '</tr>' ;
2017-11-04 07:57:53 -07:00
$ ( '.porfolio_coins_list tbody' ) . append ( dex _portfolio _coins _tbl _tr ) ;
2017-11-01 02:00:04 -07:00
} )
} ;
function PortfolioChartUpdate ( chart _data ) {
console . log ( chart _data )
var chart = AmCharts . makeChart ( "portfolio_chart_current" , {
"type" : "pie" ,
"theme" : "light" ,
"dataProvider" : chart _data ,
"valueField" : "perc" ,
"titleField" : "coin" ,
"startDuration" : 0 ,
"innerRadius" : 50 ,
"pullOutRadius" : 20 ,
2017-11-04 07:57:53 -07:00
"marginTop" : 30 ,
"marginBottom" : 15 ,
"marginLeft" : 0 ,
"marginRight" : 0 ,
"pullOutRadius" : 0 ,
2017-11-01 02:00:04 -07:00
/ * " t i t l e s " : [
{
"text" : "Current Portfolio Goal"
}
] , * /
"allLabels" : [
{
"y" : "46%" ,
"align" : "center" ,
"size" : 25 ,
"bold" : true ,
"text" : "Now" ,
"color" : "#555"
} ,
{
"y" : "40%" ,
"align" : "center" ,
"size" : 15 ,
"text" : "Goal" ,
"color" : "#555"
}
] ,
"export" : {
"enabled" : false
}
} ) ;
var chart2 = AmCharts . makeChart ( "portfolio_chart_target" , {
"type" : "pie" ,
"theme" : "light" ,
"dataProvider" : chart _data ,
"valueField" : "goalperc" ,
"titleField" : "coin" ,
"startDuration" : 0 ,
"innerRadius" : 50 ,
"pullOutRadius" : 20 ,
2017-11-04 07:57:53 -07:00
"marginTop" : 30 ,
"marginBottom" : 15 ,
"marginLeft" : 0 ,
"marginRight" : 0 ,
"pullOutRadius" : 0 ,
2017-11-01 02:00:04 -07:00
/ * " t i t l e s " : [
{
"text" : "Target Portfolio Goal"
}
] , * /
"allLabels" : [
{
"y" : "46%" ,
"align" : "center" ,
"size" : 25 ,
"bold" : true ,
"text" : "Target" ,
"color" : "#555"
} ,
{
"y" : "40%" ,
"align" : "center" ,
"size" : 15 ,
"text" : "Goal" ,
"color" : "#555"
}
] ,
"export" : {
"enabled" : false
}
} ) ;
}
2017-11-04 07:57:53 -07:00
$ ( '.btn-refreshportfolio' ) . click ( function ( ) {
2017-11-01 02:00:04 -07:00
console . log ( 'clicked refresh button at dex portfolio charts' ) ;
CheckPortfolioFn ( ) ;
} ) ;
$ ( '.refresh_dex_potfolio' ) . click ( function ( ) {
console . log ( 'clicked refresh button at dex portfolio charts' ) ;
CheckPortfolioFn ( ) ;
} ) ;
$ ( '.refresh_dex_potfolio_coins' ) . click ( function ( ) {
console . log ( 'clicked refresh button at dex portfolio charts' ) ;
CheckPortfolioFn ( ) ;
} ) ;
$ ( '.portfolio_set_price_btn' ) . click ( function ( ) {
var price = $ ( '#portfolio_set_price' ) . val ( ) ;
var base _coin = $ ( '.buy_coin_p' ) . selectpicker ( 'val' ) ;
var rel _coin = $ ( '.sell_coin_p' ) . selectpicker ( 'val' ) ;
console . log ( 'price ' + price ) ;
console . log ( 'base ' + base _coin ) ;
console . log ( 'rel ' + rel _coin ) ;
var userpass = sessionStorage . getItem ( 'mm_userpass' ) ;
var ajax _data = { "userpass" : userpass , "method" : "setprice" , "base" : base _coin , "rel" : rel _coin , "price" : price } ;
var url = "http://127.0.0.1:7783" ;
$ . ajax ( {
data : JSON . stringify ( ajax _data ) ,
dataType : 'json' ,
type : 'POST' ,
url : url
} ) . done ( function ( data ) {
// If successful
console . log ( data ) ;
toastr . success ( 'Price for Base: ' + base _coin + ' Rel: ' + rel _coin + ' set to: ' + price + ' ' + rel _coin , 'Portfolio Info' )
$ ( '.initcoinswap-output' ) . html ( JSON . stringify ( data , null , 2 ) ) ;
} ) . fail ( function ( jqXHR , textStatus , errorThrown ) {
// If fail
console . log ( textStatus + ': ' + errorThrown ) ;
} ) ;
} )
$ ( '.portfolio_set_autoprice_btn' ) . click ( function ( ) {
var margin = $ ( '#portfolio_set_autoprice' ) . val ( ) ;
var base _coin = $ ( '.buy_coin_p' ) . selectpicker ( 'val' ) ;
var rel _coin = $ ( '.sell_coin_p' ) . selectpicker ( 'val' ) ;
console . log ( 'margin ' + margin ) ;
console . log ( 'base ' + base _coin ) ;
console . log ( 'rel ' + rel _coin ) ;
var userpass = sessionStorage . getItem ( 'mm_userpass' ) ;
var ajax _data = { "userpass" : userpass , "method" : "autoprice" , "base" : base _coin , "rel" : rel _coin , "margin" : margin } ;
var url = "http://127.0.0.1:7783" ;
$ . ajax ( {
data : JSON . stringify ( ajax _data ) ,
dataType : 'json' ,
type : 'POST' ,
url : url
} ) . done ( function ( data ) {
// If successful
console . log ( data ) ;
toastr . success ( 'Margin Price for Base: ' + base _coin + ' Rel: ' + rel _coin + ' set to: ' + margin + '% ' + rel _coin , 'Portfolio Info' )
$ ( '.initcoinswap-output' ) . html ( JSON . stringify ( data , null , 2 ) ) ;
} ) . fail ( function ( jqXHR , textStatus , errorThrown ) {
// If fail
console . log ( textStatus + ': ' + errorThrown ) ;
} ) ;
} )
$ ( '.portfolio_set_goal_btn' ) . click ( function ( ) {
var percent = $ ( '#portfolio_set_goal' ) . val ( ) ;
var coin = $ ( '.sell_coin_p' ) . selectpicker ( 'val' ) ;
console . log ( 'percent ' + percent ) ;
console . log ( 'coin ' + coin ) ;
//console.log('rel ' + rel_coin);
var userpass = sessionStorage . getItem ( 'mm_userpass' ) ;
var ajax _data = { "userpass" : userpass , "method" : "goal" , "coin" : coin , "val" : percent } ;
var url = "http://127.0.0.1:7783" ;
$ . ajax ( {
data : JSON . stringify ( ajax _data ) ,
dataType : 'json' ,
type : 'POST' ,
url : url
} ) . done ( function ( data ) {
// If successful
console . log ( data ) ;
toastr . success ( 'Goal for ' + coin + ' set to: ' + percent , 'Portfolio Info' )
$ ( '.initcoinswap-output' ) . html ( JSON . stringify ( data , null , 2 ) ) ;
} ) . fail ( function ( jqXHR , textStatus , errorThrown ) {
// If fail
console . log ( textStatus + ': ' + errorThrown ) ;
} ) ;
CheckPortfolioFn ( ) ;
} )
$ ( ".sell_coin_p" ) . change ( function ( ) {
$ ( '.set_goal_label_portfolio' ) . html ( $ ( '.sell_coin_p' ) . selectpicker ( 'val' ) ) ;
} )
$ ( '.portfolio_set_autogoals_btn' ) . click ( function ( ) {
//var percent = $('#portfolio_set_goal').val();
//var coin = $('.sell_coin_p').selectpicker('val');
//console.log('percent ' + percent);
//console.log('coin '+ coin);
//console.log('rel ' + rel_coin);
var userpass = sessionStorage . getItem ( 'mm_userpass' ) ;
var ajax _data = { "userpass" : userpass , "method" : "goal" } ;
var url = "http://127.0.0.1:7783" ;
$ . ajax ( {
async : true ,
data : JSON . stringify ( ajax _data ) ,
dataType : 'json' ,
type : 'POST' ,
url : url
} ) . done ( function ( data ) {
// If successful
console . log ( data ) ;
toastr . success ( 'Auto goal setup executed!' , 'Portfolio Info' )
$ ( '.initcoinswap-output' ) . html ( JSON . stringify ( data , null , 2 ) ) ;
} ) . fail ( function ( jqXHR , textStatus , errorThrown ) {
// If fail
console . log ( textStatus + ': ' + errorThrown ) ;
} ) ;
CheckPortfolioFn ( ) ;
} )
/* Portfolio section functions END */
2017-11-04 07:57:53 -07:00
/* Auto Trading Bot */
function CheckOrderBookFn ( sig ) {
if ( sig == false ) {
clearInterval ( CheckOrderbook _Interval ) ;
return
} else {
console . log ( 'checking orderbook' ) ;
}
var selected _coin = JSON . parse ( sessionStorage . getItem ( 'mm_selectedcoin' ) ) ;
var coin = selected _coin . coin ;
console . log ( coin ) ;
buying _or _selling = $ ( 'input[name=trading_pair_options]:checked' ) . val ( ) ;
if ( buying _or _selling == 'buying' ) {
var base _coin = coin ;
var rel _coin = $ ( '.trading_pair_coin' ) . selectpicker ( 'val' ) ;
}
if ( buying _or _selling == 'selling' ) {
var base _coin = $ ( '.trading_pair_coin' ) . selectpicker ( 'val' ) ;
var rel _coin = coin ;
}
var userpass = sessionStorage . getItem ( 'mm_userpass' ) ;
var mypubkey = sessionStorage . getItem ( 'mm_mypubkey' ) ;
$ ( '.orderbook_rel_coin' ) . html ( rel _coin ) ;
$ ( '.orderbook_base_coin' ) . html ( base _coin ) ;
var ajax _data = { "userpass" : userpass , "method" : "orderbook" , "base" : base _coin , "rel" : rel _coin } ;
//console.log(ajax_data)
var url = "http://127.0.0.1:7783" ;
$ . ajax ( {
data : JSON . stringify ( ajax _data ) ,
dataType : 'json' ,
type : 'POST' ,
url : url
} ) . done ( function ( data ) {
// If successful
console . log ( data ) ;
if ( ! data . userpass === false ) {
console . log ( 'first marketmaker api call execution after marketmaker started.' )
sessionStorage . setItem ( 'mm_usercoins' , JSON . stringify ( data . coins ) ) ;
sessionStorage . setItem ( 'mm_userpass' , data . userpass ) ;
sessionStorage . setItem ( 'mm_mypubkey' , data . mypubkey ) ;
//get_coins_list(data.coins);
} else {
//console.log(data.asks);
$ ( '.orderbook_numasks' ) . html ( data . numasks ) ;
$ ( '.orderbook_numbids' ) . html ( data . numbids ) ;
$ ( '.orderbook_bids tbody' ) . empty ( ) ;
$ . each ( data . bids , function ( index , val ) {
//console.log(index);
//console.log(val);
var mytrade _true = '' ;
if ( val . pubkey === mypubkey ) {
var mytrade _true = 'class="warning"' ;
}
var orderbook _bids _tr = '' ;
orderbook _bids _tr += '<tr ' + mytrade _true + '>' ;
2017-11-04 13:45:26 -07:00
orderbook _bids _tr += '<td>' + val . price + '</td>' ;
orderbook _bids _tr += '<td>' + val . minvolume + '</td>' ;
orderbook _bids _tr += '<td>' + val . maxvolume + '</td>' ;
orderbook _bids _tr += '<td>' + val . age + '</td>' ;
orderbook _bids _tr += '<td>' + val . numutxos + '</td>' ;
2017-11-04 07:57:53 -07:00
orderbook _bids _tr += '</tr>' ;
$ ( '.orderbook_bids tbody' ) . append ( orderbook _bids _tr ) ;
} )
$ ( '.orderbook_asks tbody' ) . empty ( ) ;
$ . each ( data . asks , function ( index , val ) {
//console.log(index);
//console.log(val);
var mytrade _true = '' ;
if ( val . pubkey === mypubkey ) {
var mytrade _true = 'class="warning"' ;
}
var orderbook _asks _tr = '' ;
orderbook _asks _tr += '<tr ' + mytrade _true + '>' ;
orderbook _asks _tr += '<td>' + val . price + '</td>' ;
orderbook _asks _tr += '<td>' + val . minvolume + '</td>' ;
orderbook _asks _tr += '<td>' + val . maxvolume + '</td>' ;
orderbook _asks _tr += '<td>' + val . age + '</td>' ;
orderbook _asks _tr += '<td>' + val . numutxos + '</td>' ;
orderbook _asks _tr += '</tr>' ;
$ ( '.orderbook_asks tbody' ) . append ( orderbook _asks _tr ) ;
} )
}
//$('.initcoinswap-output').html(JSON.stringify(data, null, 2));
} ) . fail ( function ( jqXHR , textStatus , errorThrown ) {
// If fail
console . log ( textStatus + ': ' + errorThrown ) ;
} ) ;
return 'Check orderbook calls stopped.' ;
}
2017-11-04 10:53:15 -07:00
function check _my _prices ( sig ) {
if ( sig == false ) {
clearInterval ( check _my _prices _Internal ) ;
return
} else {
console . log ( 'checking my prices' ) ;
}
2017-11-04 07:57:53 -07:00
2017-11-04 10:53:15 -07:00
var selected _coin = JSON . parse ( sessionStorage . getItem ( 'mm_selectedcoin' ) ) ;
var coin = selected _coin . coin ;
console . log ( coin ) ;
2017-11-04 07:57:53 -07:00
2017-11-04 10:53:15 -07:00
buying _or _selling = $ ( 'input[name=trading_pair_options]:checked' ) . val ( ) ;
if ( buying _or _selling == 'buying' ) {
var base _coin = coin ;
var rel _coin = $ ( '.trading_pair_coin' ) . selectpicker ( 'val' ) ;
}
if ( buying _or _selling == 'selling' ) {
var base _coin = $ ( '.trading_pair_coin' ) . selectpicker ( 'val' ) ;
var rel _coin = coin ;
}
var userpass = sessionStorage . getItem ( 'mm_userpass' ) ;
var ajax _data = { "userpass" : userpass , "method" : "myprice" , "base" : base _coin , "rel" : rel _coin } ;
console . log ( ajax _data )
var url = "http://127.0.0.1:7783" ;
$ . ajax ( {
data : JSON . stringify ( ajax _data ) ,
dataType : 'json' ,
type : 'POST' ,
url : url
} ) . done ( function ( data ) {
// If successful
console . log ( data ) ;
if ( ! data . userpass === false ) {
console . log ( 'first marketmaker api call execution after marketmaker started.' )
sessionStorage . setItem ( 'mm_usercoins' , JSON . stringify ( data . coins ) ) ;
sessionStorage . setItem ( 'mm_userpass' , data . userpass ) ;
sessionStorage . setItem ( 'mm_mypubkey' , data . mypubkey ) ;
} else {
//console.log(data);
2017-11-04 13:45:26 -07:00
$ ( '.exchange_my_orders_tbl tbody' ) . empty ( ) ;
2017-11-04 10:53:15 -07:00
if ( ! data . error === false ) {
var exchange _my _orders _tr = '' ;
exchange _my _orders _tr += '<tr>' ;
exchange _my _orders _tr += '<td><div style="text-align: center;">' + data . error + ' for pair ' + base _coin + '/' + rel _coin + '</div></td>' ;
exchange _my _orders _tr += '</tr>' ;
2017-11-04 13:45:26 -07:00
$ ( '.exchange_my_orders_tbl tbody' ) . append ( exchange _my _orders _tr ) ;
2017-11-04 10:53:15 -07:00
} else {
/ * $ . e a c h ( d a t a , f u n c t i o n ( i n d e x , v a l ) {
console . log ( index ) ;
console . log ( val ) ;
var base _coin _name = return _coin _name ( val . base )
var rel _coin _name = return _coin _name ( val . rel )
var exchange _my _orders _tr = '' ;
exchange _my _orders _tr += '<tr>' ;
exchange _my _orders _tr += '<td>' + val . base + ' (' + base _coin _name + ')</td>' ;
exchange _my _orders _tr += '<td>' + val . rel + ' (' + rel _coin _name + ')</td>' ;
exchange _my _orders _tr += '<td>' + val . bid + '</td>' ;
exchange _my _orders _tr += '<td>' + val . ask + '</td>' ;
exchange _my _orders _tr += '</tr>' ;
2017-11-04 13:45:26 -07:00
$ ( '.exchange_my_orders_tbl tbody' ) . append ( exchange _my _orders _tr ) ;
2017-11-04 10:53:15 -07:00
} ) ; * /
var base _coin _name = return _coin _name ( data . base )
var rel _coin _name = return _coin _name ( data . rel )
var exchange _my _orders _tr = '' ;
exchange _my _orders _tr += '<tr>' ;
exchange _my _orders _tr += '<td>' + data . base + ' (' + base _coin _name + ')</td>' ;
exchange _my _orders _tr += '<td>' + data . rel + ' (' + rel _coin _name + ')</td>' ;
exchange _my _orders _tr += '<td>' + data . bid + '</td>' ;
exchange _my _orders _tr += '<td>' + data . ask + '</td>' ;
exchange _my _orders _tr += '</tr>' ;
2017-11-04 13:45:26 -07:00
$ ( '.exchange_my_orders_tbl tbody' ) . append ( exchange _my _orders _tr ) ;
2017-11-04 10:53:15 -07:00
}
}
} ) . fail ( function ( jqXHR , textStatus , errorThrown ) {
// If fail
console . log ( textStatus + ': ' + errorThrown ) ;
} ) ;
}
$ ( '.trading_pair_coin' ) . on ( 'change' , function ( e ) {
var optionSelected = $ ( "option:selected" , this ) ;
var valueSelected = this . value ;
console . log ( valueSelected ) ;
2017-11-04 13:45:26 -07:00
//update_min_max_price_input();
} ) ;
$ ( '.btn-refreshtrading_pair' ) . click ( function ( e ) {
e . preventDefault ( ) ;
console . log ( 'btn-refreshtrading_pair clicked' ) ;
console . log ( $ ( this ) . data ( ) ) ;
//update_min_max_price_input();
} )
$ ( 'input[name=trading_pair_options]' ) . change ( function ( ) {
console . log ( 'trading_pair_options changed' ) ;
buying _or _selling = $ ( 'input[name=trading_pair_options]:checked' ) . val ( ) ;
//console.log(buying_or_selling);
if ( buying _or _selling == 'buying' ) {
$ ( '#trading_pair_coin_price_max_min' ) . html ( 'Max' ) ;
$ ( '.trading_pair_lable_text_one' ) . html ( 'Max' ) ;
$ ( '.trading_pair_lable_text_two' ) . html ( 'Buy' ) ;
$ ( '.btn-bot_action' ) . html ( 'BUY' ) ;
$ ( '.btn-bot_action' ) . attr ( 'data-action' , 'buy' ) ;
}
if ( buying _or _selling == 'selling' ) {
$ ( '#trading_pair_coin_price_max_min' ) . html ( 'Min' ) ;
$ ( '.trading_pair_lable_text_one' ) . html ( 'Min' ) ;
$ ( '.trading_pair_lable_text_two' ) . html ( 'Sell' ) ;
$ ( '.btn-bot_action' ) . html ( 'SELL' ) ;
$ ( '.btn-bot_action' ) . attr ( 'data-action' , 'sell' ) ;
}
} ) ;
function update _min _max _price _input ( ) {
2017-11-04 10:53:15 -07:00
var selected _coin = JSON . parse ( sessionStorage . getItem ( 'mm_selectedcoin' ) ) ;
var coin = selected _coin . coin ;
console . log ( coin ) ;
buying _or _selling = $ ( 'input[name=trading_pair_options]:checked' ) . val ( ) ;
if ( buying _or _selling == 'buying' ) {
var base _coin = coin ;
var rel _coin = $ ( '.trading_pair_coin' ) . selectpicker ( 'val' ) ;
}
if ( buying _or _selling == 'selling' ) {
var base _coin = $ ( '.trading_pair_coin' ) . selectpicker ( 'val' ) ;
var rel _coin = coin ;
}
2017-11-04 07:57:53 -07:00
var userpass = sessionStorage . getItem ( 'mm_userpass' ) ;
var mypubkey = sessionStorage . getItem ( 'mm_mypubkey' ) ;
2017-11-04 10:53:15 -07:00
$ ( '.orderbook_rel_coin' ) . html ( rel _coin ) ;
$ ( '.orderbook_base_coin' ) . html ( base _coin ) ;
var ajax _data = { "userpass" : userpass , "method" : "orderbook" , "base" : base _coin , "rel" : rel _coin } ;
//console.log(ajax_data)
2017-11-04 07:57:53 -07:00
var url = "http://127.0.0.1:7783" ;
$ . ajax ( {
data : JSON . stringify ( ajax _data ) ,
dataType : 'json' ,
type : 'POST' ,
url : url
} ) . done ( function ( data ) {
2017-11-04 10:53:15 -07:00
// If successful
console . log ( data ) ;
if ( ! data . userpass === false ) {
console . log ( 'first marketmaker api call execution after marketmaker started.' )
sessionStorage . setItem ( 'mm_usercoins' , JSON . stringify ( data . coins ) ) ;
sessionStorage . setItem ( 'mm_userpass' , data . userpass ) ;
sessionStorage . setItem ( 'mm_mypubkey' , data . mypubkey ) ;
//get_coins_list(data.coins);
} else {
//console.log(data.asks);
2017-11-04 13:45:26 -07:00
if ( buying _or _selling == 'buying' ) {
$ ( '.trading_pair_coin_price' ) . val ( data . asks [ 0 ] . price ) ;
}
if ( buying _or _selling == 'selling' ) {
$ ( '.trading_pair_coin_price' ) . val ( data . bids [ 0 ] . price ) ;
}
2017-11-04 10:53:15 -07:00
}
//$('.initcoinswap-output').html(JSON.stringify(data, null, 2));
2017-11-04 07:57:53 -07:00
} ) . fail ( function ( jqXHR , textStatus , errorThrown ) {
// If fail
console . log ( textStatus + ': ' + errorThrown ) ;
} ) ;
2017-11-04 13:45:26 -07:00
}
2017-11-04 10:53:15 -07:00
2017-11-04 13:45:26 -07:00
function check _bot _list ( sig ) {
if ( sig == false ) {
clearInterval ( check _bot _list _Internal ) ;
return
} else {
console . log ( 'checking bot list' ) ;
}
var selected _coin = JSON . parse ( sessionStorage . getItem ( 'mm_selectedcoin' ) ) ;
var coin = selected _coin . coin ;
//console.log(coin);
var userpass = sessionStorage . getItem ( 'mm_userpass' ) ;
var mypubkey = sessionStorage . getItem ( 'mm_mypubkey' ) ;
var ajax _data = { "userpass" : userpass , "method" : "bot_list" } ;
var url = "http://127.0.0.1:7783" ;
$ . ajax ( {
data : JSON . stringify ( ajax _data ) ,
dataType : 'json' ,
type : 'POST' ,
url : url
} ) . done ( function ( data ) {
// If successful
console . log ( data ) ;
$ ( '.exchange_bot_list_tbl tbody' ) . empty ( ) ;
$ . each ( data , function ( index , val ) {
console . log ( index ) ;
console . log ( val ) ;
if ( ! val . error === false ) {
var exchange _bot _list _tr = '' ;
exchange _bot _list _tr += '<tr>' ;
exchange _bot _list _tr += '<td><div>error</div></td>' ;
exchange _bot _list _tr += '<td>-</td>' ;
exchange _bot _list _tr += '</tr>' ;
$ ( '.exchange_bot_list_tbl tbody' ) . append ( exchange _bot _list _tr ) ;
} else {
var exchange _bot _list _tr = '' ;
exchange _bot _list _tr += '<tr>' ;
exchange _bot _list _tr += '<td>' + val + '</td>' ;
exchange _bot _list _tr += '<td style="text-align: center;"><div class="btn-group"><button class="btn btn-info btn_bot_status" data-botid="' + val + '" data-action="status">Status</button><button class="btn btn-success btn_bot_resume" data-botid="' + val + '" data-action="resume">Resume</button><button class="btn btn-warning btn_bot_pause" data-botid="' + val + '" data-action="pause">pause</button><button class="btn btn-danger btn_bot_stop" data-botid="' + val + '" data-action="stop">Stop</button><button class="btn btn-primary btn_bot_settingds" data-botid="' + val + '" data-action="settings">Settings</button></div></td>' ;
exchange _bot _list _tr += '</tr>' ;
$ ( '.exchange_bot_list_tbl tbody' ) . append ( exchange _bot _list _tr ) ;
}
} )
} ) . fail ( function ( jqXHR , textStatus , errorThrown ) {
// If fail
console . log ( textStatus + ': ' + errorThrown ) ;
} ) ;
}
function bot _buy _sell ( bot _data ) {
var selected _coin = JSON . parse ( sessionStorage . getItem ( 'mm_selectedcoin' ) ) ;
var coin = selected _coin . coin ;
//console.log(coin);
buying _or _selling = $ ( 'input[name=trading_pair_options]:checked' ) . val ( ) ;
if ( buying _or _selling == 'buying' ) {
var base _coin = coin ;
var rel _coin = $ ( '.trading_pair_coin' ) . selectpicker ( 'val' ) ;
}
if ( buying _or _selling == 'selling' ) {
var base _coin = $ ( '.trading_pair_coin' ) . selectpicker ( 'val' ) ;
var rel _coin = coin ;
}
var userpass = sessionStorage . getItem ( 'mm_userpass' ) ;
var mypubkey = sessionStorage . getItem ( 'mm_mypubkey' ) ;
if ( bot _data . action == 'buy' ) {
var ajax _data = { "userpass" : userpass , "method" : "bot_buy" , "base" : base _coin , "rel" : rel _coin , "maxprice" : bot _data . price , "relvolume" : bot _data . volume } ;
}
if ( bot _data . action == 'sell' ) {
var ajax _data = { "userpass" : userpass , "method" : "bot_sell" , "base" : base _coin , "rel" : rel _coin , "minprice" : bot _data . price , "basevolume" : bot _data . volume } ;
}
var url = "http://127.0.0.1:7783" ;
$ . ajax ( {
data : JSON . stringify ( ajax _data ) ,
dataType : 'json' ,
type : 'POST' ,
url : url
} ) . done ( function ( data ) {
// If successful
console . log ( data ) ;
if ( ! data . error === false ) {
toastr . error ( data . error + '<br>Balance: ' + data . balance + ' ' + data . coin , 'Bot Info' ) ;
} else if ( data . result == 'success' ) {
toastr . success ( data . name + ' started <br> Bot ID: ' + data . botid , 'Bot Info' ) ;
}
} ) . fail ( function ( jqXHR , textStatus , errorThrown ) {
// If fail
console . log ( textStatus + ': ' + errorThrown ) ;
} ) ;
check _bot _list ( ) ;
}
function bot _stop _pause _resume ( bot _data ) {
console . log ( bot _data ) ;
var userpass = sessionStorage . getItem ( 'mm_userpass' ) ;
var mypubkey = sessionStorage . getItem ( 'mm_mypubkey' ) ;
if ( bot _data . action == 'pause' ) {
var ajax _data = { "userpass" : userpass , "method" : "bot_pause" , "botid" : bot _data . botid } ;
}
if ( bot _data . action == 'resume' ) {
var ajax _data = { "userpass" : userpass , "method" : "bot_resume" , "botid" : bot _data . botid } ;
}
if ( bot _data . action == 'stop' ) {
var ajax _data = { "userpass" : userpass , "method" : "bot_stop" , "botid" : bot _data . botid } ;
}
var url = "http://127.0.0.1:7783" ;
$ . ajax ( {
data : JSON . stringify ( ajax _data ) ,
dataType : 'json' ,
type : 'POST' ,
url : url
} ) . done ( function ( data ) {
// If successful
console . log ( data ) ;
if ( ! data . error === false ) {
toastr . error ( data . error , 'Bot Info' ) ;
} else if ( data . result == 'success' ) {
toastr . success ( 'Bot ID: ' + bot _data . botid + ' ' + bot _data . action + 'ed' , 'Bot Info' ) ;
}
} ) . fail ( function ( jqXHR , textStatus , errorThrown ) {
// If fail
console . log ( textStatus + ': ' + errorThrown ) ;
} ) ;
check _bot _list ( ) ;
}
function bot _status ( bot _data ) {
console . log ( bot _data ) ;
var userpass = sessionStorage . getItem ( 'mm_userpass' ) ;
var mypubkey = sessionStorage . getItem ( 'mm_mypubkey' ) ;
var ajax _data = { "userpass" : userpass , "method" : "bot_pause" , "botid" : bot _data . botid } ;
var url = "http://127.0.0.1:7783" ;
$ . ajax ( {
data : JSON . stringify ( ajax _data ) ,
dataType : 'json' ,
type : 'POST' ,
url : url
} ) . done ( function ( data ) {
// If successful
console . log ( data ) ;
if ( ! data . error === false ) {
toastr . error ( data . error , 'Bot Info' ) ;
} else if ( data . result == 'success' ) {
toastr . success ( 'Bot ID: ' + bot _data . botid + ' ' + bot _data . action + 'ed' , 'Bot Info' ) ;
}
} ) . fail ( function ( jqXHR , textStatus , errorThrown ) {
// If fail
console . log ( textStatus + ': ' + errorThrown ) ;
} ) ;
check _bot _list ( ) ;
}
2017-11-04 10:53:15 -07:00
/* Auto Trading Bot END */
/* Swap Status */
$ ( '.btn-swapstatusrefresh' ) . click ( function ( ) {
check _swap _status ( ) ;
2017-11-04 07:57:53 -07:00
} )
$ ( '.check_swap_status_btn' ) . click ( function ( ) {
event . preventDefault ( ) ;
var requestid = $ ( '#swap_request_id' ) . val ( ) ;
var quoteid = $ ( '#swap_quote_id' ) . val ( ) ;
var userpass = sessionStorage . getItem ( 'mm_userpass' ) ;
var mypubkey = sessionStorage . getItem ( 'mm_mypubkey' ) ;
var ajax _data = { "userpass" : userpass , "method" : "swapstatus" , "requestid" : requestid , "quoteid" : quoteid } ;
var url = "http://127.0.0.1:7783/" ;
$ . ajax ( {
data : JSON . stringify ( ajax _data ) ,
dataType : 'json' ,
type : 'POST' ,
url : url
} ) . done ( function ( data ) {
// If successful
console . log ( data ) ;
$ ( '.checkswaplist-output' ) . html ( JSON . stringify ( data , null , 2 ) ) ;
} ) . fail ( function ( jqXHR , textStatus , errorThrown ) {
// If fail
console . log ( textStatus + ': ' + errorThrown ) ;
} ) ;
} )
2017-11-04 10:53:15 -07:00
$ ( '.exchange_swap_status_tbl tbody' ) . on ( 'click' , '.swapstatus_details' , function ( ) {
console . log ( 'swapstatus details button clicked' )
console . log ( $ ( this ) . data ( ) ) ;
} ) ;
function check _swap _status ( sig ) {
if ( sig == false ) {
clearInterval ( check _swap _status _Internal ) ;
return
} else {
2017-11-04 13:45:26 -07:00
console . log ( 'checking swap status' ) ;
2017-11-04 10:53:15 -07:00
}
var selected _coin = JSON . parse ( sessionStorage . getItem ( 'mm_selectedcoin' ) ) ;
var coin = selected _coin . coin ;
//console.log(coin);
var userpass = sessionStorage . getItem ( 'mm_userpass' ) ;
var mypubkey = sessionStorage . getItem ( 'mm_mypubkey' ) ;
var ajax _data = { "userpass" : userpass , "method" : "swapstatus" } ;
var url = "http://127.0.0.1:7783" ;
$ . ajax ( {
data : JSON . stringify ( ajax _data ) ,
dataType : 'json' ,
type : 'POST' ,
url : url
} ) . done ( function ( data ) {
// If successful
//console.log(data);
$ ( '.exchange_swap_status_tbl tbody' ) . empty ( ) ;
$ . each ( data . swaps , function ( index , val ) {
//console.log(index);
//console.log(val);
if ( ! val . error === false ) {
var exchange _swap _status _tr = '' ;
exchange _swap _status _tr += '<tr>' ;
exchange _swap _status _tr += '<td><div>error</div></td>' ;
exchange _swap _status _tr += '<td>-</td>' ;
exchange _swap _status _tr += '<td>-</td>' ;
exchange _swap _status _tr += '<td>-</td>' ;
exchange _swap _status _tr += '</tr>' ;
$ ( '.exchange_swap_status_tbl tbody' ) . append ( exchange _swap _status _tr ) ;
} else {
var exchange _swap _status _tr = '' ;
exchange _swap _status _tr += '<tr>' ;
exchange _swap _status _tr += '<td>' + val . status + '</td>' ;
exchange _swap _status _tr += '<td>' + val . quoteid + '</td>' ;
exchange _swap _status _tr += '<td>' + val . requestid + '</td>' ;
exchange _swap _status _tr += '<td><button class="btn btn-default swapstatus_details" data-quoteid="' + val . quoteid + '" data-requestid="' + val . requestid + '">Details</button></td>' ;
exchange _swap _status _tr += '</tr>' ;
$ ( '.exchange_swap_status_tbl tbody' ) . append ( exchange _swap _status _tr ) ;
}
} )
} ) . fail ( function ( jqXHR , textStatus , errorThrown ) {
// If fail
console . log ( textStatus + ': ' + errorThrown ) ;
} ) ;
}
2017-11-04 07:57:53 -07:00
/* Swap Status END */