122 lines
4.0 KiB
JavaScript
122 lines
4.0 KiB
JavaScript
function kakaoMoments(list, url) {
|
|
if(fn_is_empty(list)){
|
|
return false;
|
|
}
|
|
|
|
const commonHeaderAt = adScriptCommonHeaderAt(list);
|
|
|
|
(async function() {
|
|
if(commonHeaderAt){
|
|
|
|
const adMediaId = commonHeaderAt.adMediaId;
|
|
|
|
try {
|
|
// adn2dot0HeaderScript 로드 및 실행 대기
|
|
await loadScript('//t1.daumcdn.net/kas/static/kp.js');
|
|
} catch (error) {
|
|
console.error('error', error);
|
|
return; // 스크립트 로드 실패 시 이후 진행 중지
|
|
}
|
|
|
|
let kakaoScript2 = document.createElement('script')
|
|
kakaoScript2.type ='text/javascript';
|
|
kakaoScript2.innerHTML = `kakaoPixel('${adMediaId}').pageView();`;
|
|
document.head.appendChild(kakaoScript2);
|
|
}//common header end
|
|
|
|
|
|
//주문 완료 페이지
|
|
if(url.includes(selectOrdrCompt)){
|
|
|
|
//# 주문완료 페이지가 로드되면 아래 코드 실행.
|
|
const purchsCompleteFormAt = adScriptPurchsCompleteFormAt(list)
|
|
if(purchsCompleteFormAt){
|
|
|
|
|
|
let purchsComplateFormScript = document.createElement('script');
|
|
|
|
const adMediaId = purchsCompleteFormAt.adMediaId
|
|
|
|
|
|
// 상품정보 배열
|
|
let productDataArray = [];
|
|
|
|
const adscriptVal = $('#adscript').val()
|
|
const decode = decodeURIComponent(atob(adscriptVal).split('').map(function (c) {
|
|
return '%' + ('00' + c.charCodeAt(0).toString(16)).slice(-2);
|
|
}).join(''));
|
|
|
|
const adscriptParse = JSON.parse(decode);
|
|
|
|
let price = parseInt(adscriptParse.total.setleAmt)
|
|
|
|
let totalOrdrQy = 0;
|
|
|
|
for(let obj of adscriptParse.goodsList){
|
|
|
|
|
|
let productData = {
|
|
id: obj.goodsInnb.toString(),
|
|
name: obj.goodsNm,
|
|
quantity: obj.ordrQy,
|
|
price: parseInt(obj.applyDscntAmt)/obj.ordrQy,
|
|
};
|
|
// 배열에 추가
|
|
totalOrdrQy += obj.ordrQy
|
|
productDataArray.push(productData);
|
|
}
|
|
|
|
|
|
purchsComplateFormScript.innerHTML= `
|
|
kakaoPixel('${adMediaId}').pageView();
|
|
kakaoPixel('${adMediaId}').purchase({
|
|
total_quantity: "${totalOrdrQy}", // 주문 내 상품 개수(optional)
|
|
total_price: ${price}, // 주문 총 가격(optional)
|
|
currency: "KRW", // 주문 가격의 화폐 단위(optional, 기본 값은 KRW)
|
|
products: ${JSON.stringify(productDataArray)} // 상품정보
|
|
});
|
|
`;
|
|
|
|
document.head.appendChild(purchsComplateFormScript);
|
|
}
|
|
}//주문 완료 페이지 END
|
|
|
|
|
|
//회원가입 완료 페이지
|
|
if(url.includes(selectJoinCompleteR)){
|
|
|
|
|
|
//# 회원가입 완료 페이지 로드되면 아래 코드 실행
|
|
const mbrRegstFormAt = adScriptMbrRegstFormAt(list);
|
|
if(mbrRegstFormAt){
|
|
|
|
const adMediaId = mbrRegstFormAt.adMediaId
|
|
|
|
let joinScript = document.createElement('script');
|
|
|
|
joinScript.innerHTML = `
|
|
kakaoPixel('${adMediaId}').pageView();
|
|
kakaoPixel('${adMediaId}').completeRegistration();
|
|
`;
|
|
|
|
document.head.appendChild(joinScript);
|
|
}
|
|
|
|
}
|
|
|
|
})();
|
|
|
|
|
|
//상품상세 페이지
|
|
if(url.includes(selectGoodsDtl)){
|
|
|
|
//# 상품상세페이지에서 장바구니 담기 버튼을 클릭할 때 아래 코드 실행. addEventListner 등 사용
|
|
const addCartEventAt = adScriptAddCartEventAt(list);
|
|
if(addCartEventAt){
|
|
|
|
addCartStorage(addCartEventAt)
|
|
}
|
|
}//상품 상세 END
|
|
|
|
|
|
} |