Skip to content

Instantly share code, notes, and snippets.

@bnhansn
Last active October 21, 2016 14:29
Show Gist options
  • Save bnhansn/860eb4c142157ab5023ece2b4d8d970e to your computer and use it in GitHub Desktop.
Save bnhansn/860eb4c142157ab5023ece2b4d8d970e to your computer and use it in GitHub Desktop.
import { reset } from 'redux-form';
import api from '../api';
function setCurrentUser(dispatch, response) {
localStorage.setItem('token', JSON.stringify(response.meta.token));
dispatch({ type: 'AUTHENTICATION_SUCCESS', response });
}
export function login(data, router) {
return dispatch => api.post('/sessions', data)
.then((response) => {
setCurrentUser(dispatch, response);
dispatch(reset('login'));
router.transitionTo('/');
});
}
export function signup(data, router) {
return dispatch => api.post('/users', data)
.then((response) => {
setCurrentUser(dispatch, response);
dispatch(reset('signup'));
router.transitionTo('/');
});
}
export function logout(router) {
return dispatch => api.delete('/sessions')
.then(() => {
localStorage.removeItem('token');
dispatch({ type: 'LOGOUT' });
router.transitionTo('/login');
});
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment