diff --git a/src/actions/login.js b/src/actions/login.js index 5083070b89260977243be1d62f59c9fa83d494fa..dd17c615c1c0d45b49334a2540519bda20dc4d77 100644 --- a/src/actions/login.js +++ b/src/actions/login.js @@ -9,7 +9,10 @@ import { import keycloak from '../keycloak'; import ICAT from '../config/icat'; -export function doLogOut(params = { expired: false }) { +export function doLogOut(sessionId, params = { expired: false }) { + if (sessionId) { + axios.delete(`${ICATPLUS.server}/session/${sessionId}`); + } return { type: LOG_OUT, ...params }; } diff --git a/src/components/Menu/Menu.js b/src/components/Menu/Menu.js index 7aa0fe899a02e8abea3eafe4a30fab3d429bd375..32b856d1a75842597c8a00a5a205614da0c8fbfc 100644 --- a/src/components/Menu/Menu.js +++ b/src/components/Menu/Menu.js @@ -21,12 +21,11 @@ function Menu() { const dispatch = useDispatch(); - function handleLogout() { + function handleLogout(sessionId) { if (keycloak && isSSO) { keycloak.logout(); - } else { - dispatch(doLogOut()); } + dispatch(doLogOut(sessionId)); } if (!sessionId) { @@ -142,7 +141,7 @@ function Menu() {