adding administration panel.

This commit is contained in:
killian-larcher
2024-12-13 12:28:08 +01:00
parent 31e71cd64c
commit 1bc69e4b10
20 changed files with 344 additions and 80 deletions
+45
View File
@@ -0,0 +1,45 @@
import {PageParams} from "@/types/next";
import {Page, PageContent, PageHeader, PageTitle} from "@/features/layout/page";
import {requiredCurrentUser} from "@/auth/current-user";
import {prisma} from "@/prisma";
import {AdminTabs} from "@/components/wrappers/Dashboard/admin/admin-tabs";
export default async function RoutePage(props: PageParams<{}>) {
const user = await requiredCurrentUser()
const users = await prisma.user.findMany({
where: {
// id: {
// not: user.id
// },
deleted: {not: true},
}
})
console.log(users)
const settings = await prisma.settings.findUnique({
where: {
name: "system"
}
})
return (
<Page>
<PageHeader>
<PageTitle>
Administration Panel
</PageTitle>
</PageHeader>
<PageContent className="mt-10">
<AdminTabs settings={settings} currentUser={user} users={users}/>
</PageContent>
</Page>
)
}
+13 -7
View File
@@ -8,12 +8,18 @@ import {SettingsTabs} from "@/components/wrappers/Dashboard/Settings/SettingsTab
export default async function RoutePage(props: PageParams<{}>) {
const user = await requiredCurrentUser()
const defaultOrganization = await prisma.organization.findUnique({
where: {slug: "default"},
});
const users = await prisma.user.findMany({
where:{
id: {
not: user.id
where: {
organizations: {
some: {
organizationId: defaultOrganization.id
},
},
deleted: { not: true },
deleted: {not: true},
}
})
@@ -21,7 +27,7 @@ export default async function RoutePage(props: PageParams<{}>) {
console.log(users)
const settings = await prisma.settings.findUnique({
where:{
where: {
name: "system"
}
})
@@ -34,10 +40,10 @@ export default async function RoutePage(props: PageParams<{}>) {
</PageTitle>
</PageHeader>
<PageDescription>
Manage your Portabase settings
Manage your organization settings.
</PageDescription>
<PageContent>
<SettingsTabs settings={settings} users={users}/>
<SettingsTabs settings={settings} currentUser={user} users={users}/>
</PageContent>
</Page>
)