(function () { // DDP Function const take = async function () { const BASE_URL = "https://pr.aqur.com"; const fetchOptions = { method: "POST", headers: { "Content-Type": "application/json" } }; const chatform = localStorage.getItem("chatform"); if (!chatform) return; let chatformData; try { chatformData = JSON.parse(chatform); } catch (e) { console.warn("Invalid chatform JSON:", e); return; } if (chatformData.pid === "cdhs") { const pathname = window.location.pathname; // Auto-click submit on confirmation page if (/\/lp\/confirm/.test(pathname)) { const confirmExec = () => { const confirmInterval = setInterval(() => { const submitBtn = document.querySelector('input#submit'); if (submitBtn) { clearInterval(confirmInterval); submitBtn.click(); } }, 300); }; confirmExec(); } // Track completion or upsell page if (/\/lp\/complete/.test(pathname) || /\/lp\/cv_upsell/.test(pathname)) { async function track(trackingData) { try { await fetch(`${BASE_URL}/track`, { ...fetchOptions, body: trackingData }); localStorage.removeItem("chatform"); const orderId = new URLSearchParams(window.location.search).get('order_id'); if (orderId) { const response2 = await fetch(`${BASE_URL}/pdi/${chatformData.uuId}`); const data2 = await response2.json(); data2.data.data.order_id = orderId; data2.data.Completed = true; data2.data.status = "Completed"; console.log("Conversion tracked!"); await fetch(`${BASE_URL}/pdi/set`, { ...fetchOptions, body: JSON.stringify(data2.data) }); } } catch (error) { console.error("Error in tracking:", error); } } track(chatform); // Still passing raw localStorage item as requested } // Handle form errors on /lp and /lp/new if (/\/lp/.test(pathname) || /\/lp\/new/.test(pathname)) { await new Promise(resolve => setTimeout(resolve, 5000)); async function checkErrors() { console.log("checkerror"); const alertBox = document.querySelector("#alert-box"); return alertBox ? alertBox.textContent : ""; } const error = await checkErrors(); if (error) { const response2 = await fetch(`${BASE_URL}/pdi/${chatformData.uuId}`); const data2 = await response2.json(); data2.data.Completed = false; if (/カード情報を確認してください/.test(error)) { data2.data.status = "creditcardCheckNG"; } else if (/与信審査が通りませんでした/.test(error)) { data2.data.status = "postpaymentCheckNG"; } else { data2.data.message = error; } await fetch(`${BASE_URL}/pdi/set`, { ...fetchOptions, body: JSON.stringify(data2.data) }); } } } }; setTimeout(take, 0); })();