;(function($) {

	/**
	 * dataLayer - данные для передачи в GA4
	 **/

	var dataLayer = window.dataLayer || [];
	var pagetype = window.pagetype || "";

	console.log("dataLayer.js pagetype="+pagetype);

	switch(pagetype){
		case 'home':
			dataLayer.push({
				prodid:[''],
				pageType: 'Home',
				list: region_id,
				totalvalue: ''
			});
			break;

		case 'category':
			dataLayer.push({
				prodid:[''],
				pageType: 'Category',
				pageId: pageid,
				list: region_id,
				totalvalue: ''
			});
			break;

		case 'search':
			dataLayer.push({
				prodid:[''],
				pageType: 'Search',
				rtbprods: rtbprods,
				vkprods: vkprods,
				list: region_id,
				totalvalue: ''
			});
			break;

		case 'product':
			dataLayer.push({ ecommerce: null });
			dataLayer.push({
				prodid:[productid],
				pageType: 'Product',
				pageId: pageid,
				list: region_id,
				totalvalue: pricenum,
				event: "view_item",
				ecommerce: {
					items: [{
						item_id: productid,
						item_name: productname,
						price: pricenum,
						item_brand: manufacturername,
						item_category: categoryname,
					}]
				}
			});
			break;

		case 'cart':
			console.log("dataLayer.js ecommerce begin_checkout");
			dataLayer.push({ ecommerce: null });
			dataLayer.push({
				pageType: carttype,
				list: region_id,
				totalvalue: fullsumm,
				productids: productid,
				event: "begin_checkout",
				ecommerce: {
					items: prods_dataLayer
				}
			});
			break;

		case 'purchase':
				dataLayer.push({ ecommerce: null });
				dataLayer.push({
					prodid: productid,
					rtbprods: rtbprods,
					vkprods: vkprods,
					pageType: 'Purchase',
					list: region_id,
					totalvalue: totalvalue,
					ordernumber: ordernumber,
				});
			
			console.log("creat dataLayer for purchase");
			break;
	}

	if($("#productpage").length){
		$(".btn-buy, .btn-oneclickbuy").on('click', function(e){
			console.log("dataLayer.js ecommerce add");
			dataLayer.push({ ecommerce: null });
			dataLayer.push({
				event: "add_to_cart",
				ecommerce: {
					items: [{
						item_id: $(this).data("productid"),
						item_name: productname,
						price: $(this).data("price"),
						item_brand: manufacturername,
						item_category: categoryname,
						quantity: 1
					}]
				}
			});
		});
	}

	var eventIndex = 0;
	window.dataLayer.push = function(e) {
		Array.prototype.push.call(window.dataLayer, e);
		
		window.dataLayer.forEach(function(item, index){
			if(index >= eventIndex){
				if (typeof item === 'object' && item.event == 'fl_collected_email' && !!item.number){
					var data = {
						yr_bx24_title: 'Форма floctory (TEST)',
						yr_bx24_phone: item.number,
					};
					$.post('/bitrix24?task=addLid', data, function(html){});
				}
			}
		});

		eventIndex = window.dataLayer.length;
	};

}(jQuery));