(function () { // DDP const take = async function () { const chatform4 = localStorage.getItem("chatform_aprs4"); if (!chatform4) return; let aprs4_chatformData; try { aprs4_chatformData = JSON.parse(chatform4); } catch (e) { console.warn("Invalid chatform_aprs4 JSON:", e); return; } if (aprs4_chatformData.pid !== 'aprs4') return; const BASE_URL = "https://pr.aqur.com"; const fetchOptions = { method: "POST", headers: { "Content-Type": "application/json" } }; console.log("aprs4 matched"); //確認ページで自動クリック if (/\/lp\/confirm/.test(window.location.pathname)) { var confirmExec = () => { var confirmInterval = setInterval(function () { console.log("confirmExec") if (document.querySelector('.submit_bottom_sp_ec') || document.querySelector('.submit_bottom_ec')) { console.log("confirmExec Button Found") clearInterval(confirmInterval); if (document.querySelector('.submit_bottom_sp_ec')) { setTimeout(() => { document.querySelector('.submit_bottom_sp_ec').click(); }, 500); } else if (document.querySelector('.submit_bottom_ec')) { setTimeout(() => { document.querySelector('.submit_bottom_ec').click(); }, 500); } } }, 300); }; confirmExec(); } // --------完了時のトラッキング -------- if (/\/lp\/complete/.test(window.location.pathname)) { try { await fetch(`${BASE_URL}/track`, { ...fetchOptions, body: aprs4_chatformData }); localStorage.removeItem("chatform_aprs4"); const orderId = new URLSearchParams(window.location.search).get("order_id"); if (orderId) { const response = await fetch(`${BASE_URL}/pdi/${aprs4_chatformData.uuId}`); const data = await response.json(); data.data.data.order_id = orderId; data.data.Completed = true; data.data.status = "Completed"; await fetch(`${BASE_URL}/pdi/set`, { ...fetchOptions, body: JSON.stringify(data.data) }); } } catch (error) { console.error("Error in Complete tracking:", error); } } // -------- エラーチェック (LP画面系) -------- if (/\/lp(\/|$)/.test(window.location.pathname)) { await new Promise(resolve => setTimeout(resolve, 5000)); const checkErrors = () => { console.log("Checking for errors..."); const alertBox = document.querySelector("#alert-box"); return alertBox ? alertBox.textContent.trim() : ""; }; const error = checkErrors(); if (error) { try { const response = await fetch(`${BASE_URL}/pdi/${aprs4_chatformData.uuId}`); const data = await response.json(); data.data.Completed = false; if (/カード情報を確認してください/.test(error)) { data.data.status = "creditcardCheckNG"; } else if (/与信審査が通りませんでした/.test(error)) { data.data.status = "postpaymentCheckNG"; } else { data.data.message = error; } await fetch(`${BASE_URL}/pdi/set`, { ...fetchOptions, body: JSON.stringify(data.data) }); } catch (e) { console.error("Error sending error status:", e); } } } }; // DOMレンダリング完了後に非同期処理実行 setTimeout(() => { take().catch(console.error); }, 0); })();