✨ Redirect to new subscription if has no subscription
This commit is contained in:
parent
ed80fc9102
commit
3107310d24
@ -6,6 +6,7 @@ import NavigationLink from "../../NavigationLink";
|
|||||||
import classes from "./classes.module.scss";
|
import classes from "./classes.module.scss";
|
||||||
import { AppRuleActions, AppRuleNames } from "@Front/Api/Entities/rule";
|
import { AppRuleActions, AppRuleNames } from "@Front/Api/Entities/rule";
|
||||||
import BurgerModalSubmenu from "./BurgerModalSubmenu";
|
import BurgerModalSubmenu from "./BurgerModalSubmenu";
|
||||||
|
import Rules, { RulesMode } from "@Front/Components/Elements/Rules";
|
||||||
|
|
||||||
type IProps = {
|
type IProps = {
|
||||||
isOpen: boolean;
|
isOpen: boolean;
|
||||||
@ -21,6 +22,15 @@ export default class BurgerModal extends React.Component<IProps, IState> {
|
|||||||
<>
|
<>
|
||||||
<div className={classes["background"]} onClick={this.props.closeModal} />
|
<div className={classes["background"]} onClick={this.props.closeModal} />
|
||||||
<div className={classes["root"]}>
|
<div className={classes["root"]}>
|
||||||
|
<Rules
|
||||||
|
mode={RulesMode.OPTIONAL}
|
||||||
|
rules={[
|
||||||
|
{
|
||||||
|
action: AppRuleActions.read,
|
||||||
|
name: AppRuleNames.officeFolders,
|
||||||
|
},
|
||||||
|
]}>
|
||||||
|
<>
|
||||||
<NavigationLink
|
<NavigationLink
|
||||||
path={Module.getInstance().get().modules.pages.Folder.props.path}
|
path={Module.getInstance().get().modules.pages.Folder.props.path}
|
||||||
text="Dossiers en cours"
|
text="Dossiers en cours"
|
||||||
@ -35,6 +45,8 @@ export default class BurgerModal extends React.Component<IProps, IState> {
|
|||||||
routesActive={[Module.getInstance().get().modules.pages.Folder.pages.FolderArchived.props.path]}
|
routesActive={[Module.getInstance().get().modules.pages.Folder.pages.FolderArchived.props.path]}
|
||||||
/>
|
/>
|
||||||
<div className={classes["separator"]} />
|
<div className={classes["separator"]} />
|
||||||
|
</>
|
||||||
|
</Rules>
|
||||||
|
|
||||||
<BurgerModalSubmenu
|
<BurgerModalSubmenu
|
||||||
text={"Espace super admin"}
|
text={"Espace super admin"}
|
||||||
|
@ -63,6 +63,15 @@ export default function Navigation() {
|
|||||||
|
|
||||||
return (
|
return (
|
||||||
<div className={classes["root"]}>
|
<div className={classes["root"]}>
|
||||||
|
<Rules
|
||||||
|
mode={RulesMode.OPTIONAL}
|
||||||
|
rules={[
|
||||||
|
{
|
||||||
|
action: AppRuleActions.read,
|
||||||
|
name: AppRuleNames.officeFolders,
|
||||||
|
},
|
||||||
|
]}>
|
||||||
|
<>
|
||||||
<HeaderLink
|
<HeaderLink
|
||||||
text={"Dossiers en cours"}
|
text={"Dossiers en cours"}
|
||||||
path={Module.getInstance().get().modules.pages.Folder.props.path}
|
path={Module.getInstance().get().modules.pages.Folder.props.path}
|
||||||
@ -76,14 +85,8 @@ export default function Navigation() {
|
|||||||
path={Module.getInstance().get().modules.pages.Folder.pages.FolderArchived.props.path}
|
path={Module.getInstance().get().modules.pages.Folder.pages.FolderArchived.props.path}
|
||||||
routesActive={[Module.getInstance().get().modules.pages.Folder.pages.FolderArchived.props.path]}
|
routesActive={[Module.getInstance().get().modules.pages.Folder.pages.FolderArchived.props.path]}
|
||||||
/>
|
/>
|
||||||
{/* <Rules
|
</>
|
||||||
mode={RulesMode.NECESSARY}
|
</Rules>
|
||||||
rules={[
|
|
||||||
{
|
|
||||||
action: AppRuleActions.update,
|
|
||||||
name: AppRuleNames.officeRoles,
|
|
||||||
},
|
|
||||||
]}> */}
|
|
||||||
<HeaderSubmenu
|
<HeaderSubmenu
|
||||||
text={"Espace office"}
|
text={"Espace office"}
|
||||||
links={[
|
links={[
|
||||||
|
@ -26,6 +26,11 @@ export default function LoginCallBack() {
|
|||||||
const token = await Auth.getInstance().getIdnotJwt(code as string);
|
const token = await Auth.getInstance().getIdnotJwt(code as string);
|
||||||
if (!token) return router.push(Module.getInstance().get().modules.pages.Login.props.path);
|
if (!token) return router.push(Module.getInstance().get().modules.pages.Login.props.path);
|
||||||
await UserStore.instance.connect(token.accessToken, token.refreshToken);
|
await UserStore.instance.connect(token.accessToken, token.refreshToken);
|
||||||
|
const jwt = JwtService.getInstance().decodeJwt();
|
||||||
|
if (!jwt) return router.push(Module.getInstance().get().modules.pages.Login.props.path + "?error=1");
|
||||||
|
if (!jwt.rules.includes("GET folders")) {
|
||||||
|
return router.push(Module.getInstance().get().modules.pages.Subscription.pages.New.props.path);
|
||||||
|
}
|
||||||
return router.push(Module.getInstance().get().modules.pages.Folder.props.path);
|
return router.push(Module.getInstance().get().modules.pages.Folder.props.path);
|
||||||
} catch (e: any) {
|
} catch (e: any) {
|
||||||
if (e.http_status === 401 && e.message === "Email not found") {
|
if (e.http_status === 401 && e.message === "Email not found") {
|
||||||
@ -40,6 +45,11 @@ export default function LoginCallBack() {
|
|||||||
const refreshToken = CookieService.getInstance().getCookie("leCoffreRefreshToken");
|
const refreshToken = CookieService.getInstance().getCookie("leCoffreRefreshToken");
|
||||||
if (!refreshToken) return router.push(Module.getInstance().get().modules.pages.Login.props.path + "?error=1");
|
if (!refreshToken) return router.push(Module.getInstance().get().modules.pages.Login.props.path + "?error=1");
|
||||||
const isTokenRefreshed = await JwtService.getInstance().refreshToken(refreshToken);
|
const isTokenRefreshed = await JwtService.getInstance().refreshToken(refreshToken);
|
||||||
|
const jwt = JwtService.getInstance().decodeJwt();
|
||||||
|
if (!jwt) return router.push(Module.getInstance().get().modules.pages.Login.props.path + "?error=1");
|
||||||
|
if (!jwt.rules.includes("GET folders")) {
|
||||||
|
return router.push(Module.getInstance().get().modules.pages.Subscription.pages.New.props.path);
|
||||||
|
}
|
||||||
if (isTokenRefreshed) {
|
if (isTokenRefreshed) {
|
||||||
return router.push(Module.getInstance().get().modules.pages.Folder.props.path);
|
return router.push(Module.getInstance().get().modules.pages.Folder.props.path);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user