'use client' import { useState } from 'react' import { ChevronRight, ChevronLeft, Check, GraduationCap, Settings, Timer } from 'lucide-react' interface OnboardingModalProps { isOpen: boolean onClose: () => void onComplete: (data: { state?: string; schoolType?: string }) => void } const STATES = [ 'Baden-Wuerttemberg', 'Bayern', 'Berlin', 'Brandenburg', 'Bremen', 'Hamburg', 'Hessen', 'Mecklenburg-Vorpommern', 'Niedersachsen', 'Nordrhein-Westfalen', 'Rheinland-Pfalz', 'Saarland', 'Sachsen', 'Sachsen-Anhalt', 'Schleswig-Holstein', 'Thueringen', ] const SCHOOL_TYPES = [ 'Grundschule', 'Hauptschule', 'Realschule', 'Gymnasium', 'Gesamtschule', 'Berufsschule', 'Foerderschule', 'Andere', ] interface Step { id: number title: string description: string icon: typeof GraduationCap } const steps: Step[] = [ { id: 1, title: 'Willkommen', description: 'Der Companion hilft Ihnen bei der Unterrichtsplanung und -durchfuehrung.', icon: GraduationCap, }, { id: 2, title: 'Ihre Schule', description: 'Waehlen Sie Ihr Bundesland und Ihre Schulform.', icon: Settings, }, { id: 3, title: 'Bereit!', description: 'Sie koennen jetzt mit dem Lesson-Modus starten.', icon: Timer, }, ] export function OnboardingModal({ isOpen, onClose, onComplete }: OnboardingModalProps) { const [currentStep, setCurrentStep] = useState(1) const [selectedState, setSelectedState] = useState('') const [selectedSchoolType, setSelectedSchoolType] = useState('') if (!isOpen) return null const canProceed = () => { if (currentStep === 2) { return selectedState !== '' && selectedSchoolType !== '' } return true } const handleNext = () => { if (currentStep < 3) { setCurrentStep(currentStep + 1) } else { onComplete({ state: selectedState, schoolType: selectedSchoolType, }) } } const handleBack = () => { if (currentStep > 1) { setCurrentStep(currentStep - 1) } } const currentStepData = steps[currentStep - 1] const Icon = currentStepData.icon return (
{currentStepData.description}
{/* Step Content */} {currentStep === 1 && (Einstieg → Erarbeitung → Sicherung → Transfer → Reflexion
Bundesland: {selectedState || 'Nicht angegeben'}
Schulform: {selectedSchoolType || 'Nicht angegeben'}
Sie koennen diese Einstellungen jederzeit aendern.