function ShowBasiliskFetchDataProgress(coin) { var active_edexcoinmodecode = sessionStorage.getItem('edexTmpMode'); Shepherd_GetBasiliskCache() .then(function(result) { var _data = JSON.parse(result), NOT_FOUND = 'NOT FOUND', query = _data.result.basilisk, coin_exists = true, addresses_exists = true, getbalance_exists = true, listtransactions_exists = true, listunspent_exists = true, refresh_exists = true, getbalance_status = NOT_FOUND, listtransactions_status = NOT_FOUND, listunspent_status = NOT_FOUND, refresh_status = NOT_FOUND, res_data; res_data = { 'addresses': false, 'getbalance': false, 'listtransactions': false, 'listunspent': false, 'refresh': false } if (!query) { res_data.coin = false; } else if (!query[coin]) { coin_exists = false; res_data.coin = coin_exists; } else if (!('addresses' in query[coin])) { addresses_exists = false; res_data.coin = coin_exists; } else { Promise.all(query[coin].addresses.map((coinaddr_value,coinaddr_index) => { return new Promise((resolve, reject) => { var data = query[coin][coinaddr_value].getbalance; if (!('getbalance' in query[coin][coinaddr_value])) { getbalance_exists = false; } else { getbalance_status = query[coin][coinaddr_value].getbalance.status; } if (!('listtransactions' in query[coin][coinaddr_value])) { listtransactions_exists = false; } else { listtransactions_status = query[coin][coinaddr_value].listtransactions.status; } if (!('listunspent' in query[coin][coinaddr_value])) { listunspent_exists = false; } else { listunspent_status = query[coin][coinaddr_value].listunspent.status; } if (!('refresh' in query[coin][coinaddr_value])) { refresh_exists = false; } else { refresh_status = query[coin][coinaddr_value].refresh.status; } pass_data = { 'addr_index': coinaddr_index, 'addr_value': coinaddr_value, 'getbalance': getbalance_exists, 'getbalance_status': getbalance_status, 'listtransactions': listtransactions_exists, 'listtransactions_status': listtransactions_status, 'listunspent': listunspent_exists, 'listunspent_status': listunspent_status, 'refresh': refresh_exists, 'refresh_status': refresh_status }; resolve(pass_data); }); })) .then(result => { var BasiliskFetchData = ''; $.each(result, function(result_index, result_val) { var tmp_listunspent_lable_color = '', tmp_listtransactions_lable_color = '', tmp_getbalance_lable_color = '', tmp_refresh_lable_color = ''; switch (result_val.listunspent_status) { case 'waiting': tmp_listunspent_lable_color = 'dark'; break; case 'in progress': tmp_listunspent_lable_color = 'primary'; break; case 'done': tmp_listunspent_lable_color = 'success'; break; case NOT_FOUND: tmp_listunspent_lable_color = 'danger'; break; } switch (result_val.listtransactions_status) { case 'waiting': tmp_listtransactions_lable_color = 'dark'; $('#edexcoin_dashboard_basilisk_refresh_status').show(); break; case 'in progress': tmp_listtransactions_lable_color = 'primary'; $('#edexcoin_dashboard_basilisk_refresh_status').show(); break; case 'done': tmp_listtransactions_lable_color = 'success'; $('#edexcoin_dashboard_basilisk_refresh_status').hide(); break; case NOT_FOUND: tmp_listtransactions_lable_color = 'danger'; $('#edexcoin_dashboard_basilisk_refresh_status').show(); break; } switch (result_val.getbalance_status) { case 'waiting': tmp_getbalance_lable_color = 'dark'; $('#edexcoin_dashboard_basilisk_refresh_status').show(); break; case 'in progress': tmp_getbalance_lable_color = 'primary'; $('#edexcoin_dashboard_basilisk_refresh_status').show(); break; case 'done': tmp_getbalance_lable_color = 'success'; $('#edexcoin_dashboard_basilisk_refresh_status').hide(); break; case NOT_FOUND: tmp_getbalance_lable_color = 'danger'; $('#edexcoin_dashboard_basilisk_refresh_status').show(); break; } switch (result_val.refresh_status) { case 'waiting': tmp_refresh_lable_color = 'dark'; $('#edexcoin_dashboard_basilisk_refresh_status').show(); break; case 'in progress': tmp_refresh_lable_color = 'primary'; $('#edexcoin_dashboard_basilisk_refresh_status').show(); break; case 'done': tmp_refresh_lable_color = 'success'; $('#edexcoin_dashboard_basilisk_refresh_status').hide(); break; case NOT_FOUND: tmp_refresh_lable_color = 'danger'; break; } BasiliskFetchData += '