Avoid reload on manual logout

This commit is contained in:
Jake McDermott 2021-06-07 16:18:16 -04:00
parent 7832639c25
commit 5da6b02801
No known key found for this signature in database
GPG Key ID: 0E56ED990CDFCB4F
2 changed files with 5 additions and 4 deletions

View File

@ -86,7 +86,7 @@ const AuthorizedRoutes = ({ routeConfig }) => {
};
const ProtectedRoute = ({ children, ...rest }) => {
const { setAuthRedirectTo } = useSession();
const { authRedirectTo, setAuthRedirectTo } = useSession();
const { pathname } = useLocation();
if (isAuthenticated(document.cookie)) {
@ -99,7 +99,8 @@ const ProtectedRoute = ({ children, ...rest }) => {
);
}
setAuthRedirectTo(pathname);
setAuthRedirectTo(authRedirectTo === '/logout' ? '/' : pathname);
return <Redirect to="/login" />;
};

View File

@ -74,14 +74,14 @@ function SessionProvider({ children }) {
const logout = useCallback(async () => {
if (!isSessionExpired.current) {
history.replace('/');
setAuthRedirectTo('/logout');
}
await RootAPI.logout();
setSessionTimeout(0);
setSessionCountdown(0);
clearTimeout(sessionTimeoutId.current);
clearInterval(sessionIntervalId.current);
}, [setSessionTimeout, setSessionCountdown, history]);
}, [setSessionTimeout, setSessionCountdown]);
useEffect(() => {
if (!isAuthenticated(document.cookie)) {