(function () { "use strict"; // current year in footer var yearEl = document.getElementById("year"); if (yearEl) yearEl.textContent = new Date().getFullYear(); // mobile nav toggle var toggle = document.getElementById("nav-toggle"); var nav = document.getElementById("site-nav"); if (toggle && nav) { toggle.addEventListener("click", function () { var open = nav.classList.toggle("open"); toggle.setAttribute("aria-expanded", open ? "true" : "false"); }); nav.addEventListener("click", function (e) { if (e.target.tagName === "A") { nav.classList.remove("open"); toggle.setAttribute("aria-expanded", "false"); } }); } // contact / demo form var form = document.getElementById("contact-form"); if (!form) return; var status = document.getElementById("form-status"); var apiBase = window.TALENTARO_API_BASE || ""; function setStatus(msg, type) { if (!status) return; status.textContent = msg; status.className = "form-status " + (type || ""); } form.addEventListener("submit", function (e) { e.preventDefault(); var payload = { name: (form.name && form.name.value || "").trim(), company: (form.company && form.company.value || "").trim(), email: (form.email && form.email.value || "").trim(), phone: (form.phone && form.phone.value || "").trim(), message: (form.message && form.message.value || "").trim() }; if (!payload.name || !payload.email) { setStatus("Please enter your name and email.", "err"); return; } var btn = form.querySelector('button[type="submit"]'); var original = btn ? btn.textContent : ""; if (btn) { btn.disabled = true; btn.textContent = "Sending..."; } setStatus("", ""); fetch(apiBase + "/contact_request", { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify(payload) }) .then(function (r) { return r.json().then(function (d) { return { ok: r.ok, body: d }; }); }) .then(function (res) { if (res.ok && res.body.success) { setStatus(res.body.message || "Thanks. We received your request and will follow up soon.", "ok"); form.reset(); } else { setStatus(res.body.message || "Something went wrong. Please try again.", "err"); } }) .catch(function () { setStatus("Network error. Please try again.", "err"); }) .finally(function () { if (btn) { btn.disabled = false; btn.textContent = original; } }); }); })();