setting, session and profile
This commit is contained in:
parent
48eea5d201
commit
4a563f4f34
31 changed files with 1797 additions and 159 deletions
28
frontend/src/auth.js
Normal file
28
frontend/src/auth.js
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
export const AUTH_TOKEN_KEY = "agmail_access_token";
|
||||
export const AUTH_ACCOUNT_KEY = "agmail_account";
|
||||
|
||||
let sessionRedirecting = false;
|
||||
|
||||
export function getAccessToken() {
|
||||
return sessionStorage.getItem(AUTH_TOKEN_KEY);
|
||||
}
|
||||
|
||||
export function isLoggedIn() {
|
||||
return Boolean(getAccessToken());
|
||||
}
|
||||
|
||||
export function clearSession() {
|
||||
sessionStorage.removeItem(AUTH_TOKEN_KEY);
|
||||
sessionStorage.removeItem(AUTH_ACCOUNT_KEY);
|
||||
}
|
||||
|
||||
export function getBrandHomeHref() {
|
||||
return isLoggedIn() ? "/app" : "/";
|
||||
}
|
||||
|
||||
export function redirectSessionExpired() {
|
||||
if (sessionRedirecting) return;
|
||||
sessionRedirecting = true;
|
||||
clearSession();
|
||||
window.location.replace("/?session=expired");
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue