diff options
Diffstat (limited to 'app/client/auth/auth.actions.js')
| -rw-r--r-- | app/client/auth/auth.actions.js | 89 |
1 files changed, 49 insertions, 40 deletions
diff --git a/app/client/auth/auth.actions.js b/app/client/auth/auth.actions.js index 5968f87..991a3f9 100644 --- a/app/client/auth/auth.actions.js +++ b/app/client/auth/auth.actions.js @@ -1,4 +1,5 @@ -import * as types from '../types'; +import types from '../types' +import { put } from '../api/crud.fetch' export const setToken = (data) => { return { type: types.auth.set_token, data } @@ -10,73 +11,81 @@ export const setCurrentUser = (data) => { return { type: types.auth.set_current_user, data } } export function logout() { - return { type: types.auth.logout_user }; + return { type: types.auth.logout_user } } export function authLoading() { - return { type: types.auth.loading }; + return { type: types.auth.loading } } export function InvalidCredentialsException(message) { - this.message = message; - this.name = 'InvalidCredentialsException'; + this.message = message + this.name = 'InvalidCredentialsException' +} + +const api = { + login: '/api/login', + logout: '/api/logout', + signup: '/api/signup', + checkin: '/api/checkin', } export function login(username, password) { return (dispatch) => { - dispatch(authLoading()); - apiClient() - .post(api.GET_TOKEN, { + dispatch(authLoading()) + fetch(api.login, put({ username, password + })) + .then(req => req.json()) + .then(data => { + dispatch(setToken(data.token)) + dispatch(checkin()) }) - .then(function (response) { - dispatch(setToken(response.data.token)); - dispatch(getCurrentUser()); - }) - .catch(function (error) { - dispatch(setError(true)); + .catch(error => { + dispatch(setError(true)) if (error.response.status === 400) { - throw new InvalidCredentialsException(error); + throw new InvalidCredentialsException(error) } - throw error; - }); - }; + throw error + }) + } } export function signup(data) { return (dispatch) => { - dispatch(authLoading()); - apiClient() - .post(api.SIGNUP, data) - .then(function (response) { - console.log(response.data); - dispatch(login(data.username, data.password)); + dispatch(authLoading()) + fetch(api.signup, put(data)) + .then(req => req.json()) + .then(data => { + console.log(data) + dispatch(login(data.username, data.password)) }) - .catch(function (error) { + .catch(error => { console.log(error) if (error.response.status === 400) { // dispatch(accountError("There was an error creating your account.")) - throw new InvalidCredentialsException(error); + throw new InvalidCredentialsException(error) } - throw error; - }); - }; + throw error + }) + } } -export function getCurrentUser() { +export function checkin() { return (dispatch) => { - dispatch(authLoading()); - apiClient() - .get(api.CURRENT_USER) - .then(function (response) { - dispatch(setCurrentUser(response.data)); + dispatch(authLoading()) + fetch(api.checkin) + .then(req => req.json()) + .then(data => { + console.log(data) + dispatch(setCurrentUser(data)) console.log('set current user') }) - .catch(function (error) { + .catch(error => { if (error.response.status === 400) { - throw new InvalidCredentialsException(error); + throw new InvalidCredentialsException(error) } - throw error; - }); - }; + throw error + }) + } } |
