From b291ca57f3cffd1bfe91355ea4e79cab1497fa3a Mon Sep 17 00:00:00 2001 From: Lucas Schoenfelder <les17@inf.ufpr.br> Date: Thu, 3 Dec 2020 12:20:31 -0300 Subject: [PATCH] fixed logout button --- src/Components/MenuList.js | 37 +++++++++++++++++++----------- src/Components/MobileDrawerMenu.js | 36 ++++++++++++++++++----------- 2 files changed, 47 insertions(+), 26 deletions(-) diff --git a/src/Components/MenuList.js b/src/Components/MenuList.js index 796b57b3..402fa2e7 100644 --- a/src/Components/MenuList.js +++ b/src/Components/MenuList.js @@ -28,7 +28,9 @@ import { Store } from '../Store'; import { Redirect } from "react-router-dom"; import Profile from '../img/default_profile0.png' import styled from 'styled-components' -import {apiDomain} from '../env.js' +import {apiDomain, apiUrl} from '../env.js' +import {getAxiosConfig} from './HelperFunctions/getAxiosConfig' +import axios from 'axios' const iconStyles = { fontSize : "xxx-large", @@ -56,20 +58,29 @@ export default function MenuList(props) { }; const handleLogout = () => { - localStorage.removeItem('@portalmec/username'); - sessionStorage.removeItem('@portalmec/uid'); - sessionStorage.removeItem('@portalmec/senha'); - dispatch( { - type: 'USER_LOGGED_OUT', - userLoggedOut: !state.userIsLoggedIn, - login: { - username : '', - email : '', - accessToken : '', - client : '' + let config = getAxiosConfig() + axios.delete(`${apiUrl}/auth/sign_out`, config).then( + (res) => { + + localStorage.removeItem('@portalmec/username'); + sessionStorage.removeItem('@portalmec/uid'); + sessionStorage.removeItem('@portalmec/senha'); + dispatch( { + type: 'USER_LOGGED_OUT', + userLoggedOut: !state.userIsLoggedIn, + login: { + username : '', + email : '', + accessToken : '', + client : '' } - } + }) + }, + (err) => { + console.log(err) + } ) + } return ( diff --git a/src/Components/MobileDrawerMenu.js b/src/Components/MobileDrawerMenu.js index 82d708bd..479ccc04 100644 --- a/src/Components/MobileDrawerMenu.js +++ b/src/Components/MobileDrawerMenu.js @@ -31,13 +31,15 @@ import ExitToAppIcon from '@material-ui/icons/ExitToApp' import { Button } from '@material-ui/core'; import MenuItem from '@material-ui/core/MenuItem'; import DefaultAvatar from '../img/default_profile0.png' -import {apiDomain} from '../env.js' import CloudUploadIcon from '@material-ui/icons/CloudUpload'; import CloudDoneIcon from '@material-ui/icons/CloudDone'; import HistoryIcon from '@material-ui/icons/History'; import FavoriteBorderIcon from '@material-ui/icons/FavoriteBorder'; import FolderOpenIcon from '@material-ui/icons/FolderOpen'; import SettingsIcon from '@material-ui/icons/Settings'; +import {apiDomain, apiUrl} from '../env.js' +import {getAxiosConfig} from './HelperFunctions/getAxiosConfig' +import axios from 'axios' export default function MobileDrawerMenu (props) { const {state, dispatch} = useContext(Store) @@ -76,19 +78,27 @@ export default function MobileDrawerMenu (props) { {/*dispatches log out actions to Store.js*/} const handleLogout = () => { - sessionStorage.removeItem('@portalmec/username'); - sessionStorage.removeItem('@portalmec/uid'); - sessionStorage.removeItem('@portalmec/senha'); - dispatch( { - type: 'USER_LOGGED_OUT', - userLoggedOut: !state.userIsLoggedIn, - login: { - username : '', - email : '', - accessToken : '', - client : '' + let config = getAxiosConfig() + axios.delete(`${apiUrl}/auth/sign_out`, config).then( + (res) => { + + localStorage.removeItem('@portalmec/username'); + sessionStorage.removeItem('@portalmec/uid'); + sessionStorage.removeItem('@portalmec/senha'); + dispatch( { + type: 'USER_LOGGED_OUT', + userLoggedOut: !state.userIsLoggedIn, + login: { + username : '', + email : '', + accessToken : '', + client : '' } - } + }) + }, + (err) => { + console.log(err) + } ) } -- GitLab