opt admin man

This commit is contained in:
sijinhui 2024-04-29 13:21:06 +08:00
parent 81eb6a25bb
commit de704b2d40
4 changed files with 27 additions and 5 deletions

View File

@ -65,6 +65,7 @@ async function handle(
createdAt: item.createdAt,
updatedAt: item.updatedAt,
allowToLogin: item.allowToLogin,
isAdmin: item.isAdmin,
};
}),
});

View File

@ -188,6 +188,18 @@ function UsersTable({ users, setUsers, loading }: UserInterface) {
dataIndex: "updatedAt",
render: (value) => getCurrentTime(new Date(value)),
},
{
title: "isAdmin",
dataIndex: "isAdmin",
width: 80,
render: (value) => {
return (
<div>
<Checkbox defaultChecked={value} disabled></Checkbox>
</div>
);
},
},
{
title: "allowToLogin",
dataIndex: "allowToLogin",

View File

@ -1,13 +1,21 @@
import {ADMIN_LIST, isName} from "@/lib/auth_list";
import { JWT } from "next-auth/jwt";
import { User } from "@prisma/client";
export async function VerifiedUser(session: JWT |null) {
type CUS_JWT = JWT & {
user: User,
}
export async function VerifiedUser(session: CUS_JWT |null) {
const userId = session?.sub
const name = session?.email || session?.name
return !!(name && isName(name) && userId);
}
export async function VerifiedAdminUser(session: JWT |null) {
const name = session?.email || session?.name
return !!(name && ADMIN_LIST.includes(name));
}
export async function VerifiedAdminUser(session: CUS_JWT |null) {
// console.log('-------', session, session?.user?.isAdmin)
return !!session?.user?.isAdmin;
// const name = session?.email || session?.name
// return !!(name && ADMIN_LIST.includes(name));
}

View File

@ -25,6 +25,7 @@ model User {
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
allowToLogin Boolean @default(true)
isAdmin Boolean? @default(false)
accounts Account[]
sessions Session[]
// sites Site[]