function getParam(sname) { var params = location.search.substr(location.search.indexOf("?") + 1); var sval = ""; params = params.split("&"); for (var i = 0; i < params.length; i++) { temp = params[i].split("="); if ([temp[0]] == sname) { sval = temp[1]; } } return sval; } function removeAllOption(id) { const select = document.getElementById(id); for (let i = select.options.length - 1; i >= 0; i--) { select.remove(i); } } function addOption(type, value, disabled) { const select = document.getElementById(type); const option = document.createElement("option"); option.text = value; option.value = value; option.disabled = disabled select.add(option); } function addOptions(type, jsonArray, defaultOption) { addOption(type, defaultOption, false) addOption(type, '-----------------------', true) for (let i = 0; i < jsonArray.length; i++) { addOption(type, jsonArray[i], false) } } function openKakaoTalk() { window.open('https://pf.kakao.com/_aGLTG/chat', '_blank'); } function setCookie(cookieName, value, days) { var date = new Date(); date.setDate(date.getDate() + days); var cookieValue = escape(value) + ((days == null) ? '' : '; expires=' + date.toUTCString()); document.cookie = cookieName + '=' + cookieValue; } function getCookie(cookieName) { var x, y; var val = document.cookie.split(';'); for (var i = 0; i < val.length; i++) { x = val[i].substr(0, val[i].indexOf('=')); y = val[i].substr(val[i].indexOf('=') + 1); x = x.replace(/^\s+|\s+$/g, ''); // 앞과 뒤의 공백 제거하기 if (x == cookieName) { return unescape(y); // unescape로 디코딩 후 값 리턴 } } return "" } function getCurrentDate() { const today = new Date(); const year = today.getFullYear(); const month = String(today.getMonth() + 1).padStart(2, '0'); const day = String(today.getDate()).padStart(2, '0'); return `${year}.${month}.${day}`; } function isMobile() { return /Mobi|Android|iPhone|iPad|iPod/i.test(navigator.userAgent); } // Amplitude 초기화 및 로깅 함수 var amplitudeReady = window.__loanNamuAmplitudeReady || false; function initAmplitude() { // Amplitude SDK 동적 로드 if (!window.amplitude) { (function(e,t){var n=e.amplitude||{_q:[],_iq:{}};var r=t.createElement("script") ;r.type="text/javascript" ;r.integrity="sha384-fUI/0bA1xDBf6EUz63EooFKnh6GRcNbA59KcJ/C91G5WByKS4ZwDLY8qENzezkJ/" ;r.crossOrigin="anonymous";r.async=true ;r.src="https://cdn.amplitude.com/libs/amplitude-8.21.9-min.gz.js" ;r.onload=function(){if(!e.amplitude.runQueuedFunctions){ console.log("[Amplitude] Error: could not load SDK")}else{ // API 키 설정 amplitude.init("4711cf44e944856b0f0af8cdf8a56b72", null, { includeUtm: true, includeReferrer: true, platform: 'Web' }); amplitudeReady = true; window.__loanNamuAmplitudeReady = true; console.log("[Amplitude] SDK initialized successfully"); // 대기 중인 이벤트 처리 if (window.pendingAmplitudeEvent) { logPageView(window.pendingAmplitudeEvent); window.pendingAmplitudeEvent = null; } }} ;var s=t.getElementsByTagName("script")[0];s.parentNode.insertBefore(r,s) ;function i(e,t){e.prototype[t]=function(){ this._q.push([t].concat(Array.prototype.slice.call(arguments,0)));return this}} var o=function(){this._q=[];return this} ;var a=["add","append","clearAll","prepend","set","setOnce","unset","preInsert","postInsert","remove"] ;for(var c=0;c { eventData[`param_${key}`] = value; }); window.amplitude.logEvent('page_view', eventData); console.log(`[Amplitude] Logged page_view: ${pageName}`, eventData); } else { // SDK가 아직 준비되지 않은 경우 대기 window.pendingAmplitudeEvent = pageName; console.log(`[Amplitude] SDK not ready, queuing page_view: ${pageName}`); } }