Kentlo's picture
๐Ÿš€ Clean deployment - removed all binary files
8f0fa74
let currentId = 0;
let chosen = null;
function loadQuestion(qid = null) {
let url = "/api/question";
if (qid) url += "?id=" + qid;
$.getJSON(url, function(data) {
currentId = data.id;
$("#qno").text("๋ฌธ์ œ " + data.qno);
$("#stem").text(data.stem);
$("#options").empty();
data.options.forEach(opt => {
let btn = $("<button>")
.addClass("list-group-item list-group-item-action")
.text(opt)
.click(function() {
$("#options button").removeClass("active");
$(this).addClass("active");
chosen = opt;
});
$("#options").append(btn);
});
$("#result").empty();
});
}
function submitAnswer() {
if (!chosen) {
alert("์„ ํƒ์ง€๋ฅผ ๊ณ ๋ฅด์„ธ์š”!");
return;
}
$.ajax({
url: "/api/answer",
type: "POST",
contentType: "application/json",
data: JSON.stringify({ question_id: currentId, chosen: chosen }),
success: function(resp) {
let resultText = resp.correct
? `<div class="alert alert-success">์ •๋‹ต์ž…๋‹ˆ๋‹ค! โœ…</div>`
: `<div class="alert alert-danger">ํ‹€๋ ธ์Šต๋‹ˆ๋‹ค โŒ<br>์ •๋‹ต: ${resp.answer}</div>`;
$("#result").html(resultText);
}
});
}
function loadNext() {
$.getJSON("/api/next?current_id=" + currentId, function(data) {
if (data.end) {
$("#qno").text("๋!");
$("#stem").text(data.message);
$("#options").empty();
$("#result").empty();
} else {
currentId = data.id;
$("#qno").text("๋ฌธ์ œ " + data.qno);
$("#stem").text(data.stem);
$("#options").empty();
chosen = null;
data.options.forEach(opt => {
let btn = $("<button>")
.addClass("list-group-item list-group-item-action")
.text(opt)
.click(function() {
$("#options button").removeClass("active");
$(this).addClass("active");
chosen = opt;
});
$("#options").append(btn);
});
$("#result").empty();
}
});
}
$(document).ready(function() {
loadQuestion();
$("#submitBtn").click(submitAnswer);
$("#nextBtn").click(loadNext);
});