diff --git a/prisma/dev.db b/prisma/dev.db index d79b091..eeb0ec3 100644 Binary files a/prisma/dev.db and b/prisma/dev.db differ diff --git a/prisma/schema.prisma b/prisma/schema.prisma index f842a5f..f983f60 100644 --- a/prisma/schema.prisma +++ b/prisma/schema.prisma @@ -19,12 +19,12 @@ model Branch { name String address String? phone String? - instructors Instructor[] // Implicit many-to-many + createdAt DateTime @default(now()) + updatedAt DateTime @updatedAt classes DanceClass[] lessons Lesson[] students Student[] - createdAt DateTime @default(now()) - updatedAt DateTime @updatedAt + instructors Instructor[] @relation("BranchToInstructor") } model Instructor { @@ -32,41 +32,41 @@ model Instructor { name String bio String? phone String? - branches Branch[] // Implicit many-to-many - classes DanceClass[] - lessons Lesson[] createdAt DateTime @default(now()) updatedAt DateTime @updatedAt + classes DanceClass[] + lessons Lesson[] + branches Branch[] @relation("BranchToInstructor") } model DanceClass { - id String @id @default(uuid()) + id String @id @default(uuid()) name String description String? branchId String - branch Branch @relation(fields: [branchId], references: [id]) instructorId String? + createdAt DateTime @default(now()) + updatedAt DateTime @updatedAt instructor Instructor? @relation(fields: [instructorId], references: [id]) - lessons Lesson[] + branch Branch @relation(fields: [branchId], references: [id]) fees Fee[] - createdAt DateTime @default(now()) - updatedAt DateTime @updatedAt + lessons Lesson[] } model Lesson { - id String @id @default(uuid()) - name String? // Optional name e.g. "Special Workshop" + id String @id @default(uuid()) + name String? startTime DateTime endTime DateTime - type String // GROUP, PRIVATE + type String branchId String - branch Branch @relation(fields: [branchId], references: [id]) instructorId String - instructor Instructor @relation(fields: [instructorId], references: [id]) classId String? + createdAt DateTime @default(now()) + updatedAt DateTime @updatedAt class DanceClass? @relation(fields: [classId], references: [id]) - createdAt DateTime @default(now()) - updatedAt DateTime @updatedAt + instructor Instructor @relation(fields: [instructorId], references: [id]) + branch Branch @relation(fields: [branchId], references: [id]) } model Fee { @@ -74,11 +74,11 @@ model Fee { name String amount Float currency String @default("TRY") - type String // MONTHLY, PER_LESSON, PACKAGE + type String classId String? - class DanceClass? @relation(fields: [classId], references: [id]) createdAt DateTime @default(now()) updatedAt DateTime @updatedAt + class DanceClass? @relation(fields: [classId], references: [id]) } model Student { @@ -88,7 +88,7 @@ model Student { phone String birthDate DateTime branchId String? - branch Branch? @relation(fields: [branchId], references: [id]) createdAt DateTime @default(now()) updatedAt DateTime @updatedAt + branch Branch? @relation(fields: [branchId], references: [id]) } diff --git a/src/app/admin/register/RegisterForm.tsx b/src/app/admin/register/RegisterForm.tsx index a6823dd..3e184ec 100644 --- a/src/app/admin/register/RegisterForm.tsx +++ b/src/app/admin/register/RegisterForm.tsx @@ -1,6 +1,7 @@ 'use client'; import { useState } from 'react'; -import styles from './register.module.css'; +import { useRouter } from 'next/navigation'; +import styles from '../branches/branches.module.css'; export function RegisterForm({ branches }: { branches: any[] }) { const [formData, setFormData] = useState({ @@ -10,12 +11,10 @@ export function RegisterForm({ branches }: { branches: any[] }) { birthDate: '', branchId: '' }); - const [status, setStatus] = useState<'idle' | 'success' | 'error'>('idle'); + const router = useRouter(); const handleSubmit = async (e: React.FormEvent) => { e.preventDefault(); - setStatus('idle'); - const res = await fetch('/api/register', { method: 'POST', body: JSON.stringify(formData), @@ -23,10 +22,8 @@ export function RegisterForm({ branches }: { branches: any[] }) { }); if (res.ok) { - setStatus('success'); setFormData({ name: '', email: '', phone: '', birthDate: '', branchId: '' }); - } else { - setStatus('error'); + router.refresh(); } }; @@ -35,41 +32,38 @@ export function RegisterForm({ branches }: { branches: any[] }) { }; return ( -