import React, { useState} from 'react';

let list = []

let QnAadmins = []
let QnAadmin = {}
let savechoose = {}

function AdminQuiz(props) {
    const [question, setQuestion] = useState('')
    const [choose, setChoose] = useState('')
    const [answer, setAnswer] = useState('')
    const [selectOption, setselectOption] = useState(1)

    const handleChangeQuestion = (event) => {
        QnAadmin['Q'] = event.target.value
        setQuestion(event.target.value)
    }
    const handleChangeChoose = (event) => {
        savechoose[event.target.id] = event.target.value
          setChoose(event.target.value)
    }
    const handleChangeanswer = (event) => {
        QnAadmin['A'] = event.target.value
        setAnswer(event.target.value)
    }

    function addSelectOption() {
        list.push(
            <div className="input-group">
                <div className="input-group-prepend">
                    <div className="input-group-text">
                        <input type="radio" checked={false} name="answer" />
                    </div>
                </div>
                <input type="text" class="form-control" id={String(selectOption + 1)} placeholder={ props.data[props.QuizNum-1].Choose===null ? (selectOption+1)+'번 보기를 입력하세요' : props.data[props.QuizNum-1].Choose[selectOption]} onChange={handleChangeChoose} />
            </div>
        )
        setselectOption(selectOption + 1)
    }


    function handleClick() {
        if (!question) {
            alert('문제가 입력되지 않았습니다.')
        }
        else if (!choose) {
            alert('보기가 입력되지 않았습니다.')
        }
        else if (!answer) {
            alert('정답이 입력되지 않았습니다.')
        }
        else {
            // console.log(QnAadmin)
            QnAadmin['Choose'] = Object.values(savechoose)
            QnAadmin['N'] = String(props.QuizNum)
            QnAadmins.push(QnAadmin)
            QnAadmin = {}
            localStorage.setItem('QnA', JSON.stringify(QnAadmins))
            // console.log(QnAadmins)
            alert('입력이 완료되었습니다.')
        }

    }

    // function handleChangeQuestion(){}


    return (
        <div className="" id="Quiz1">
            <h2 className="p-3 border text-center">{String(props.QuizNum)}번 문제만들기</h2>
            <div className="p-3 borber">
                <div className="p-3 ">
                    <span className="font-weight-bold mr-2 h3">1. 문제 입력하기</span>
                    <input type="text" id="inputQuiz" className="form-control"  onChange={handleChangeQuestion} placeholder={ props.data[props.QuizNum-1].Q==='x' ? '문제를 입력하세요' : props.data[props.QuizNum-1].Q} />
                </div>
                <div className="p-3 ">
                    <span className="font-weight-bold mr-2 h3">2. 보기 입력하기</span>
                    <div className="p-3 ">
                    <div className="input-group">
                        <div className="input-group-prepend">
                            <div className="input-group-text">
                            <input type="radio" checked={false} name="answer" />
                            </div>
                        </div>
                        <input type="text" className="form-control" id='1' placeholder={ props.data[props.QuizNum-1].Choose==='x' ? '1번 보기를 입력하세요' : props.data[props.QuizNum-1].Choose[0]} onChange={handleChangeChoose} />
                    </div>
                    {list.map((element) => element)}
                    <button className="btn btn-outline-secondary btn-sm" onClick={addSelectOption}>+</button>
                </div>
                </div>

                <div className="p-3 ">
                    <span className="font-weight-bold mr-2 h3">정답:</span>
                    <input type="text" value={answer} onChange={handleChangeanswer} placeholder={ props.data[props.QuizNum-1].A==='x' ? '정답를 입력하세요' : props.data[props.QuizNum-1].A} />
                </div>

                <label for="inputLogin" className="d-flex justify-content-center">
                    <button className="mt-4 btn btn-dark" onClick={handleClick}>작성완료</button>
                </label>
            </div>
        </div>
    )
}

export default AdminQuiz
