lastSaveQuestion = false; lastRandomQuestion = true; document.addEventListener("DOMContentLoaded", function () { async function generateQuestion(formE) { formE.preventDefault(); let formData = new FormData(formE.target); formData.append("generateQuestion", "true") const response = await fetch("single.php", { method: "POST", body: formData, credentials: "include", headers: { 'X-Requested-With': 'XMLHttpRequest' } }); const result = await response.json(); const output = document.getElementById("info"); output.innerHTML = result.msg; output.style.display = "block"; if (result.question) setTimeout(function () { function beforeunloadFunc(e) { e.preventDefault(); } window.addEventListener('beforeunload', beforeunloadFunc); contentHTML = "
`; mainContent.innerHTML = contentHTML; document.getElementById("questionForm").addEventListener("submit", async function (formE) { formE.preventDefault(); window.removeEventListener('beforeunload', beforeunloadFunc); let formData = new FormData(formE.target); formData.append("checkQuestion", "true"); const response = await fetch("single.php", { method: "POST", body: formData, credentials: "include", headers: { 'X-Requested-With': 'XMLHttpRequest' } }); const result = await response.json(); if (result.status == "OK") { window.scrollTo({ top: 0, behavior: 'smooth' }); const qInfo = document.getElementById(`questionInfo`); let correctLetter = ["A", "B", "C", "D"].includes(result.answeredChar); if (!result.correct && correctLetter) { qInfo.innerHTML = `Nieprawidłowa odpowiedź, odpowiedziałeś ${result.answeredChar}, prawidłowa odpowiedź to ${result.correctChar}`; qInfo.style.color = "red"; document.getElementById(`${result.answeredChar}`).style.color = "red"; document.getElementById(`${result.correctChar}`).style.color = "green"; } else if (!correctLetter) { qInfo.innerHTML = `Nie odpowiedziałeś na pytanie, prawidłowa odpowiedź to ${result.correctChar}`; qInfo.style.color = "red"; document.getElementById(`${result.correctChar}`).style.color = "green"; } else { qInfo.innerHTML = `Odpowiedziałeś prawidłowo, prawidłowa odpowiedż to ${result.correctChar}`; qInfo.style.color = "green"; document.getElementById(`${result.answeredChar}`).style.color = "green"; } document.getElementById("end").style.display = "none"; document.getElementById("new").innerHTML = ` `; randomRadioFunc(); document.getElementById("startForm").addEventListener("submit", generateQuestion); } else alert("Wystąpił błąd, spróbuj ponownie"); }); }, 300); } const mainContent = document.getElementById("content"); function randomRadioFunc() { const QIDnum = document.getElementById("QIDnum"); const randomRadio = document.querySelectorAll("input[name='random']"); randomRadio.forEach(function (inputRadio) { inputRadio.addEventListener("change", function () { if (document.getElementById("byQID").checked) { QIDnum.style.visibility = "visible"; } else QIDnum.style.visibility = "hidden"; }); }); if (!lastRandomQuestion) QIDnum.style.visibility = "visible"; } randomRadioFunc(); document.getElementById("startForm").addEventListener("submit", generateQuestion); });