fix(ascceptTerms): Navigate to /welcome on PP & ToS accept

pull/18065/head
Bouncey 2018-08-25 00:36:22 +01:00 committed by mrugesh mohapatra
parent 7fd0b5b84b
commit d77397b53f
2 changed files with 18 additions and 15 deletions

View File

@ -15,7 +15,7 @@ import Helmet from 'react-helmet';
import Layout from '../components/layout';
import { ButtonSpacer, Spacer } from '../components/helpers';
import { acceptTerms, isSignedInSelector, userSelector } from '../redux';
import { acceptTerms, userSelector } from '../redux';
import { createSelector } from 'reselect';
import { navigateTo } from 'gatsby';
@ -26,10 +26,8 @@ const propTypes = {
};
const mapStateToProps = createSelector(
isSignedInSelector,
userSelector,
(isSignedIn, { acceptedPrivacyTerms }) => ({
isSignedIn,
({ acceptedPrivacyTerms }) => ({
acceptedPrivacyTerms
})
);
@ -66,9 +64,9 @@ class AcceptPrivacyTerms extends Component {
}
render() {
const { isSignedIn, acceptedPrivacyTerms } = this.props;
if (!isSignedIn || acceptedPrivacyTerms) {
navigateTo(isSignedIn ? '/welcome' : '/');
const { acceptedPrivacyTerms } = this.props;
if (acceptedPrivacyTerms) {
navigateTo('/welcome');
return null;
}
const { privacyPolicy, termsOfService, quincyEmail } = this.state;

View File

@ -1,16 +1,14 @@
import { call, put, takeEvery } from 'redux-saga/effects';
import { navigateTo } from 'gatsby';
import { acceptTermsComplete, acceptTermsError } from './';
import { putUserAcceptsTerms } from '../utils/ajax';
import { createFlashMessage } from '../components/Flash/redux';
import { putUserAcceptsTerms } from '../utils/ajax';
function* acceptTermsSaga({ payload: quincyEmails }) {
console.log('hello?');
try {
const {
data: response
} = yield call(putUserAcceptsTerms, quincyEmails);
const { data: response } = yield call(putUserAcceptsTerms, quincyEmails);
yield put(acceptTermsComplete());
yield put(createFlashMessage(response));
@ -19,6 +17,13 @@ function* acceptTermsSaga({ payload: quincyEmails }) {
}
}
export function createAcceptTermsSaga(types) {
return [takeEvery(types.acceptTerms, acceptTermsSaga)];
function* acceptCompleteSaga() {
yield call(navigateTo, '/welcome');
}
export function createAcceptTermsSaga(types) {
return [
takeEvery(types.acceptTerms, acceptTermsSaga),
takeEvery(types.acceptTermsComplete, acceptCompleteSaga)
];
}