diff --git a/app/api/admin/users/[[...path]]/route.ts b/app/api/admin/users/[[...path]]/route.ts
index b206c595c..95e989ac8 100644
--- a/app/api/admin/users/[[...path]]/route.ts
+++ b/app/api/admin/users/[[...path]]/route.ts
@@ -65,6 +65,7 @@ async function handle(
createdAt: item.createdAt,
updatedAt: item.updatedAt,
allowToLogin: item.allowToLogin,
+ isAdmin: item.isAdmin,
};
}),
});
diff --git a/app/app/(admin)/components/users-table.tsx b/app/app/(admin)/components/users-table.tsx
index f6226899e..2756085a5 100644
--- a/app/app/(admin)/components/users-table.tsx
+++ b/app/app/(admin)/components/users-table.tsx
@@ -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 (
+
+
+
+ );
+ },
+ },
{
title: "allowToLogin",
dataIndex: "allowToLogin",
diff --git a/lib/auth_client.ts b/lib/auth_client.ts
index 9e6b01af9..e129b56f6 100644
--- a/lib/auth_client.ts
+++ b/lib/auth_client.ts
@@ -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));
-}
\ No newline at end of file
+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));
+}
diff --git a/prisma/schema.prisma b/prisma/schema.prisma
index a0480f73d..9e5ae9f15 100644
--- a/prisma/schema.prisma
+++ b/prisma/schema.prisma
@@ -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[]