import InputError from '@/components/input-error'; import LoadingButton from '@/components/loading-button'; import { Card } from '@/components/ui/card'; import { Input } from '@/components/ui/input'; import { Label } from '@/components/ui/label'; import { useForm, usePage } from '@inertiajs/react'; import { ExamUpdateProps } from '../../update'; const ExamSettings = () => { const { props } = usePage(); const { tab, exam } = props; const { data, setData, post, errors, processing } = useForm({ tab: tab, duration_hours: exam.duration_hours || 1, duration_minutes: exam.duration_minutes || 0, pass_mark: exam.pass_mark || 50, max_attempts: exam.max_attempts || 3, total_marks: exam.total_marks || 100, }); // Handle form submission const handleSubmit = (e: React.FormEvent) => { e.preventDefault(); post(route('exams.update', { exam: exam.id })); }; return (
setData('duration_hours', parseInt(e.target.value) || 0)} placeholder="1" min="0" />
setData('duration_minutes', parseInt(e.target.value) || 0)} placeholder="0" min="0" max="59" />
setData('pass_mark', parseInt(e.target.value) || 0)} placeholder="50" min="0" max="100" />

Students must score this percentage to pass

setData('max_attempts', parseInt(e.target.value) || 1)} placeholder="3" min="1" />

Maximum number of attempts allowed per student

setData('total_marks', parseInt(e.target.value) || 1)} placeholder="100" min="1" />

Total marks for the entire exam

Save Changes
); }; export default ExamSettings;