From e161028cb3e57b586937ebcd5ed0f2da4360bb16 Mon Sep 17 00:00:00 2001
From: Naufal Alauddin Hilmi <naufal.alauddin@ui.ac.id>
Date: Wed, 31 Mar 2021 19:06:49 +0700
Subject: [PATCH] [GREEN] prerender fetch user

---
 src/App.js            | 2 ++
 src/reducer/auth.js   | 1 +
 src/util/prerender.js | 7 +++++++
 3 files changed, 10 insertions(+)
 create mode 100644 src/util/prerender.js

diff --git a/src/App.js b/src/App.js
index 7fd2872a..f8786460 100644
--- a/src/App.js
+++ b/src/App.js
@@ -5,10 +5,12 @@ import Footer from './components/Footer/Footer';
 import Home from './components/Home/Home';
 import { Provider } from 'react-redux';
 import Login from './page/Login';
+import { fetch_user } from './util/prerender';
 
 import store from './store';
 
 function App() {
+  fetch_user(store);
   return (
     <Provider store={store}>
       <Router>
diff --git a/src/reducer/auth.js b/src/reducer/auth.js
index a82774a8..3abb8131 100644
--- a/src/reducer/auth.js
+++ b/src/reducer/auth.js
@@ -39,6 +39,7 @@ function reducer(state = initialState, action) {
     case USER_LOADED_SUCCESS:
       return {
         ...state,
+        isAuthenticated: true,
         user: payload
       }
     case USER_LOADED_FAIL:
diff --git a/src/util/prerender.js b/src/util/prerender.js
new file mode 100644
index 00000000..a9707f8a
--- /dev/null
+++ b/src/util/prerender.js
@@ -0,0 +1,7 @@
+import { load_user } from '../actions/auth';
+
+export const fetch_user = async (store) => {
+  if (localStorage.getItem('access')) {
+    load_user()(store.dispatch);
+  }
+}
-- 
GitLab