- Next.js 16 App Router site with the ANOUMA design system - Payload CMS (PostgreSQL) for offers, events, posts and page content - WebRTC video-call system with custom signaling server - SMTP email reminders and booking-request notifications - Customer accounts, calendar-based availability, and booking workflow
42 lines
977 B
TypeScript
42 lines
977 B
TypeScript
import type { GlobalConfig } from "payload";
|
|
import { isAdmin } from "@/access";
|
|
|
|
export const MeetingSettings: GlobalConfig = {
|
|
slug: "meeting-settings",
|
|
label: "Video-Termin-Einstellungen",
|
|
admin: {
|
|
description: "Zentrale Zeitfenster für alle Online-Termine.",
|
|
group: "Seiteninhalte",
|
|
},
|
|
access: {
|
|
read: () => true,
|
|
update: isAdmin,
|
|
},
|
|
fields: [
|
|
{
|
|
name: "participantJoinWindowMinutes",
|
|
type: "number",
|
|
label: "Teilnehmer dürfen beitreten (Minuten vor Beginn)",
|
|
required: true,
|
|
defaultValue: 30,
|
|
min: 0,
|
|
},
|
|
{
|
|
name: "hostJoinWindowMinutes",
|
|
type: "number",
|
|
label: "Host darf beitreten (Minuten vor Beginn)",
|
|
required: true,
|
|
defaultValue: 60,
|
|
min: 0,
|
|
},
|
|
{
|
|
name: "meetingCloseAfterMinutes",
|
|
type: "number",
|
|
label: "Meeting bleibt offen bis (Minuten nach Ende)",
|
|
required: true,
|
|
defaultValue: 30,
|
|
min: 0,
|
|
},
|
|
],
|
|
};
|