Seçilen Filtreler
{{ SELECTED.TEXT }}
{{ FILTERS.VARIANTS.TYPE1_NAME }}
{{ FILTERS.VARIANTS.TYPE2_NAME }}
',
identifier: 'product_id',
withVat: '1',
currency: window.CURRENCY === 'TL' ? 'TRY' : window.CURRENCY,
member: {
fn: window.MEMBER_INFO.FIRST_NAME,
ln: window.MEMBER_INFO.LAST_NAME,
em: window.MEMBER_INFO.MAIL_HASH_SHA,
external_id: window.MEMBER_INFO.ID > 0 ? window.MEMBER_INFO.ID : null,
ge: window.MEMBER_INFO.GENDER,
db: window.MEMBER_INFO.BIRTH_DATE,
country: window.MEMBER_INFO.MEMBER_COUNTRY,
ct: window.MEMBER_INFO.MEMBER_CITY,
zp: window.MEMBER_INFO.MEMBER_ZIP_CODE,
ph : window.MEMBER_INFO.PHONE,
},
keyMap: {
'product': {
'product_code': 'code',
'product_id': 'id',
},
'cart': {
'product_code': 'PRODUCT_CODE',
'product_id': 'ID',
},
'order': {
'product_code': 'code',
'product_id': 'identifier',
},
'category': {
'product_code': 'code',
'product_id': 'id',
}
},
track: (pageType, obj) => {
fbq('track', pageType, {...obj}, {eventID: pageType + '_' + window.FB_EVENT_ID});
},
setMember: () => {
for (const [key, value] of Object.entries(FACEBOOK_APP.member)) {
if (value === undefined || value === '') {
FACEBOOK_APP.member[key] = null;
}
}
if (FACEBOOK_APP.member.ph !== null){
FACEBOOK_APP.member.ph = FACEBOOK_APP.member.ph.replace(/\D/g, '')
}
},
run: () => {
if (window.PAGE_TYPE === 'other' && document.location.href.indexOf('&mail=') > 0) {
return false;
}
FACEBOOK_APP.setMember();
FACEBOOK_APP.setFbclid();
FACEBOOK_APP.withVat = FACEBOOK_APP.withVat === '1';
// FACEBOOK_APP.pixelId olarak almadık, extension hata fırlatıyor.
fbq('init', '
', FACEBOOK_APP.member);
fbq('track', 'PageView', {}, {eventID: 'PageView_' + window.FB_EVENT_ID});
FACEBOOK_APP.productDetail();
FACEBOOK_APP.pageCategory();
FACEBOOK_APP.pageSearch();
FACEBOOK_APP.orderApprove();
FACEBOOK_APP.addToCart();
FACEBOOK_APP.orderPayment();
FACEBOOK_APP.wishList();
FACEBOOK_APP.pageCart();
FACEBOOK_APP.sign();
},
setFbclid: () => {
const params = new URL(location.href).searchParams;
const urlFbclid = params.get("fbclid");
if (urlFbclid) {
TSOFT_APPS_LIBS.set.cookie('fbclid', urlFbclid, 90)
TSOFT_APPS_LIBS.set.cookie('fbclid_time', Date.now(), 90)
TSOFT_APPS_LIBS.set.cookie('fbp_random_key', Math.floor(1000000000 + Math.random() * 9000000000), 90)
}
const fbclid = TSOFT_APPS_LIBS.get.cookie('fbclid')
if (fbclid) {
FACEBOOK_APP.member.fbc = "fb.1." + TSOFT_APPS_LIBS.get.cookie('fbclid_time') + "." + fbclid;
FACEBOOK_APP.member.fbp = "fb.1." + TSOFT_APPS_LIBS.get.cookie('fbclid_time') + "." + TSOFT_APPS_LIBS.get.cookie('fbp_random_key');
}
},
productDetail: () => {
TSOFT_APPS.product.detail.callback.push(function () {
let products = window.PRODUCT_DATA[0];
const pkey = FACEBOOK_APP.keyMap['product'][FACEBOOK_APP.identifier];
let ckey = (pkey === 'code' && typeof products.subproduct_code != 'undefined' && products.subproduct_code != '') ? 'subproduct_code' : pkey;
FACEBOOK_APP.track('ViewContent', {
content_name: products.name,
content_category: products.category,
content_ids: [products[ckey]],
content_type: 'product',
value: FACEBOOK_APP.withVat ? products.total_sale_price : products.sale_price,
currency: FACEBOOK_APP.currency
}
);
})
},
pageCategory: () => {
TSOFT_APPS.page.category.callback.push((category, products) => {
FACEBOOK_APP.track('ViewCategory', {
content_name: category.name,
content_type: 'product',
content_ids: products.slice(0, 20).map((product) => {
return product[FACEBOOK_APP.keyMap['category'][FACEBOOK_APP.identifier]];
}),
}
);
})
},
pageSearch: () => {
TSOFT_APPS.page.search.callback.push((searchWord, product) => {
FACEBOOK_APP.track('Search', {search_string: searchWord});
})
},
orderApprove: () => {
TsoftAppsOrderApproveCallback(function (approveOrderData) {
const pkey = FACEBOOK_APP.keyMap['order'][FACEBOOK_APP.identifier];
let productArr = [];
let contentArr = approveOrderData.products.map((product) => {
let ckey = (pkey === 'code' && typeof product.subproduct_code != 'undefined' && product.subproduct_code !== '') ? 'subproduct_code' : pkey;
productArr.push(product[ckey]);
return {
id: product[ckey],
quantity: product.quantity,
}
});
FACEBOOK_APP.track('Purchase', {
value: (FACEBOOK_APP.withVat ? approveOrderData.amount : approveOrderData.amount_without_vat).toFixed(2),
currency: approveOrderData.currency === 'TL' ? 'TRY' : approveOrderData.currency,
content_type: 'product',
content_ids: productArr,
contents: contentArr
});
})
},
addToCart: () => {
TSOFT_APPS.cart.callback.add.push(function (r) {
const pkey = FACEBOOK_APP.keyMap['cart'][FACEBOOK_APP.identifier];
let results = Array.isArray(r) ? r : [r];
results = results.filter((result) => {
return !([-1, 0].includes(result.status))
});
results.forEach((result) => {
FACEBOOK_APP.track('AddToCart', {
contents: [{
id: result.addedProduct[pkey === 'PRODUCT_CODE' ? 'sku' : 'id'],
quantity: result.quantity,
}],
content_ids: [result.addedProduct[pkey === 'PRODUCT_CODE' ? 'sku' : 'id']],
content_type: 'product',
value: parseFloat(result.addedProduct.price).toFixed(2), // 1.500,2 => 1500.20
// value: parseFloat(result.totalPrice.replace('.', '').replace(',', '.')).toFixed(2), // 1.500,2 => 1500.20
currency: FACEBOOK_APP.currency
});
});
})
},
orderPayment: () => {
TsoftAppsOrderPaymentCallback(async function (params) {
const pkey = FACEBOOK_APP.keyMap['cart'][FACEBOOK_APP.identifier];
await TSOFT_APPS.get.cart.load();
const cartLoad = await TSOFT_APPS.get.result.cart.load;
if (cartLoad === null || cartLoad.PRODUCTS.length === 0) {
return false;
}
const categories = cartLoad.PRODUCTS.map((product) => {
return product.CATEGORY_NAME;
});
const contents = cartLoad.PRODUCTS.map((product) => {
const ckey = (pkey === 'PRODUCT_CODE' && typeof product.VARIANT_CODE != 'undefined' && product.VARIANT_CODE !== '') ? 'VARIANT_CODE' : pkey;
return {
id: product[ckey],
quantity: product.COUNT
};
});
FACEBOOK_APP.track('AddPaymentInfo', {
contents,
currency: cartLoad.TARGET_CURRENCY === 'TL' ? 'TRY' : cartLoad.TARGET_CURRENCY,
value: (FACEBOOK_APP.withVat ? cartLoad.PRICE_GENERAL : cartLoad.PRICE_TOTAL_SELL).toFixed(2),
content_category: categories.toString(),
content_type: 'product',
});
})
},
wishList: () => {
TSOFT_APPS.product.wishList.callback.add.push(function (r) {
let results = Array.isArray(r) ? r : [r];
results = results.filter((result) => {
return !([-1, 0].includes(result.status))
});
results.forEach((result) => {
const priceValue = parseFloat(result.data?.price?.replace(',', '') ?? '0').toFixed(2);
FACEBOOK_APP.track('AddToWishlist', {
content_ids: [result.data?.code],
content_type: 'product',
value: priceValue,
currency: FACEBOOK_APP.currency
});
});
})
},
pageCart: () => {
TSOFT_APPS.page.cart.callback.push(async function (data) {
const pkey = FACEBOOK_APP.keyMap['cart'][FACEBOOK_APP.identifier];
await TSOFT_APPS.get.cart.load();
const cartLoad = await TSOFT_APPS.get.result.cart.load;
if (cartLoad === null || cartLoad.PRODUCTS.length === 0) {
return false;
}
const categories = cartLoad.PRODUCTS.map((product) => {
return product.CATEGORY_NAME;
});
const content_ids = [];
const contents = cartLoad.PRODUCTS.map((product) => {
const ckey = (pkey === 'PRODUCT_CODE' && typeof product.VARIANT_CODE != 'undefined' && product.VARIANT_CODE !== '') ? 'VARIANT_CODE' : pkey;
content_ids.push(product[ckey]);
return {
id: product[ckey],
quantity: product.COUNT
};
});
FACEBOOK_APP.track('InitiateCheckout', {
contents,
content_ids,
currency: (cartLoad.TARGET_CURRENCY === 'TL' ? 'TRY' : cartLoad.TARGET_CURRENCY),
value: (FACEBOOK_APP.withVat ? cartLoad.PRICE_GENERAL : cartLoad.PRICE_TOTAL_SELL).toFixed(2),
num_items: cartLoad.PRODUCTS.length,
content_category: categories.toString(),
content_type: 'product',
});
})
},
sign: () => {
if (window.PAGE_TYPE === 'memberConfirmation'){
FACEBOOK_APP.track('CompleteRegistration', {
status: true,
currency: FACEBOOK_APP.currency,
value: '0.00'
});
}
}
}
console.log("LOG", FACEBOOK_APP.pixelId)
FACEBOOK_APP.run();