From 998582981312593d794fc6e3d3f2233b6c4d6326 Mon Sep 17 00:00:00 2001 From: Khalid Ibrahim Date: Tue, 11 Jun 2019 14:51:38 +0800 Subject: [PATCH 1/6] fixed barrier issue --- src/common/rivetsExtra.es6 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/common/rivetsExtra.es6 b/src/common/rivetsExtra.es6 index 965c75a4fb..4b0a0ec18c 100644 --- a/src/common/rivetsExtra.es6 +++ b/src/common/rivetsExtra.es6 @@ -67,7 +67,7 @@ rv.formatters['has-value'] = hasValue; /* localise price format*/ rv.formatters['format-price'] = (value, currency) => hasValue(value) ? formatPrice(value, currency) : undefined; /* comma added format*/ -rv.formatters['add-comma'] = (value, decimal_points) => (parseFloat(value)) ? addComma(value, decimal_points) : undefined; +rv.formatters['add-comma'] = (value, decimal_points) => value ? addComma(value, decimal_points) : undefined; /* rivets formater to capitalize string */ rv.formatters.capitalize = { read: (value) => _.capitalize(value), From 06ce7e642ac533c72236df0b3b5d7e24a7e1178f Mon Sep 17 00:00:00 2001 From: Khalid Ibrahim Date: Tue, 11 Jun 2019 18:43:27 +0800 Subject: [PATCH 2/6] fixed multiple error popup --- src/statement/statement.es6 | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/statement/statement.es6 b/src/statement/statement.es6 index c9560ce194..9742a9e48d 100644 --- a/src/statement/statement.es6 +++ b/src/statement/statement.es6 @@ -30,6 +30,7 @@ export const init = ($menuLink) => { let loading = false; let is_specific_date_shown = false; /* is data for a specific date is shown */ +let api_limit_reached = false; const refreshTable = (yyy_mm_dd) => { const processing_msg = $('#' + table.attr('id') + '_processing').css('top','200px').show(); @@ -89,6 +90,7 @@ const refreshTable = (yyy_mm_dd) => { .then(refresh) .catch((err) => { refresh({}); + api_limit_reached = true; $.growl.error({ message: err.message }); console.error(err); loading = false; @@ -173,7 +175,7 @@ const initStatement = () => { innerHeight = statement.innerHeight(), scrollHeight = statement[0].scrollHeight, postion = (scrollTop + innerHeight) / scrollHeight; - if(postion > 0.75 && !loading && !is_specific_date_shown){ + if(postion > 0.75 && !loading && !is_specific_date_shown && !api_limit_reached){ refreshTable({clear:false}); } }); From ee14246f1f646634b4ae903828a263f4c154afc6 Mon Sep 17 00:00:00 2001 From: Khalid Ibrahim Date: Wed, 12 Jun 2019 13:57:56 +0800 Subject: [PATCH 3/6] stop api call if nothing returned --- src/common/rivetsExtra.es6 | 2 +- src/statement/statement.es6 | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/common/rivetsExtra.es6 b/src/common/rivetsExtra.es6 index 4b0a0ec18c..433d45eb3c 100644 --- a/src/common/rivetsExtra.es6 +++ b/src/common/rivetsExtra.es6 @@ -67,7 +67,7 @@ rv.formatters['has-value'] = hasValue; /* localise price format*/ rv.formatters['format-price'] = (value, currency) => hasValue(value) ? formatPrice(value, currency) : undefined; /* comma added format*/ -rv.formatters['add-comma'] = (value, decimal_points) => value ? addComma(value, decimal_points) : undefined; +rv.formatters['add-comma'] = (value, decimal_points) => hasValue(value) ? addComma(value, decimal_points) : undefined; /* rivets formater to capitalize string */ rv.formatters.capitalize = { read: (value) => _.capitalize(value), diff --git a/src/statement/statement.es6 b/src/statement/statement.es6 index 9742a9e48d..de20729a3d 100644 --- a/src/statement/statement.es6 +++ b/src/statement/statement.es6 @@ -30,7 +30,7 @@ export const init = ($menuLink) => { let loading = false; let is_specific_date_shown = false; /* is data for a specific date is shown */ -let api_limit_reached = false; +let scroll_end_reached = false; const refreshTable = (yyy_mm_dd) => { const processing_msg = $('#' + table.attr('id') + '_processing').css('top','200px').show(); @@ -80,6 +80,7 @@ const refreshTable = (yyy_mm_dd) => { table.api().rows.add(rows); table.api().draw(); loading = false; + if (data.statement.count === 0) scroll_end_reached = true; processing_msg.hide(); }; @@ -90,7 +91,6 @@ const refreshTable = (yyy_mm_dd) => { .then(refresh) .catch((err) => { refresh({}); - api_limit_reached = true; $.growl.error({ message: err.message }); console.error(err); loading = false; @@ -175,7 +175,7 @@ const initStatement = () => { innerHeight = statement.innerHeight(), scrollHeight = statement[0].scrollHeight, postion = (scrollTop + innerHeight) / scrollHeight; - if(postion > 0.75 && !loading && !is_specific_date_shown && !api_limit_reached){ + if(postion > 0.75 && !loading && !is_specific_date_shown && !scroll_end_reached){ refreshTable({clear:false}); } }); From ca29ac34afc7fed5c5dd208bc7b8cfea2afe771b Mon Sep 17 00:00:00 2001 From: Khalid Ibrahim Date: Wed, 12 Jun 2019 14:21:48 +0800 Subject: [PATCH 4/6] re-init variable --- src/statement/statement.es6 | 1 + 1 file changed, 1 insertion(+) diff --git a/src/statement/statement.es6 b/src/statement/statement.es6 index de20729a3d..fb192e28d0 100644 --- a/src/statement/statement.es6 +++ b/src/statement/statement.es6 @@ -99,6 +99,7 @@ const refreshTable = (yyy_mm_dd) => { } const initStatement = () => { + scroll_end_reached = false; statement = windows.createBlankWindow($('
'), { title: 'Statement'.i18n(), dialogClass: 'statement', From 64519def915b0a4ab77809fd7fecbf8e56f1ab6b Mon Sep 17 00:00:00 2001 From: Khalid Ibrahim Date: Wed, 12 Jun 2019 17:47:20 +0800 Subject: [PATCH 5/6] backward compatible conditions --- src/common/rivetsExtra.es6 | 2 +- src/viewtransaction/viewTransaction.es6 | 10 ++++++++-- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/src/common/rivetsExtra.es6 b/src/common/rivetsExtra.es6 index 433d45eb3c..4b0a0ec18c 100644 --- a/src/common/rivetsExtra.es6 +++ b/src/common/rivetsExtra.es6 @@ -67,7 +67,7 @@ rv.formatters['has-value'] = hasValue; /* localise price format*/ rv.formatters['format-price'] = (value, currency) => hasValue(value) ? formatPrice(value, currency) : undefined; /* comma added format*/ -rv.formatters['add-comma'] = (value, decimal_points) => hasValue(value) ? addComma(value, decimal_points) : undefined; +rv.formatters['add-comma'] = (value, decimal_points) => value ? addComma(value, decimal_points) : undefined; /* rivets formater to capitalize string */ rv.formatters.capitalize = { read: (value) => _.capitalize(value), diff --git a/src/viewtransaction/viewTransaction.es6 b/src/viewtransaction/viewTransaction.es6 index a22f7387f7..4b057f4534 100644 --- a/src/viewtransaction/viewTransaction.es6 +++ b/src/viewtransaction/viewTransaction.es6 @@ -45,6 +45,12 @@ const showMarketDataDisruptionWindow = () => { window.dd = market_data_disruption_win; }; +const countDecimals = (value) => { + if ((value % 1) != 0) + return value.toString().split(".")[1].length; + return 0; +}; + const initChart = (root, state, options) => { let data = []; let type = ''; @@ -233,11 +239,11 @@ const updateIndicative = (data, state) => { state.proposal_open_contract.current_spot = contract.current_spot; state.proposal_open_contract.current_spot_time = contract.current_spot_time; state.proposal_open_contract.bid_price = contract.bid_price; - state.proposal_open_contract.entry_tick = contract.entry_tick; + state.proposal_open_contract.entry_tick = countDecimals(contract.entry_tick) < 3 ? contract.entry_tick.toFixed(3) : contract.entry_tick; state.proposal_open_contract.entry_tick_time = contract.entry_tick_time; state.proposal_open_contract.status = contract.status; state.proposal_open_contract.is_sold = contract.is_sold; - state.proposal_open_contract.exit_tick = contract.exit_tick; + state.proposal_open_contract.exit_tick = countDecimals(contract.exit_tick) < 3 ? contract.exit_tick.toFixed(3) : contract.exit_tick; state.proposal_open_contract.exit_tick_time = contract.exit_tick_time; state.proposal_open_contract.date_expiry = contract.date_expiry; state.proposal_open_contract.sell_price = contract.sell_price; From 1f428416afa57c5398f08f9b79a8228fd139fd4b Mon Sep 17 00:00:00 2001 From: Khalid Ibrahim Date: Thu, 13 Jun 2019 14:20:53 +0800 Subject: [PATCH 6/6] one more = sign --- src/viewtransaction/viewTransaction.es6 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/viewtransaction/viewTransaction.es6 b/src/viewtransaction/viewTransaction.es6 index 4b057f4534..b3c1ec54fa 100644 --- a/src/viewtransaction/viewTransaction.es6 +++ b/src/viewtransaction/viewTransaction.es6 @@ -45,8 +45,8 @@ const showMarketDataDisruptionWindow = () => { window.dd = market_data_disruption_win; }; -const countDecimals = (value) => { - if ((value % 1) != 0) +const countDecimals = (value) => { + if ((value % 1) !== 0) return value.toString().split(".")[1].length; return 0; };