Files
sake/build/resources/main/static/js/adscript/admedia/adscript_tgscript.js

227 lines
9.6 KiB
JavaScript

function targetingGates(list, url) {
if(fn_is_empty(list)){
return false;
}
const commonHeaderAt = adScriptCommonHeaderAt(list);
if(commonHeaderAt){
const adMediaId = commonHeaderAt.adMediaId;
const mbrIdHash = $('#adscriptMbrId').val()
let tgDiv = document.createElement('div');
tgDiv.id = 'wp_tg_cts';
tgDiv.style.display ='none';
document.body.appendChild(tgDiv);
let tgScript = document.createElement('script');
tgScript.type = 'text/javascript';
tgScript.innerHTML = `
var wptg_tagscript_vars = wptg_tagscript_vars || [];
wptg_tagscript_vars.push(
(function() {
return {
wp_hcuid:"${mbrIdHash}", /*고객 이메일 등 Unique ID (ex. 이메일을 기준, 혹은 고객 아이디 / 고객 번호 등의 정보)를 암호화하여 대입.
*주의 : 로그인 하지 않은 사용자는 어떠한 값도 대입하지 않습니다.*/
ti:"${adMediaId}", /*광고주 코드 */
ty:"Home", /*트래킹태그 타입 */
device:"web" /*웹,모바일 모두 web으로 통일*/
};
}));
`;
document.head.appendChild(tgScript);
let tgScript2 = document.createElement('script');
tgScript2.type = 'text/javascript';
tgScript2.async = true;
tgScript2.src = '//cdn-aitg.widerplanet.com/js/wp_astg_4.0.js';
document.head.appendChild(tgScript2);
}//common header end
//상품상세 페이지
if(url.includes(selectGoodsDtl)){
//# 상품상세페이지가 로드되면 아래 코드 실행
const goodsDtlFormAt = adScriptGoodsDtlFormAt(list);
if(goodsDtlFormAt){
let tgDiv = document.createElement('div');
tgDiv.id = 'wp_tg_cts';
tgDiv.style.display ='none';
document.body.appendChild(tgDiv);
const adMediaId = goodsDtlFormAt.adMediaId
const adscriptMbrId = $('#adscriptMbrId').val()
const goodsInnb = $('#goodsInnb').val()
const goodsNm = $('#goodsNm').val()
const totalGoodsPrice = $('.productDetailInfo__priceTotal__totalPriceNum').text()
let goodsDtlScript = document.createElement('script');
goodsDtlScript.type = 'text/javascript';
goodsDtlScript.innerHTML = `
var wptg_tagscript_vars = wptg_tagscript_vars || [];
wptg_tagscript_vars.push(
(function() {
return {
wp_hcuid:"${adscriptMbrId}", /*고객 이메일 등 Unique ID (ex. 이메일을 기준, 혹은 고객 아이디 / 고객 번호 등의 정보)를 암호화하여 대입.
*주의 : 로그인 하지 않은 사용자는 어떠한 값도 대입하지 않습니다.*/
ti:"${adMediaId}",
ty:"Item",
device:"web"
,items:[{i:"${goodsInnb}", t:"${goodsNm}", p: "${totalGoodsPrice}", q: "1"}] /* i:<상품 식별번호 (Feed로 제공되는 상품코드(상품번호)와 일치하여야 합니다 .) t:상품명 */
};
}));
`;
document.head.appendChild(goodsDtlScript);
let tgScript2 = document.createElement('script');
tgScript2.type = 'text/javascript';
tgScript2.async = true;
tgScript2.src = '//cdn-aitg.widerplanet.com/js/wp_astg_4.0.js';
document.head.appendChild(tgScript2);
}
}//상품 상세 END
//장바구니 페이지
if(url.includes(selectSpbk)){
//# 장바구니 페이지가 로드되면 아래 코드 실행.
const cartListFormAt = adScriptCartListFormAt(list)
if(cartListFormAt){
let tgDiv = document.createElement('div');
tgDiv.id = 'wp_tg_cts';
tgDiv.style.display ='none';
document.body.appendChild(tgDiv);
const adMediaId = cartListFormAt.adMediaId
const adscriptMbrId = $('#adscriptMbrId').val();
//JSON PARSE
const adScriptGoodsList = JSON.parse($('#adscriptCartGoodsList').val())
// 데이터를 저장할 배열
let productDataArray = [];
if(!fn_is_empty(adScriptGoodsList.goodsList)){
adScriptGoodsList.goodsList.forEach(optn => {
// 객체로 저장
const productData = {
i : optn.goodsInnb,
t: optn.goodsNm
};
// 배열에 추가
productDataArray.push(productData);
});
}
let cartListScript = document.createElement('script');
cartListScript.type = 'text/javascript';
cartListScript.innerHTML = `
var wptg_tagscript_vars = wptg_tagscript_vars || [];
wptg_tagscript_vars.push(
(function() {
return {
wp_hcuid:"${adscriptMbrId}", /*고객 이메일 등 Unique ID (ex. 이메일을 기준, 혹은 고객 아이디 / 고객 번호 등의 정보)를 암호화하여 대입.
*주의 : 로그인 하지 않은 사용자는 어떠한 값도 대입하지 않습니다.*/
ti:"${adMediaId}",
ty:"Cart",
device:"web"
,items:${JSON.stringify(productDataArray)}
};
}));
`;
document.head.appendChild(cartListScript);
let tgScript2 = document.createElement('script');
tgScript2.type = 'text/javascript';
tgScript2.async = true;
tgScript2.src = '//cdn-aitg.widerplanet.com/js/wp_astg_4.0.js';
document.head.appendChild(tgScript2);
}
}//장바구니 페이지 END
//주문 완료 페이지
if(url.includes(selectOrdrCompt)){
//# 주문완료 페이지가 로드되면 아래 코드 실행.
const purchsCompleteFormAt = adScriptPurchsCompleteFormAt(list)
if(purchsCompleteFormAt){
const adMediaId = purchsCompleteFormAt.adMediaId
const adscriptMbrId = $('#adscriptMbrId').val()
// 상품정보 배열
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);
for(let obj of adscriptParse.goodsList){
let productData = {
i: obj.goodsInnb.toString(),
t: obj.goodsNm,
p: parseInt(obj.applyDscntAmt)/obj.ordrQy,
q: obj.ordrQy
};
// 배열에 추가
productDataArray.push(productData);
}
let tgDiv = document.createElement('div');
tgDiv.id = 'wp_tg_cts';
tgDiv.style.display ='none';
document.body.appendChild(tgDiv);
let purchsComplateFormScript = document.createElement('script');
purchsComplateFormScript.innerHTML= `
var wptg_tagscript_vars = wptg_tagscript_vars || [];
wptg_tagscript_vars.push(
(function() {
return {
wp_hcuid:"${adscriptMbrId}", /*고객 이메일 등 Unique ID (ex. 이메일을 기준, 혹은 고객 아이디 / 고객 번호 등의 정보)를 암호화하여 대입.
*주의 : 로그인 하지 않은 사용자는 어떠한 값도 대입하지 않습니다.*/
ti:"${adMediaId}",
ty:"PurchaseComplete",
device:"web"
,items: ${JSON.stringify(productDataArray)} // 상품정보
/*[
{i:"상품번호", t:"상품명", p:"옵션주문단가", q:"옵션주문수량"} 첫번째 상품 - i:상품 식별번호 (Feed로 제공되는 식별번호와 일치 ) t:상품명 p:단가 q:수량
,{i:"상품번호", t:"상품명", p:"옵션주문단가", q:"옵션주문수량"}
]*/
};
}));
`;
document.head.appendChild(purchsComplateFormScript);
let tgScript2 = document.createElement('script');
tgScript2.type = 'text/javascript';
tgScript2.async = true;
tgScript2.src = '//cdn-aitg.widerplanet.com/js/wp_astg_4.0.js';
document.head.appendChild(tgScript2);
}
}//주문 완료 페이지 END
}