Untitled

 avatar
unknown
plain_text
a year ago
3.2 kB
7
Indexable
import React, { useState } from 'react';

const Form = ({ addStudent }) => {
    const [fullname, setFullname] = useState('');
    const [birthDate, setBirthDate] = useState('');
    const [gender, setGender] = useState('');
    const [programStudy, setProgramStudy] = useState('');

    const handleSubmit = (e) => {
        e.preventDefault();
        const faculty = getFacultyByProgramStudy(programStudy);
        addStudent({ fullname, birthDate, gender, faculty, programStudy });
        setFullname('');
        setBirthDate('');
        setGender('');
        setProgramStudy('');
    };

    const getFacultyByProgramStudy = (programStudy) => {
        switch (programStudy) {
            case 'Ekonomi':
            case 'Manajemen':
            case 'Akuntansi':
                return 'Fakultas Ekonomi';
            case 'Administrasi Publik':
            case 'Administrasi Bisnis':
            case 'Hubungan Internasional':
                return 'Fakultas Ilmu Sosial dan Politik';
            case 'Teknik Sipil':
            case 'Arsitektur':
                return 'Fakultas Teknik';
            case 'Matematika':
            case 'Fisika':
            case 'Informatika':
                return 'Fakultas Teknologi Informasi dan Sains';
            default:
                return '';
        }
    };

    return (
        <form onSubmit={handleSubmit}>
            <input
                data-testid="name"
                type="text"
                placeholder="Fullname"
                value={fullname}
                onChange={(e) => setFullname(e.target.value)}
            />
            <input
                data-testid="date"
                type="date"
                value={birthDate}
                onChange={(e) => setBirthDate(e.target.value)}
            />
            <select data-testid="gender" value={gender} onChange={(e) => setGender(e.target.value)}>
                <option value="">Select Gender</option>
                <option value="Male">Male</option>
                <option value="Female">Female</option>
            </select>
            <select data-testid="prody" value={programStudy} onChange={(e) => setProgramStudy(e.target.value)}>
                <option value="">Select Program Study</option>
                <option value="Ekonomi">Ekonomi</option>
                <option value="Manajemen">Manajemen</option>
                <option value="Akuntansi">Akuntansi</option>
                <option value="Administrasi Publik">Administrasi Publik</option>
                <option value="Administrasi Bisnis">Administrasi Bisnis</option>
                <option value="Hubungan Internasional">Hubungan Internasional</option>
                <option value="Teknik Sipil">Teknik Sipil</option>
                <option value="Arsitektur">Arsitektur</option>
                <option value="Matematika">Matematika</option>
                <option value="Fisika">Fisika</option>
                <option value="Informatika">Informatika</option>
            </select>
            <button data-testid="submit" type="submit">Add Student</button>
        </form>
    );
};

export default Form;
Editor is loading...
Leave a Comment