diff --git a/client/coral-framework/actions/auth.js b/client/coral-framework/actions/auth.js
index 3981d8021..896fb9aab 100644
--- a/client/coral-framework/actions/auth.js
+++ b/client/coral-framework/actions/auth.js
@@ -16,15 +16,15 @@ export const cleanState = () => ({type: actions.CLEAN_STATE});
// Sign In Actions
const signInRequest = () => ({type: actions.FETCH_SIGNIN_REQUEST});
-const signInSuccess = () => ({type: actions.FETCH_SIGNIN_SUCCESS});
-const signInFailure = () => ({type: actions.FETCH_SIGNIN_FAILURE});
+const signInSuccess = (user) => ({type: actions.FETCH_SIGNIN_SUCCESS, user});
+const signInFailure = (error) => ({type: actions.FETCH_SIGNIN_FAILURE, error});
-export const fetchSignIn = () => dispatch => {
+export const fetchSignIn = (formData) => dispatch => {
dispatch(signInRequest());
- fetch(`${base}/auth`, getInit('POST'))
+ fetch(`${base}/auth/local`, getInit('POST', formData))
.then(handleResp)
- .then(() => dispatch(signInSuccess()))
- .catch(error => dispatch(signInFailure(error)));
+ .then(({user}) => dispatch(signInSuccess(user)))
+ .catch(() => dispatch(signInFailure('Email and/or password combination incorrect.')));
};
// Sign In - Facebook
diff --git a/client/coral-framework/reducers/auth.js b/client/coral-framework/reducers/auth.js
index 89e7c8012..001c98346 100644
--- a/client/coral-framework/reducers/auth.js
+++ b/client/coral-framework/reducers/auth.js
@@ -17,10 +17,10 @@ const initialState = Map({
auth: Map(),
isLoading: false,
loggedIn: false,
- error: '',
user: null,
showSignInDialog: false,
- view: 'SIGNIN'
+ view: 'SIGNIN',
+ signInError: ''
});
export const getEmail = state => state.auth.formData.email;
@@ -42,10 +42,15 @@ export default function auth (state = initialState, action) {
.set('isLoading', true);
case FETCH_SIGNIN_FAILURE:
return state
- .set('isLoading', false);
+ .set('isLoading', false)
+ .set('signInError', action.error);
case FETCH_SIGNIN_SUCCESS:
return state
- .set('isLoading', false);
+ .set('signInError', '')
+ .set('isLoading', false)
+ .set('loggedIn', true)
+ .set('user', action.user)
+ .set('showSignInDialog', false);
case FETCH_SIGNIN_FACEBOOK_SUCCESS:
return state
.set('user', action.user)
diff --git a/client/coral-sign-in/components/SignInContent.js b/client/coral-sign-in/components/SignInContent.js
index 6a1e726c5..aa3b712fa 100644
--- a/client/coral-sign-in/components/SignInContent.js
+++ b/client/coral-sign-in/components/SignInContent.js
@@ -27,7 +27,7 @@ const SignInContent = ({handleChange, formData, ...props}) => (
{lang.t('signIn.or')}
- { props.message &&