diff --git a/packages/blockchain-wallet-v4-frontend/src/modals/SfoxExchangeData/Create/AcceptTerms.js b/packages/blockchain-wallet-v4-frontend/src/modals/SfoxExchangeData/Create/AcceptTerms.js
index fdfad080d6c..8a39207e879 100644
--- a/packages/blockchain-wallet-v4-frontend/src/modals/SfoxExchangeData/Create/AcceptTerms.js
+++ b/packages/blockchain-wallet-v4-frontend/src/modals/SfoxExchangeData/Create/AcceptTerms.js
@@ -81,11 +81,6 @@ class AcceptTerms extends Component {
this.handleSignup = this.handleSignup.bind(this)
}
- componentWillReceiveProps (nextProps) {
- const error = Remote.of(nextProps.sfoxSignupStatus)
- if (error.data.error && error.data.error.message === 'user is already registered') this.props.updateUI({ uniqueEmail: false })
- }
-
handleSignup (e) {
e.preventDefault()
this.props.sfoxFrontendActions.sfoxNotAsked()
@@ -100,7 +95,7 @@ class AcceptTerms extends Component {
NotAsked: () => ({ busy: false })
})
- const { invalid, email, smsNumber, editEmail, editMobile, emailVerified, smsVerified, sfoxFrontendActions } = this.props
+ const { invalid, email, smsNumber, editEmail, editMobile, emailVerified, smsVerified, sfoxFrontendActions, needsChangeEmail } = this.props
const { sfoxNotAsked } = sfoxFrontendActions
const faqHelper = () => helpers.map((el, i) => )
@@ -181,7 +176,7 @@ class AcceptTerms extends Component {
- { sfoxNotAsked(); this.props.updateUI({ create: 'change_email' }) }} >
+ { sfoxNotAsked(); needsChangeEmail() }} >
diff --git a/packages/blockchain-wallet-v4-frontend/src/modals/SfoxExchangeData/Create/index.js b/packages/blockchain-wallet-v4-frontend/src/modals/SfoxExchangeData/Create/index.js
index acca39a2583..09d0356ec66 100644
--- a/packages/blockchain-wallet-v4-frontend/src/modals/SfoxExchangeData/Create/index.js
+++ b/packages/blockchain-wallet-v4-frontend/src/modals/SfoxExchangeData/Create/index.js
@@ -29,6 +29,7 @@ class CreateContainer extends Component {
editMobile={() => { this.props.updateUI({ create: 'change_mobile' }); this.setState({ editVerifiedMobile: true }) }}
editVerifiedEmail={this.state.editVerifiedEmail}
editVerifiedMobile={this.state.editVerifiedMobile}
+ needsChangeEmail={() => this.props.updateUI({ create: 'change_email', uniqueEmail: false })}
{...this.props}
/>
}
diff --git a/packages/blockchain-wallet-v4/src/redux/data/sfox/sagas.js b/packages/blockchain-wallet-v4/src/redux/data/sfox/sagas.js
index 7f95a609b2f..68e5323c20e 100644
--- a/packages/blockchain-wallet-v4/src/redux/data/sfox/sagas.js
+++ b/packages/blockchain-wallet-v4/src/redux/data/sfox/sagas.js
@@ -131,12 +131,16 @@ export default ({ api, options }) => {
}
const getSfox = function * () {
- const state = yield select()
- const delegate = new ExchangeDelegate(state, api)
- const value = yield select(buySellSelectors.getMetadata)
- const walletOptions = state.walletOptionsPath.data
- const sfox = sfoxService.refresh(value, delegate, walletOptions)
- return sfox
+ try {
+ const state = yield select()
+ const delegate = new ExchangeDelegate(state, api)
+ const value = yield select(buySellSelectors.getMetadata)
+ const walletOptions = state.walletOptionsPath.data
+ const sfox = sfoxService.refresh(value, delegate, walletOptions)
+ return sfox
+ } catch (error) {
+ console.warn(error)
+ }
}
const setBankManually = function * (data) {