fix register login
This commit is contained in:
parent
630812a7f4
commit
40857be95c
|
|
@ -5,8 +5,15 @@ const w = window as any;
|
||||||
const parse = parser.exportAsFunctionAny("en-US");
|
const parse = parser.exportAsFunctionAny("en-US");
|
||||||
export const loadSession = (url_login?: string) => {
|
export const loadSession = (url_login?: string) => {
|
||||||
if (!isEditor) {
|
if (!isEditor) {
|
||||||
|
let id_site = ""
|
||||||
|
if (location.hostname === "prasi.avolut.com" ) {
|
||||||
|
const parts = location.pathname.split("/");
|
||||||
|
id_site = parts[2];
|
||||||
|
}
|
||||||
|
|
||||||
try {
|
try {
|
||||||
const user = localStorage.getItem("user");
|
const user = localStorage.getItem("user" + id_site);
|
||||||
|
console.log(user);
|
||||||
if (user) {
|
if (user) {
|
||||||
const raw = JSON.parse(user);
|
const raw = JSON.parse(user);
|
||||||
w.user = raw.data;
|
w.user = raw.data;
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,13 @@ export const registerSession = (session: RG) => {
|
||||||
data: session.data,
|
data: session.data,
|
||||||
expired: session.expired ? day().add(session.expired, "seconds") : null,
|
expired: session.expired ? day().add(session.expired, "seconds") : null,
|
||||||
};
|
};
|
||||||
localStorage.setItem("user", JSON.stringify(data));
|
|
||||||
|
let id_site = "";
|
||||||
|
if (location.hostname === "prasi.avolut.com") {
|
||||||
|
const parts = location.pathname.split("/");
|
||||||
|
id_site = parts[2];
|
||||||
|
}
|
||||||
|
|
||||||
|
localStorage.setItem("user" + id_site, JSON.stringify(data));
|
||||||
w.user = session.data;
|
w.user = session.data;
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -35,6 +35,7 @@ type LYTChild = {
|
||||||
default_layout: ReactNode;
|
default_layout: ReactNode;
|
||||||
exception?: Array<string>;
|
exception?: Array<string>;
|
||||||
blank_layout: ReactNode;
|
blank_layout: ReactNode;
|
||||||
|
login_url: string;
|
||||||
};
|
};
|
||||||
|
|
||||||
export const Layout: FC<LYTChild> = (props) => {
|
export const Layout: FC<LYTChild> = (props) => {
|
||||||
|
|
@ -62,8 +63,9 @@ export const Layout: FC<LYTChild> = (props) => {
|
||||||
fn();
|
fn();
|
||||||
const path = getPathname();
|
const path = getPathname();
|
||||||
const no_layout = props.exception;
|
const no_layout = props.exception;
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
loadSession("/auth/login");
|
loadSession(props.login_url || "/auth/login");
|
||||||
render();
|
render();
|
||||||
}, []);
|
}, []);
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
import { getPathname } from "lib/utils/pathname";
|
import { getPathname } from "lib/utils/pathname";
|
||||||
import { useLocal } from "lib/utils/use-local";
|
import { useLocal } from "lib/utils/use-local";
|
||||||
import get from "lodash.get";
|
import get from "lodash.get";
|
||||||
import { FC, ReactNode, useEffect } from "react";
|
import { FC, useEffect } from "react";
|
||||||
import { IMenu, MenuProp } from "./utils/type-menu";
|
import { IMenu, MenuProp } from "./utils/type-menu";
|
||||||
// import { icon } from "../../..";
|
// import { icon } from "../../..";
|
||||||
|
|
||||||
|
|
@ -10,19 +10,24 @@ export const Menu: FC<MenuProp> = (props) => {
|
||||||
let role = props.role;
|
let role = props.role;
|
||||||
role = props.on_init();
|
role = props.on_init();
|
||||||
let menu = get(imenu, role) || [];
|
let menu = get(imenu, role) || [];
|
||||||
|
console.log(menu);
|
||||||
const pathname = getPathname();
|
const pathname = getPathname();
|
||||||
|
|
||||||
const local = useLocal({
|
const local = useLocal({
|
||||||
open: [] as Array<any>,
|
open: [] as Array<any>,
|
||||||
cache: false,
|
cache: false,
|
||||||
active: null as any,
|
active: null as any,
|
||||||
mode: "full" as "full" | "mini",
|
mode: "full" as "full" | "mini",
|
||||||
});
|
});
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
local.mode = props.mode;
|
local.mode = props.mode;
|
||||||
local.render();
|
local.render();
|
||||||
}, [props.mode]);
|
}, [props.mode]);
|
||||||
|
|
||||||
if (!local.open.length && !local.cache) {
|
if (!local.open.length && !local.cache) {
|
||||||
const result = findChildMenu(menu, (e: any) => e[2] === pathname);
|
const result = findChildMenu(menu, (e: any) => e?.[2] === pathname);
|
||||||
|
|
||||||
if (Array.isArray(result)) {
|
if (Array.isArray(result)) {
|
||||||
local.open.push(result);
|
local.open.push(result);
|
||||||
local.active = result;
|
local.active = result;
|
||||||
|
|
@ -30,6 +35,7 @@ export const Menu: FC<MenuProp> = (props) => {
|
||||||
local.render();
|
local.render();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div
|
<div
|
||||||
className={cx(
|
className={cx(
|
||||||
|
|
@ -147,7 +153,7 @@ const found = (data: Array<any>, predicate: any) => {
|
||||||
return result ? true : false;
|
return result ? true : false;
|
||||||
};
|
};
|
||||||
const findChild = (data: Array<any>, predicate: any) => {
|
const findChild = (data: Array<any>, predicate: any) => {
|
||||||
const children = data[2]; // array index ke-2 bisa berupa array atau string
|
const children = data?.[2]; // array index ke-2 bisa berupa array atau string
|
||||||
if (predicate(data)) {
|
if (predicate(data)) {
|
||||||
// kalau data ada yang cocok dari prediksi maka true, kalau gk jalankan false
|
// kalau data ada yang cocok dari prediksi maka true, kalau gk jalankan false
|
||||||
return data;
|
return data;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue