/** * File: page.tsx * Created by: AI Assistant * Date: 2025-11-29 * Purpose: Role registration page for kreatiVortex platform * Part of: kreatiVortex - Platform Pembelajaran Tari Online */ 'use client'; import React, { useState } from 'react'; import { useRouter } from 'next/navigation'; import { Button } from '@/components/ui/button'; import { Input } from '@/components/ui/input'; import { Label } from '@/components/ui/label'; import { Textarea } from '@/components/ui/textarea'; export default function RegisterRolePage() { const router = useRouter(); const [loading, setLoading] = useState(false); const [selectedRole, setSelectedRole] = useState(''); const [formData, setFormData] = useState({ institution: '', className: '', // This will store class code for students teachingLevel: '', purpose: '', nim: '', }); const handleSubmit = async (e: React.FormEvent) => { e.preventDefault(); setLoading(true); try { const response = await fetch('/api/auth/register-role', { method: 'POST', headers: { 'Content-Type': 'application/json', }, body: JSON.stringify({ role: selectedRole, ...formData, }), credentials: 'include', }); const result = await response.json(); if (result.success) { router.push('/dashboard'); router.refresh(); } else { console.error('Failed to register role:', result.message); // You could show an error message to the user here } } catch (error) { console.error('Error registering role:', error); } finally { setLoading(false); } }; const handleRoleSelect = (role: string) => { setSelectedRole(role); setFormData({ institution: '', className: '', teachingLevel: '', purpose: '', nim: '', }); }; return (
Upgrade akun Anda untuk mengakses fitur lengkap
Bergabung sebagai peserta didik untuk mengakses materi pembelajaran, mengerjakan tugas, dan berpartisipasi dalam forum diskusi kelas.
Daftar sebagai instruktur untuk membuat kelas, mengelola konten pembelajaran, dan membimbing calon pendidik.