document.getElementById("email-form").addEventListener("submit", async function (e) { e.preventDefault(); const subject = document.getElementById("subject").value; const body = document.getElementById("body").value; // Basic input validation if (!subject.trim() && !body.trim()) { alert("Please enter both subject and body."); return; } try { const response = await fetch("/predict", { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify({ subject: subject, body: body, play_game: false }) }); const result = await response.json(); console.log("🔍 Result:", result); if (result.phishing !== undefined) { document.getElementById('results').classList.remove('hidden'); document.getElementById('result-text').innerText = result.label; document.getElementById('score-text').innerText = result.phishing_score; document.getElementById('explanation-text').innerText = result.explanation; document.getElementById('language-text').innerText = result.language; document.getElementById('tip-text').innerText = result.did_you_know; } else { alert("Something went wrong! No result received."); } } catch (error) { console.error("Fetch error:", error); alert("An error occurred. Please check the backend logs."); } }); // === Handle 'Take Quiz' button === document.getElementById("quiz-btn").addEventListener("click", async function () { try { const response = await fetch("/predict", { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify({ subject: "quiz start", body: "quiz mode", play_game: true }) }); const result = await response.json(); console.log("🎮 Quiz Start:", result); if (result.quiz) { sessionStorage.setItem("session_id", result.session_id); sessionStorage.setItem("quiz_data", JSON.stringify(result.quiz)); window.location.href = "/quiz"; } else { alert("Quiz could not be started. Please try again."); } } catch (error) { console.error("Quiz start error:", error); alert("An error occurred starting the quiz."); } });