From 8603affda1987959851b3c5fc13c1fc0713d1e46 Mon Sep 17 00:00:00 2001 From: Amam Mustofa Date: Tue, 26 Feb 2019 11:48:47 +0800 Subject: [PATCH 1/2] update include list contract --- src/trade/tradeDialog.es6 | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/trade/tradeDialog.es6 b/src/trade/tradeDialog.es6 index 1db83501e0..98a9cd74bd 100644 --- a/src/trade/tradeDialog.es6 +++ b/src/trade/tradeDialog.es6 @@ -248,6 +248,8 @@ function hasIntradayUnit(duration_unit_array) { } function init_state(available,root, dialog, symbol, contracts_for_spot) { + const include_list = ['up/down', 'touch/no touch', 'in/out', 'digits', 'asians', 'rise/fall equal', 'lookbacks']; + var state = { duration: { array: ['Duration', 'End Time'], @@ -1014,12 +1016,12 @@ function init_state(available,root, dialog, symbol, contracts_for_spot) { .uniq() .value() // TODO: Remove this filter after implementing reset, high/low, spread, runs contracts. - .filter(f => !/reset|high\/low|spread|run/.test(f.toLowerCase())) + .filter(f => include_list.includes(f.toLowerCase())) .forEach(x => { let y = {}; y.contract_category_display = x; let contract_object = _.find(available, {contract_category_display: x}); - if(contract_object){ + if (contract_object) { y.contract_category = contract_object.contract_category; state.categories.array.push(y); } From 9b466a6a5bcbfe8181cbe56222c450a1ab7b50b9 Mon Sep 17 00:00:00 2001 From: Amam Mustofa Date: Wed, 27 Feb 2019 11:21:49 +0800 Subject: [PATCH 2/2] add in common --- src/common/common.es6 | 11 ++++++++++- src/trade/tradeDialog.es6 | 5 ++--- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/src/common/common.es6 b/src/common/common.es6 index 6db35e2608..6df64a38b8 100644 --- a/src/common/common.es6 +++ b/src/common/common.es6 @@ -63,4 +63,13 @@ const trade_types = [{ name: 'Goes Outside' }]; -export { trade_types }; +const SUPPORTED_CONTRACT_TYPES = Object.freeze([ + 'up/down', + 'touch/no touch', + 'in/out', 'digits', + 'asians', + 'rise/fall equal', + 'lookbacks' +]); + +export { trade_types, SUPPORTED_CONTRACT_TYPES }; diff --git a/src/trade/tradeDialog.es6 b/src/trade/tradeDialog.es6 index 98a9cd74bd..ce6ba7a5dd 100644 --- a/src/trade/tradeDialog.es6 +++ b/src/trade/tradeDialog.es6 @@ -3,6 +3,7 @@ import $ from 'jquery'; import moment from 'moment'; import windows from 'windows/windows'; import rv from 'common/rivetsExtra'; +import { SUPPORTED_CONTRACT_TYPES } from 'common/common'; import liveapi from 'websockets/binary_websockets'; import chartingRequestMap from 'charts/chartingRequestMap'; import html from 'text!trade/tradeDialog.html'; @@ -248,8 +249,6 @@ function hasIntradayUnit(duration_unit_array) { } function init_state(available,root, dialog, symbol, contracts_for_spot) { - const include_list = ['up/down', 'touch/no touch', 'in/out', 'digits', 'asians', 'rise/fall equal', 'lookbacks']; - var state = { duration: { array: ['Duration', 'End Time'], @@ -1016,7 +1015,7 @@ function init_state(available,root, dialog, symbol, contracts_for_spot) { .uniq() .value() // TODO: Remove this filter after implementing reset, high/low, spread, runs contracts. - .filter(f => include_list.includes(f.toLowerCase())) + .filter(f => SUPPORTED_CONTRACT_TYPES.includes(f.toLowerCase())) .forEach(x => { let y = {}; y.contract_category_display = x;