Admin.js 7.81 KB
Newer Older
김민수's avatar
김민수 committed
1
2
3
import React, { useState } from 'react';
// import { Link } from 'react-router-dom';

김민수's avatar
김민수 committed
4
5
6

let list = []

김민수's avatar
김민수 committed
7
8
9
10
11
12
13
14
function Admin() {


    // let QnAadmin = []
    // let Q = []
    // let choose = []
    // let N = []

김민수's avatar
0810    
김민수 committed
15

김민수's avatar
김민수 committed
16
17
18
    const [question, setQuestion] = useState('')
    const [choose, setChoose] = useState('')
    const [answer, setAnswer] = useState('')
김민수's avatar
0810    
김민수 committed
19
20
21
    const [password, setPassword] = useState('')
    const [adminpassword, setAdminPassword] = useState('')
    const [time, setTime] = useState('')
김민수's avatar
0810    
김민수 committed
22
    const [addQuiz, setaddQuiz] = useState('')
김민수's avatar
김민수 committed
23
    const [selectOption, setselectOption] = useState(1)
김민수's avatar
0810    
김민수 committed
24

김민수's avatar
김민수 committed
25
26
    const [done, setDone] = useState(false)

김민수's avatar
0810    
김민수 committed
27
28

    const handleChangeQuestion = (event) => {
김민수's avatar
김민수 committed
29
30
        setQuestion(event.target.value)
    }
김민수's avatar
김민수 committed
31
    const handleChangeChoose = (event) => {
김민수's avatar
김민수 committed
32
33
34
35
36
        setChoose(event.target.value)
    }
    const handleChangeanswer = (event) => {
        setAnswer(event.target.value)
    }
김민수's avatar
0810    
김민수 committed
37
38
39
40
41
42
43
44
45
46
    const handleChangePassword = (event) => {
        setPassword(event.target.value)
    }
    const handleChangeAdminPassword = (event) => {
        setAdminPassword(event.target.value)
    }
    const handleChangeTime = (event) => {
        setTime(event.target.value)
    }

김민수's avatar
김민수 committed
47
48
49
50
51
52
53

    function handleClick() {

        alert('입력이 완료되었습니다')
        localStorage.setItem('Q', question)
        localStorage.setItem('Choose', choose)
        localStorage.setItem('Answer', answer)
김민수's avatar
0810    
김민수 committed
54
55
56
57
        localStorage.setItem('P', password)
        localStorage.setItem('AP', adminpassword)
        localStorage.setItem('T', time * 1000)

김민수's avatar
김민수 committed
58
        setDone(true)
김민수's avatar
김민수 committed
59
    }
김민수's avatar
김민수 committed
60
61


김민수's avatar
0810    
김민수 committed
62
    function addSelectOption() {
김민수's avatar
김민수 committed
63
64
        list.push(
            <div className="input-group">
김민수's avatar
0810    
김민수 committed
65
66
                <div className="input-group-prepend">
                    <div className="input-group-text">
김민수's avatar
김민수 committed
67
                        <input type="radio" id={selectOption+1} name="answer" />
김민수's avatar
0810    
김민수 committed
68
69
                    </div>
                </div>
김민수's avatar
김민수 committed
70
                <input type="text" class="form-control" placeholder="보기를 입력하세요" onChange={handleChangeChoose} />
김민수's avatar
0810    
김민수 committed
71
            </div>
김민수's avatar
김민수 committed
72
73
        )
        setselectOption(selectOption + 1)
김민수's avatar
김민수 committed
74
    }
김민수's avatar
김민수 committed
75

김민수's avatar
0810    
김민수 committed
76
    function handleClickQuiz() {
김민수's avatar
0810    
김민수 committed
77
        let addQuiz = function () {
김민수's avatar
김민수 committed
78
79
            return 
            <a className="nav-link" id="Quiz4-tab" data-toggle="pill" href="#Quiz4" role="tab" >Quiz4</a>
김민수's avatar
0810    
김민수 committed
80
81
82
        }
        setaddQuiz(addQuiz)
    }
김민수's avatar
김민수 committed
83
84
85
86

    return (
        <>
            {done ? alert('모두 입력되었습니다.') : ''}
김민수's avatar
김민수 committed
87
88
89
90
91
            <div className="container-fluid">
                <div className="row justify-content-md-center mt-5 ">
                    <div className="col-2 text-center border p-3">
                      
                            <p className="border-bottom h2">관리자 페이지</p>
김민수's avatar
김민수 committed
92
                        
김민수's avatar
김민수 committed
93
                        <div className="flex-column nav-pills p-3" id="v-pills-tab" role="tablist">
김민수's avatar
김민수 committed
94

김민수's avatar
김민수 committed
95
                            <p className="border-bottom h5">관리자 설정 변경</p>
김민수's avatar
0810    
김민수 committed
96

김민수's avatar
김민수 committed
97
                            <a className="" id="setting-tab" data-toggle='pill' href="#setting" role="tab">Setting</a>
김민수's avatar
김민수 committed
98

김민수's avatar
김민수 committed
99
100
                            <p className="border-bottom h5 p-3">Quiz 입력하기</p>
                            <div> <a className="" id="Quiz1-tab" data-toggle="pill" href="#Quiz1" role="tab" >Quiz1</a> </div>
김민수's avatar
0810    
김민수 committed
101
                            {addQuiz}
김민수's avatar
김민수 committed
102
                            <button className="btn btn-danger navbar-btn " onClick={handleClickQuiz} >Quiz 추가</button>
김민수's avatar
0810    
김민수 committed
103

김민수's avatar
김민수 committed
104

김민수's avatar
0810    
김민수 committed
105
                        </div>
김민수's avatar
0810    
김민수 committed
106

김민수's avatar
김민수 committed
107
108
109
110
                    </div>
                    <div className="col-8">
                        <div className="tab-content" id="v-pills-tabContent">
                            <div className="tab-pane fade show active" id="setting" role="tabpanel" >
김민수's avatar
0810    
김민수 committed
111
112
                                <div className="row d-flex justify-content-center">
                                    <div className="col-8">
김민수's avatar
김민수 committed
113
114
115
116
                                        <h1 className="p-3 border">관리자 설정 변경 </h1>
                                        <div className="p-3 border">
                                            <h2>변경할 비밀번호를 입력하세요</h2>
                                            <input type="text" onChange={handleChangePassword} placeholder="New Password" />
김민수's avatar
0810    
김민수 committed
117

김민수's avatar
김민수 committed
118
119
120
121
                                        </div>
                                        <div className="p-3 border">
                                            <h2>변경할 관리자 비밀번호를 입력하세요</h2>
                                            <input type="text" onChange={handleChangeAdminPassword} placeholder="New Admin Password" />
김민수's avatar
0810    
김민수 committed
122
123

                                        </div>
김민수's avatar
김민수 committed
124
125
126
                                        <div className="p-3 border">
                                            <h2>타이머를 설정하세요(초단위)</h2>
                                            <input type="text" onChange={handleChangeTime} placeholder="Set Time" />
김민수's avatar
김민수 committed
127

김민수's avatar
김민수 committed
128
                                        </div>
김민수's avatar
김민수 committed
129
130
131
                                        <label for="inputLogin" className="d-flex justify-content-center">
                                           
                                        </label>
김민수's avatar
김민수 committed
132
133
                                    </div>
                                </div>
김민수's avatar
0810    
김민수 committed
134
135
                            </div>

김민수's avatar
0810    
김민수 committed
136

김민수's avatar
김민수 committed
137
                            <div className="" id="Quiz1">
김민수's avatar
김민수 committed
138
139
140
141
142
143
                                <div className="container">
                                    <h2 className="p-3 border text-center">문제만들기</h2>
                                    <div className="p-3 borber">
                                        <div className="p-3 ">
                                            <span className="font-weight-bold mr-2 h3">1.</span>
                                            {/* <input type="text" onChange={handleChangenumber} placeholder="Number" /> */}
김민수's avatar
김민수 committed
144
                                            <input type="text" className="form-control" onChange={handleChangeQuestion} placeholder="문제를 입력하세요" />
김민수's avatar
김민수 committed
145
146
147
148
                                        </div>
                                        <div className="p-3 ">
                                            <div className="input-group">
                                                <div className="input-group-prepend">
김민수's avatar
김민수 committed
149
150
                                                    <div className="input-group-text">   
                                                        <input type="radio" id={selectOption} name="answer" />
김민수's avatar
0810    
김민수 committed
151
152
                                                    </div>
                                                </div>
김민수's avatar
김민수 committed
153
                                                <input type="text" className="form-control" placeholder="보기를 입력하세요" onChange={handleChangeChoose} />
김민수's avatar
김민수 committed
154
                                            </div>
김민수's avatar
김민수 committed
155
156
                                            {list.map((element)=>element)}
                                            <button className="btn btn-outline-secondary btn-sm" onClick={addSelectOption}>+</button>
김민수's avatar
김민수 committed
157
                                        </div>
김민수's avatar
0810    
김민수 committed
158

김민수's avatar
김민수 committed
159
160
161
162
                                        <div className="p-3 ">
                                            <span className="font-weight-bold mr-2 h3">정답:</span>
                                            <input type="text" onChange={handleChangeanswer} placeholder="정답을 입력하세요" />
                                        </div>
김민수's avatar
0810    
김민수 committed
163

김민수's avatar
김민수 committed
164
165
166
                                        <label for="inputLogin" className="d-flex justify-content-center">
                                            <button className="mt-4 btn btn-dark" onClick={handleClick}>작성완료</button>
                                        </label>
김민수's avatar
김민수 committed
167
                                    </div>
김민수's avatar
0810    
김민수 committed
168
169
170
                                </div>
                            </div>
                        </div>
김민수's avatar
김민수 committed
171
172
173
                    </div>
                </div>
            </div>
김민수's avatar
0810    
김민수 committed
174

김민수's avatar
김민수 committed
175

김민수's avatar
김민수 committed
176
177
178
179
180
        </>
    )
}

export default Admin