354 lines
10 KiB
JavaScript
354 lines
10 KiB
JavaScript
/*******************************************
|
|
광고 스크립트 공통 함수 START
|
|
*******************************************/
|
|
|
|
//상품상세 조회 페이지
|
|
const selectGoodsDtl = 'selectGoodsDtl';
|
|
//장바구니 조회 페이지
|
|
const selectSpbk = 'selectSpbk';
|
|
// 주문서 작성 페이지 - 비회원
|
|
const selectNmbrPurchsForm = 'selectNmbrPurchsForm';
|
|
// 주문서 작성 페이지- 회원
|
|
const selectMbrPurchsForm = 'selectMbrPurchsForm';
|
|
// 회원가입 완료 페이지
|
|
const selectJoinCompleteR = 'selectJoinCompleteR';
|
|
//주문 완료 페이지
|
|
const selectOrdrCompt = 'selectOrdrCompt'
|
|
//메인페이지
|
|
const mainPage = '/'
|
|
const mainIndex = '/index'
|
|
|
|
let adScriptAddCart = JSON.parse(sessionStorage.getItem('adscript_addcart'));
|
|
let adScriptNpayBtn = JSON.parse(sessionStorage.getItem('adscript_npayBtn'));
|
|
let adScriptReturnReq = JSON.parse(sessionStorage.getItem('adscript_returnReq'));
|
|
let adScriptWslistBtn = JSON.parse(sessionStorage.getItem('adscript_wslist'));
|
|
|
|
//스크립트 구분여부가 존재할 경우 객체정보 반환 함수
|
|
function adScriptListToObj(item) {
|
|
if(fn_is_empty(item)){
|
|
|
|
//비어있으면 false
|
|
return false;
|
|
|
|
}else{
|
|
return {
|
|
'adMediaId': item.adMediaId
|
|
,'instlPgeLbl': fn_nvl(item.instlPgeLbl,'')
|
|
,'npayButtonId' : fn_nvl(item.npayButtonId,'')
|
|
,'adMediaDvCd' : item.adMediaDvCd
|
|
,'instlPgeDvCd' : item.instlPgeDvCd
|
|
,'instlPgeEnvrnCd' : item.instlPgeEnvrnCd
|
|
,'trigrDvCd' : item.trigrDvCd
|
|
};
|
|
}
|
|
|
|
}
|
|
|
|
/*광고스크립트 - 장바구니 클릭 매체 정보 세션스토리지 저장 */
|
|
function addCartStorage(obj) {
|
|
|
|
//세션스토리지에 아이템 없을 경우 빈배열 생성
|
|
if (!adScriptAddCart) {
|
|
adScriptAddCart = [];
|
|
} else {
|
|
// 존재할 경우 parse
|
|
adScriptAddCart = JSON.parse(sessionStorage.getItem('adscript_addcart'));
|
|
//JSON.parse(adscript_addcart);
|
|
}
|
|
|
|
//중복 여부
|
|
let dupliAt = adScriptAddCart.some(item => {
|
|
return item.instlPgeDvCd === obj.instlPgeDvCd
|
|
&& item.instlPgeEnvrnCd === obj.instlPgeEnvrnCd
|
|
&& item.adMediaDvCd === obj.adMediaDvCd
|
|
&& item.trigrDvCd === obj.trigrDvCd
|
|
})
|
|
|
|
//중복 아닐 경우만 저장
|
|
if(!dupliAt){
|
|
adScriptAddCart.push(obj);
|
|
}
|
|
|
|
// 세션 스토리지에 업데이트된 객체 배열을 다시 저장
|
|
sessionStorage.setItem('adscript_addcart', JSON.stringify(adScriptAddCart));
|
|
}
|
|
|
|
/*광고스크립트 - 네이버페이 클릭 매체 정보 세션스토리지 저장 */
|
|
function addNpayStorage(obj) {
|
|
//세션스토리지에 아이템 없을 경우 빈배열 생성
|
|
if (!adScriptNpayBtn) {
|
|
adScriptNpayBtn = [];
|
|
} else {
|
|
// 존재할 경우 parse
|
|
adScriptNpayBtn = JSON.parse(sessionStorage.getItem('adscript_npayBtn'));
|
|
}
|
|
|
|
//중복 여부
|
|
let dupliAt = adScriptNpayBtn.some(item => {
|
|
return item.instlPgeDvCd === obj.instlPgeDvCd
|
|
&& item.instlPgeEnvrnCd === obj.instlPgeEnvrnCd
|
|
&& item.adMediaDvCd === obj.adMediaDvCd
|
|
&& item.trigrDvCd === obj.trigrDvCd
|
|
})
|
|
|
|
//중복 아닐 경우만 저장
|
|
if(!dupliAt){
|
|
adScriptNpayBtn.push(obj);
|
|
}
|
|
|
|
|
|
// 세션 스토리지에 업데이트된 객체 배열을 다시 저장
|
|
sessionStorage.setItem('adscript_npayBtn', JSON.stringify(adScriptNpayBtn));
|
|
}
|
|
|
|
/*광고스크립트 - 취소/환불 요청 클릭 매체 정보 세션스토리지 저장 */
|
|
function addReturnReqStorage(obj) {
|
|
//세션스토리지에 아이템 없을 경우 빈배열 생성
|
|
if (!adScriptReturnReq) {
|
|
adScriptReturnReq = [];
|
|
} else {
|
|
// 존재할 경우 parse
|
|
adScriptReturnReq = JSON.parse(sessionStorage.getItem("adscript_returnReq"));
|
|
}
|
|
|
|
//중복 여부
|
|
let dupliAt = adScriptReturnReq.some(item => {
|
|
return item.instlPgeDvCd === obj.instlPgeDvCd
|
|
&& item.instlPgeEnvrnCd === obj.instlPgeEnvrnCd
|
|
&& item.adMediaDvCd === obj.adMediaDvCd
|
|
&& item.trigrDvCd === obj.trigrDvCd
|
|
})
|
|
|
|
//중복 아닐 경우만 저장
|
|
if(!dupliAt){
|
|
adScriptReturnReq.push(obj);
|
|
}
|
|
|
|
// 세션 스토리지에 업데이트된 객체 배열을 다시 저장
|
|
sessionStorage.setItem('adscript_returnReq', JSON.stringify(adScriptReturnReq));
|
|
}
|
|
|
|
/*광고스크립트 - 상품상세 위시리스트 클릭 매체 정보 세션스토리지 저장 */
|
|
function addWslistStorage(obj) {
|
|
//세션스토리지에 아이템 없을 경우 빈배열 생성
|
|
if (!adScriptWslistBtn) {
|
|
adScriptWslistBtn = [];
|
|
} else {
|
|
// 존재할 경우 parse
|
|
adScriptWslistBtn = JSON.parse(sessionStorage.getItem("adscript_wslist"));
|
|
}
|
|
|
|
//중복 여부
|
|
let dupliAt = adScriptWslistBtn.some(item => {
|
|
return item.instlPgeDvCd === obj.instlPgeDvCd && item.instlPgeEnvrnCd === obj.instlPgeEnvrnCd && item.adMediaDvCd === obj.adMediaDvCd
|
|
})
|
|
|
|
//중복 아닐 경우만 저장
|
|
if(!dupliAt){
|
|
adScriptWslistBtn.push(obj);
|
|
}
|
|
|
|
// 세션 스토리지에 업데이트된 객체 배열을 다시 저장
|
|
sessionStorage.setItem('adscript_wslist', JSON.stringify(adScriptWslistBtn));
|
|
}
|
|
|
|
/*********************************
|
|
공통 스크립트 페이지별 구분
|
|
instlPgeDvCd : 설치페이지구분코드
|
|
instlPgeEnvrnCd : 설치페이지 환경코드 (01 공통, 02 PC, 03 모바일)
|
|
trigrDvCd : 01 페이지로드, 02 버튼
|
|
********************************/
|
|
|
|
//공통헤더 스크립트 존재여부
|
|
function adScriptCommonHeaderAt(list){
|
|
const commonHeaders = list.find(item =>
|
|
item.instlPgeDvCd ==='01' &&
|
|
item.instlPgeEnvrnCd === '01' &&
|
|
item.trigrDvCd ==='01'
|
|
)
|
|
return adScriptListToObj(commonHeaders)
|
|
|
|
}
|
|
|
|
//공통푸터 스크립트 존재여부
|
|
function adScriptCommonFooterAt(list){
|
|
|
|
const commonFooter = list.find(item =>
|
|
item.instlPgeDvCd ==='02' &&
|
|
item.instlPgeEnvrnCd === '01' &&
|
|
item.trigrDvCd ==='01'
|
|
)
|
|
return adScriptListToObj(commonFooter)
|
|
}
|
|
|
|
//PC푸터 스크립트 존재여부
|
|
function adScriptPcFooterAt(list){
|
|
|
|
const commonFooter = list.find(item =>
|
|
item.instlPgeDvCd ==='02' &&
|
|
item.instlPgeEnvrnCd === '02' &&
|
|
item.trigrDvCd ==='01'
|
|
)
|
|
return adScriptListToObj(commonFooter)
|
|
}
|
|
|
|
//Mobile 푸터 스크립트 존재여부
|
|
function adScriptMblFooterAt(list){
|
|
|
|
const commonFooter = list.find(item =>
|
|
item.instlPgeDvCd ==='02' &&
|
|
item.instlPgeEnvrnCd === '03' &&
|
|
item.trigrDvCd ==='01'
|
|
)
|
|
return adScriptListToObj(commonFooter)
|
|
}
|
|
|
|
//공통 상품상세 조회 여부
|
|
function adScriptGoodsDtlFormAt(list) {
|
|
const goodsDtl = list.find(item =>
|
|
item.instlPgeDvCd ==='03' &&
|
|
item.instlPgeEnvrnCd === '01' &&
|
|
item.trigrDvCd ==='01'
|
|
)
|
|
return adScriptListToObj(goodsDtl)
|
|
}
|
|
|
|
//PC 상품상세 조회 여부
|
|
function adScriptPcGoodsDtlFormAt(list) {
|
|
const goodsDtl = list.find(item =>
|
|
item.instlPgeDvCd ==='03' &&
|
|
item.instlPgeEnvrnCd === '02' &&
|
|
item.trigrDvCd ==='01'
|
|
)
|
|
return adScriptListToObj(goodsDtl)
|
|
}
|
|
|
|
//모바일 상품상세 조회 여부
|
|
function adScriptMblGoodsDtlFormAt(list) {
|
|
const goodsDtl = list.find(item =>
|
|
item.instlPgeDvCd ==='03' &&
|
|
item.instlPgeEnvrnCd === '03' &&
|
|
item.trigrDvCd ==='01'
|
|
)
|
|
return adScriptListToObj(goodsDtl)
|
|
}
|
|
|
|
//상품상세 - 장바구니 담기 클릭 여부
|
|
function adScriptAddCartEventAt(list) {
|
|
const cart = list.find(item =>
|
|
item.instlPgeDvCd ==='08' &&
|
|
item.instlPgeEnvrnCd === '01' &&
|
|
item.trigrDvCd ==='02'
|
|
)
|
|
return adScriptListToObj(cart)
|
|
}
|
|
|
|
//상품 상세 - 네이버페이 클릭 여부
|
|
function adScriptNpayEventAt(list) {
|
|
const naverpayScript = list.find(item =>
|
|
item.instlPgeDvCd ==='11' &&
|
|
item.instlPgeEnvrnCd === '01' &&
|
|
item.trigrDvCd ==='02'
|
|
)
|
|
return adScriptListToObj(naverpayScript)
|
|
}
|
|
|
|
//상품상세 - 위시리스트 클릭 여부
|
|
function adScriptAddWslistEventAt(list) {
|
|
const cart = list.find(item =>
|
|
item.instlPgeDvCd ==='12' &&
|
|
item.instlPgeEnvrnCd === '01' &&
|
|
item.trigrDvCd ==='02'
|
|
)
|
|
return adScriptListToObj(cart)
|
|
}
|
|
|
|
//장바구니 목록 조회 여부
|
|
function adScriptCartListFormAt(list) {
|
|
const cartList = list.find(item =>
|
|
item.instlPgeDvCd ==='08' &&
|
|
item.instlPgeEnvrnCd === '01' &&
|
|
item.trigrDvCd ==='01'
|
|
)
|
|
|
|
return adScriptListToObj(cartList)
|
|
}
|
|
|
|
//주문서 작성 페이지 조회 여부
|
|
function adScriptPurchsFormAt(list) {
|
|
const purchsForm = list.find(item =>
|
|
item.instlPgeDvCd ==='06' &&
|
|
item.instlPgeEnvrnCd === '01' &&
|
|
item.trigrDvCd ==='01'
|
|
)
|
|
return adScriptListToObj(purchsForm)
|
|
}
|
|
|
|
//주문 완료 페이지 조회 여부
|
|
function adScriptPurchsCompleteFormAt(list){
|
|
|
|
const purchsComplateForm = list.find(item =>
|
|
item.instlPgeDvCd ==='05' &&
|
|
item.instlPgeEnvrnCd === '01' &&
|
|
item.trigrDvCd ==='01'
|
|
)
|
|
return adScriptListToObj(purchsComplateForm)
|
|
}
|
|
|
|
//반품 환불 요청 클릭 여부
|
|
function adScriptRefundReqEventAt(list) {
|
|
|
|
const refundReq = list.find(item =>
|
|
item.instlPgeDvCd ==='09' &&
|
|
item.instlPgeEnvrnCd === '01' &&
|
|
item.trigrDvCd ==='02'
|
|
)
|
|
return adScriptListToObj(refundReq)
|
|
}
|
|
|
|
//반품 환불 완료 페이지 여부
|
|
function adScriptRefundCompleteFormAt(list) {
|
|
const refundComplete = list.find(item =>
|
|
item.instlPgeDvCd ==='07' &&
|
|
item.instlPgeEnvrnCd === '01' &&
|
|
item.trigrDvCd ==='01'
|
|
)
|
|
return adScriptListToObj(refundComplete)
|
|
}
|
|
|
|
|
|
//회원가입 페이지 조회 여부
|
|
function adScriptMbrRegstFormAt(list) {
|
|
const mbrRegst = list.find(item =>
|
|
item.instlPgeDvCd ==='04' &&
|
|
item.instlPgeEnvrnCd === '01' &&
|
|
item.trigrDvCd ==='01'
|
|
)
|
|
|
|
return adScriptListToObj(mbrRegst)
|
|
}
|
|
|
|
//모바일 메인 페이지
|
|
function adScriptMblMainFormAt(list) {
|
|
const mainMblScript = list.find(item =>
|
|
item.instlPgeDvCd ==='10' &&
|
|
item.instlPgeEnvrnCd === '03' &&
|
|
item.trigrDvCd ==='01'
|
|
)
|
|
|
|
return adScriptListToObj(mainMblScript)
|
|
}
|
|
|
|
//PC 메인 페이지
|
|
function adScriptPCMainFormAt(list) {
|
|
const mainMblScript = list.find(item =>
|
|
item.instlPgeDvCd ==='10' &&
|
|
item.instlPgeEnvrnCd === '02' &&
|
|
item.trigrDvCd ==='01'
|
|
)
|
|
|
|
return adScriptListToObj(mainMblScript)
|
|
}
|
|
/*******************************************
|
|
광고 스크립트 공통 함수 END
|
|
*******************************************/ |