Add SETUP_MODE checks
This commit is contained in:
parent
859c11fb1c
commit
0b5e242ed0
2 changed files with 18 additions and 13 deletions
|
|
@ -25,6 +25,7 @@ const fetchUser = async (email: string) => {
|
|||
};
|
||||
|
||||
const getUserRoles = async (email: string) => {
|
||||
try {
|
||||
const user = await fetchUser(email);
|
||||
const allRoles = await fetchRoles();
|
||||
const roles = user.role_ids.map((roleID: number) => {
|
||||
|
|
@ -32,6 +33,10 @@ const getUserRoles = async (email: string) => {
|
|||
return role ? role.toLowerCase().replace(" ", "_") : null;
|
||||
});
|
||||
return roles.filter((role: string) => role !== null);
|
||||
} catch (e) {
|
||||
console.log({ e });
|
||||
return [];
|
||||
}
|
||||
};
|
||||
|
||||
const login = async (email: string, password: string) => {
|
||||
|
|
@ -88,19 +93,19 @@ const handler = NextAuth({
|
|||
|
||||
callbacks: {
|
||||
signIn: async ({ user, account, profile }) => {
|
||||
const roles = await getUserRoles(user.email);
|
||||
return roles.includes("admin") || roles.includes("agent");
|
||||
const roles = await getUserRoles(user.email) ?? [];
|
||||
return roles.includes("admin") || roles.includes("agent") || process.env.SETUP_MODE === "true";
|
||||
},
|
||||
session: async ({ session, user, token }) => {
|
||||
// @ts-ignore
|
||||
session.user.roles = token.roles;
|
||||
session.user.roles = token.roles ?? [];
|
||||
// @ts-ignore
|
||||
session.user.leafcutter = token.leafcutter;
|
||||
session.user.leafcutter = token.leafcutter; // remove
|
||||
return session;
|
||||
},
|
||||
jwt: async ({ token, user, account, profile, trigger }) => {
|
||||
if (user) {
|
||||
token.roles = await getUserRoles(user.email);
|
||||
token.roles = await getUserRoles(user.email) ?? [];
|
||||
}
|
||||
return token;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -63,7 +63,7 @@ export default withAuth(
|
|||
}
|
||||
|
||||
const roles: any = token?.roles ?? [];
|
||||
if (roles.includes("admin") || roles.includes("agent")) {
|
||||
if (roles.includes("admin") || roles.includes("agent") || process.env.SETUP_MODE === "true") {
|
||||
return true;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue