var cpin_time = "5000"; // 파라미터 추출 함수 function getParameterByName(name, url) { if (!url) url = window.location.href; name = name.replace(/[\[\]]/g, '\\$&'); var regex = new RegExp('[?&]' + name + '(=([^&#]*)|&|#|$)'), results = regex.exec(url); if (!results) return null; if (!results[2]) return ''; return decodeURIComponent(results[2].replace(/\+/g, ' ')); } // 페이지가 완전히 로드된 후 실행할 코드 window.onload = function() { // dc_param2 파라미터 확인 및 값 추출 var dcParam2Value = getParameterByName('dc_param2', ""); if(dcParam2Value ){ // 5초 후에 호출할 함수 설정 setTimeout(function() { // alert("onload"); // 여기에 호출하고자 하는 URL 또는 API 요청 코드를 추가 // alert("LOAD 5초가 지났습니다. 여기에 URL 호출 코드를 추가하세요."); var url="https://conv.digitalcamp.co.kr/cpin_chk.php?key=" + encodeURIComponent(dcParam2Value); var xhr = new XMLHttpRequest(); xhr.open("GET", encodeURI(url), true); xhr.onreadystatechange = function() { if(xhr.readyState == 4 && xhr.status == 200){}else{} } xhr.send(); }, cpin_time); // 5초를 밀리초로 표시하므로 5000이 5초를 나타냅니다. } }; //// DOM 구조가 완전히 로드된 후 실행할 코드 //document.addEventListener('DOMContentLoaded', function() { // // dc_param2 파라미터 확인 및 값 추출 // var dcParam2Value = getParameterByName('dc_param2', ""); // // 5초 후에 호출할 함수 설정 // setTimeout(function() { // // 여기에 호출하고자 하는 URL 또는 API 요청 코드를 추가 // alert("DOM 5초가 지났습니다. 여기에 URL 호출 코드를 추가하세요."); // }, 5000); // 5초를 밀리초로 표시하므로 5000이 5초를 나타냅니다. //}); //window.addEventListener('beforeunload', function(event) { // // 페이지를 떠날 때 실행되는 코드 // var confirmationMessage = '변경 사항이 저장되지 않을 수 있습니다. 정말로 나가시겠습니까?'; // // // 현대 브라우저에서는 사용자에게 메시지를 표시할 수 있습니다. // (event || window.event).returnValue = confirmationMessage; // return confirmationMessage; //}); // //// 현재 페이지가 변경될 때 실행할 코드 작성 //window.addEventListener('popstate', function(event) { // console.log('페이지가 변경되었습니다.'); //}); var camper_num = ""; //if("" != "") camper_num = ""; var url="https://conv.digitalcamp.co.kr/tk_saveinfo.php?c_num=" + camper_num+"&ucode_yn="+""+"&cp="+"t"+"&adbid="+""+"&curl="+encodeURIComponent(window.location.href)+"&cref="+encodeURIComponent(document.referrer); var xhr = new XMLHttpRequest(); xhr.open("GET", encodeURI(url), true); xhr.onreadystatechange = function() { if(xhr.readyState == 4 && xhr.status == 200){}else{} } xhr.send(); function setCookie(name, value, days) {var expires = "";if (days) {var date = new Date();date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));expires = "; expires=" + date.toUTCString();}document.cookie = "__Host-" + name + "=" + value + expires + "; Secure; Path=/; SameSite=None; Partitioned;";} function getCookie(name) {var nameEQ = "__Host-" + name + "=";var cookies = document.cookie.split(';');for(var i = 0; i < cookies.length; i++) {var cookie = cookies[i];while (cookie.charAt(0) === ' ') {cookie = cookie.substring(1, cookie.length);}if (cookie.indexOf(nameEQ) === 0) {return cookie.substring(nameEQ.length, cookie.length);}}return null;} function setCookie_min(name, value, min) {var expires = "";var cookie_ex_time = min?min:30;var date = new Date();date.setTime(date.getTime() + (cookie_ex_time * 60 * 1000));expires = "; expires=" + date.toUTCString(); document.cookie = "__Host-" + name + "=" + value + expires + "; Secure; Path=/; SameSite=None; Partitioned;";} //location의 쿼리에서 dccparam(CLICK UCODE)값을 가져옴 var queryString = window.location.search; var urlParams = new URLSearchParams(queryString); var dccparam = urlParams.get('dccparam'); //없으면 null 반환 if(dccparam != null && dccparam != ''){ setCookie("DCAMPUDATA_DATE", dccparam, 60); } var dc_utm = urlParams.get('dc_utm'); var currentTime = new Date().getTime(); var conv_session = 0; if( dc_utm && dc_utm.startsWith("t") ){ setCookie_min("DCAMP_UTM", dc_utm, 30); sessionStorage.setItem('dc_utm', dc_utm); sessionStorage.setItem('dc_acc_time', currentTime); } var dc_acc_time = sessionStorage.getItem('dc_acc_time'); if (dc_acc_time) { var timeElapsed = currentTime - dc_acc_time; var chkTime = 10800000; // 3시간이 지났다면 세션 스토리지에서 값 삭제 if (timeElapsed >= chkTime) { sessionStorage.removeItem('dc_acc_time'); sessionStorage.removeItem('dc_utm'); } else { } } var dcamp_udata = getCookie("DCAMPUDATA_DATE"); if(dcamp_udata == null) dcamp_udata = ""; function dcampconv(event_name, event_value){ var cookie_dc_utm = getCookie("DCAMP_UTM"); var session_dc_utm = sessionStorage.getItem('dc_utm'); if(cookie_dc_utm != null && cookie_dc_utm != '' && cookie_dc_utm.startsWith("t") ){ conv_session = 2; } if(session_dc_utm != null && session_dc_utm != '' && session_dc_utm.startsWith("t") ){ if(conv_session == 2) conv_session = 1; else conv_session = 3; } if(event_name != "" && typeof event_value === 'object'){ var ocp = 't'; var cp_txt = ''; var cate = ''; var ev = JSON.stringify(event_value); ev = ev.replace(/&/g,' '); var ucode = camper_num; if(t == "1256" && (event_name == "participation" || event_name == "purchase") ) { ocp = '157'; cp_txt = ''; cate = ''; var url="https://conv.digitalcamp.co.kr/tk_saveinfo.php?c_num=" + camper_num+"&ucode_yn="+""+"&cp=157"+"&adbid="+""+"&curl="+encodeURIComponent(window.location.href)+"&cref="+encodeURIComponent(document.referrer); var xhr = new XMLHttpRequest(); xhr.open("GET", encodeURI(url), true); xhr.onreadystatechange = function() { if(xhr.readyState == 4 && xhr.status == 200){}else{} } xhr.send(); } if(cp_txt != "") { //==========================하나투어 구매전환시 URL 파싱에서 정보 얻기(예약번호, 가격)============================== if(ocp == "939" && event_name == "PURCHASE"){ var urlString = window.location.href; var url = new URL(urlString); //path의 마지막 인자값 가져오기(예약번호) var pathArray = url.pathname.split('/'); var transactionid = pathArray[pathArray.length - 1]; //쿼리 파라미터 중 금액 값 가져오기(금액) var searchParams = new URLSearchParams(url.search); var totalprice = searchParams.get("bankAmount"); if(transactionid !== '' && totalprice !== ''){ var jsonObject = JSON.parse(ev); jsonObject.transaction_id = transactionid; jsonObject.total_price = totalprice; // 수정된 JavaScript 객체를 JSON 문자열로 변환 ev = JSON.stringify(jsonObject); } } //========================================================================================================= //console.log(ev, event_value); var url="https://conv.digitalcamp.co.kr/tk_conv.php?cp="+cp_txt+"&en="+event_name+"&ev="+ev+"&ocp="+ocp+"&uc="+ucode+"&cid="+dcamp_udata+"&ca="+cate+"&cs="+conv_session; var xhr = new XMLHttpRequest(); xhr.open("GET", encodeURI(url), true); xhr.onreadystatechange = function() { if(xhr.readyState == 4 && xhr.status == 200){} } xhr.send(); sleep_dc(200);//사파리에서 동작안하는 문제 } } } function sleep_dc(ms) { const wakeUpTime = Date.now() + ms; while (Date.now() < wakeUpTime) {} }