PageSourceSearch

https://gumrussia.com/local/templates/.default/js/gtm-events.js

js gumrussia.com collected 2026-10-02 06:41:21 UTC 34,788 bytes, 781 lines download raw bytes

1(function($){
2    var jBody = $('body');
3    var dataLayer = dataLayer || [];
4    if(typeof GTM_portalName == 'undefined'){
5        GTM_portalName = '';
6    }
7    window['GTM'] = {
8        onUserAuthorized : function(){
9            // console.log('onUserAuthorized');
10            dataLayer.push({
11                'event':'OWOX',
12                'eventCategory':'Interactions',
13                'eventAction':'click',
14                'eventLabel':'signIn'
15            });
16        },
17        onUserSubscribed : function(){
18            // console.log('onUserSubscribed');
19            dataLayer.push({
20                'event':'OWOX',
21                'eventCategory':'Conversions',
22                'eventAction':'click',
23                'eventLabel':'subscribe',
24                'eventContent':'subscribe'
25            });
26        },
27        onUserSubscribedPrice : function(){
28            // console.log('onUserSubscribedPrice');
29            dataLayer.push({
30                'event':'OWOX',
31                'eventCategory':'Conversions',
32                'eventAction':'click',
33                'eventLabel':'subscribe',
34                'eventContent':'price change'
35            });
36        },
37        onUserRegistered : function(){
38            // console.log('onUserRegistered');
39            dataLayer.push({
40                'event':'OWOX',
41                'eventCategory':'Conversions',
42                'eventAction':'click',
43                'eventLabel':'signup'
44            });
45        },
46
47        onCancelOrder : function(orderID){
48            if(typeof orderID != "undefined"){
49                dataLayer.push({
50                    'event':'OWOX',
51                    'eventCategory':'Interactions',
52                    'eventAction':'click',
53                    'eventLabel':'refund',
54                    'eventContent': orderID
55                });
56            }
57        },
58        onUserLogout : function(){
59            // console.log('onUserLogout');
60            dataLayer.push({
61                'event':'OWOX',
62                'eventCategory':'Interactions',
63                'eventAction':'click',
64                'eventLabel':'signOut'
65            });
66        },
67        onSimpleClick : function($type){
68            // console.log('onSimpleClick');
69            dataLayer.push({
70                'event':'OWOX',
71                'eventCategory':'Interactions',
72                'eventAction':'click',
73                'eventLabel':$type
74            });
75        },
76        onSearch : function(query){
77            // console.log('onSearch');
78            dataLayer.push({
79                'event':'OWOX',
80                'eventCategory':'Interactions',
81                'eventAction':'click',
82                'eventLabel':'search',
83                'eventContent': query || ''
84            });
85        },
86        onBannerClick : function($banner){
87            $banner = $($banner);
88            dataLayer.push({
89                'event':'OWOX',
90                'eventCategory':'Interactions',
91                'eventAction':'click',
92                'eventLabel':'banner',
93                'ecommerce':{
94                    'promoClick':{
95                        'promotions':[{
96                            'id':""+$banner.data('promo-id'),
97                            'name':$banner.data('promo-name'),
98                            // 'creative':$banner.data('promo-creative'),
99                            'position':$banner.data('promo-position'),
100                        }]
101                    },
102                }
103            });
104        },
105
106        onAskQuestion : function(askLink){
107            var eventLabel = $(askLink).data("gtm-type");
108            dataLayer.push({
109                'event':'OWOX',
110                'eventCategory':'Interactions',
111                'eventAction':'click',
112                'eventLabel':eventLabel,
113            });
114        },
115
116        onSocialClick : function($link){
117            $link = $($link);
118            dataLayer.push({
119                'event':'OWOX',
120                'eventCategory':'Social',
121                'eventAction':'click',
122                'eventContext':$link.attr('href'),
123                'eventLabel':$link.data('gtm-label')
124            });
125        },
126        onEnterCoupon : function(){
127            // console.log('onEnterCoupon');
128            dataLayer.push({
129                'event':'OWOX',
130                'eventCategory':'Interactions',
131                'eventAction':'click',
132                'eventLabel':'promo'
133            });
134        },
135        onFavoriteToggle : function($link,$new_state){
136            // console.log('onFavoriteToggle');
137            $link = $($link);
138            var impressionBlock = $link.closest('.js-gtm-impression');
139            if(!impressionBlock.length){
140                return;
141            }
142            dataLayer.push({
143                'event':'OWOX',
144                'eventCategory':'Conversions',
145                'eventAction':$new_state?'add':'remove',
146                'eventLabel':'wishlist',
147                //
148                'eventPosition':impressionBlock.data('impression-position'),
149                'eventLocation':impressionBlock.data('impression-location')?impressionBlock.data('impression-location'):GTM_pageType,
150                'eventPortalName':GTM_portalName,
151                'eventCategoryName':impressionBlock.data('impression-category'),
152                'eventCategoryId':""+impressionBlock.data('impression-categoryid'),
153                'eventProductName':impressionBlock.data('impression-name'),
154                'eventProductId':""+impressionBlock.data('impression-id'),
155                'eventProductPrice':""+impressionBlock.data('impression-price')
156            });
157        },
158        onFilterToggle : function($label,$new_state){
159            // console.log('onFilterToggle');
160            dataLayer.push({
161                'event':'OWOX',
162                'eventCategory':'Interactions',
163                'eventAction':'click',
164                'eventLabel':$new_state?'filterOn':'filterOff',
165                'eventContent':$label
166            });
167        },
168        onSorted : function($label){
169            // console.log('onSorted');
170            dataLayer.push({
171                'event':'OWOX',
172                'eventCategory':'Interactions',
173                'eventAction':'click',
174                'eventLabel':'sort',
175                'eventContent':$label
176            });
177        },
178        onImpressionLinkClick : function($link){
179            // console.log('onImpressionLinkClick');
180            $link = $($link);
181            var impressionBlock = $link.closest('.js-gtm-impression');
182            if(!impressionBlock.length){
183                return;
184            }
185
186            dataLayer.push({
187                'event':'OWOX',
188                'eventCategory':'Interactions',
189                'eventAction':'open',
190                'eventLabel':'productPage',
191                //
192                'eventPosition':impressionBlock.data('impression-position'),
193                'eventLocation':impressionBlock.data('impression-location')?impressionBlock.data('impression-location'):(typeof GTM_pageType != "undefined" ? GTM_pageType : ""),
194                'eventPortalName':(GTM_portalName != null ? GTM_portalName : ''),
195                'eventCategoryName':impressionBlock.data('impression-category'),
196                'eventCategoryId':""+impressionBlock.data('impression-categoryid'),
197                'eventProductName':impressionBlock.data('impression-name'),
198                'eventProductId':""+impressionBlock.data('impression-id'),
199                'eventProductPrice':""+impressionBlock.data('impression-price'),
200                //
201                'ecommerce':{
202                    'currencyCode':GTM_currencyCode,
203                    'click':{
204                        'actionField':{
205                            'list':impressionBlock.data('impression-list'),
206                        },
207                        'products':[{
208                            'id':""+impressionBlock.data('impression-id'),
209                            'name':impressionBlock.data('impression-name'),
210                            'category':impressionBlock.data('impression-category'),
211                            'brand':impressionBlock.data('impression-brand'),
212                            'position':impressionBlock.data('impression-position'),
213                            'variant':impressionBlock.data('impression-variant'),
214                            'dimension7':""+impressionBlock.data('impression-dimension7'),
215                            'dimension8':""+impressionBlock.data('impression-dimension8'),
216                            'price':""+impressionBlock.data('impression-price'),
217                            'dimension22':""+impressionBlock.data('impression-dimension22'),
218                            'metric1':""+impressionBlock.data('impression-metric1'),
219                        }]
220                    }
221                }
222            });
223
224
225        },
226        onToCartLinkClick : function($link){
227            // console.log('onToCartLinkClick');
228            $link = $($link);
229            var impressionBlock = $link.closest('.js-gtm-impression');
230            if(!impressionBlock.length){
231                return;
232            }
233            dataLayer.push({
234                'event':'OWOX',
235                'eventCategory':'Conversions',
236                'eventAction':'add',
237                'eventLabel':'cart',
238                //
239                'eventPosition':impressionBlock.data('impression-position'),
240                'eventLocation':impressionBlock.data('impression-location')?impressionBlock.data('impression-location'):(typeof GTM_pageType != "undefined" ? GTM_pageType : ""),
241                'eventPortalName':GTM_portalName,
242                'eventCategoryName':impressionBlock.data('impression-category'),
243                'eventCategoryId':""+impressionBlock.data('impression-categoryid'),
244                'eventProductName':impressionBlock.data('impression-name'),
245                'eventProductId':""+impressionBlock.data('impression-id'),
246                'eventProductPrice':""+impressionBlock.data('impression-price'),
247                //
248                'ecommerce':{
249                    'currencyCode':GTM_currencyCode,
250                    'add':{
251                        'actionField':{
252                            'list':impressionBlock.data('impression-list'),
253                        },
254                        'products':[{
255                            'id':""+impressionBlock.data('impression-id'),
256                            'name':impressionBlock.data('impression-name'),
257                            'category':impressionBlock.data('impression-category'),
258                            'brand':impressionBlock.data('impression-brand'),
259                            'position':impressionBlock.data('impression-position'),
260                            'variant':impressionBlock.data('impression-variant'),
261                            'dimension7':""+impressionBlock.data('impression-dimension7'),
262                            'dimension8':""+$link.data('impression-dimension8'), ///////////// $link
263                            'price':""+impressionBlock.data('impression-price'),
264                            'dimension21':""+impressionBlock.data('impression-dimension21'),
265                            'dimension22':""+impressionBlock.data('impression-dimension22'),
266                            'metric1':""+impressionBlock.data('impression-metric1'),
267                            'quantity':1, // TODO : выкусывать из ссылки
268                        }]
269                    }
270                }
271            });
272        },
273        onQuickViewLinkClick : function($link){
274            // console.log('onQuickViewLinkClick');
275            $link = $($link);
276            var impressionBlock = $link.closest('.js-gtm-impression');
277            if(!impressionBlock.length){
278                return;
279            }
280            dataLayer.push({
281                'event':'OWOX',
282                'eventCategory':'Interactions',
283                'eventAction':'click',
284                'eventLabel':'quickView',
285                //
286                'eventPosition':impressionBlock.data('impression-position'),
287                'eventLocation':impressionBlock.data('impression-location')?impressionBlock.data('impression-location'):(typeof GTM_pageType != "undefined" ? GTM_pageType : ""),
288                'eventCategoryName':impressionBlock.data('impression-category'),
289                'eventCategoryId':""+impressionBlock.data('impression-categoryid'),
290                'eventProductName':impressionBlock.data('impression-name'),
291                'eventProductId':""+impressionBlock.data('impression-id'),
292                'eventProductPrice':""+impressionBlock.data('impression-price'),
293
294                //
295                'ecommerce':{
296                    'currencyCode':GTM_currencyCode,
297                    'click':{
298                        'actionField':{
299                            'list':impressionBlock.data('impression-list'),
300                        },
301                        'products':[{
302                            'id':""+impressionBlock.data('impression-id'),
303                            'name':impressionBlock.data('impression-name'),
304                            'category':impressionBlock.data('impression-category'),
305                            'brand':impressionBlock.data('impression-brand'),
306                            'position':impressionBlock.data('impression-position'),
307                            'variant':impressionBlock.data('impression-variant'),
308                            'dimension7':""+impressionBlock.data('impression-dimension7'),
309                            'price':""+impressionBlock.data('impression-price'),
310                        }]
311                    }
312                }
313            });
314        },
315        onQuickViewShow : function($link,$success){
316            // console.log('onQuickViewShow');
317            $link = $($link);
318            var impressionBlock = $link.closest('.js-gtm-impression');
319            if(!impressionBlock.length){
320                return;
321            }
322            dataLayer.push({
323                'event':'OWOX',
324                'eventCategory':'Non-Interactions',
325                'eventAction':'open',
326                'eventLabel':'quickView',
327                'eventContent':$success?'success':'fail',
328                //
329                'eventPosition':impressionBlock.data('impression-position'),
330                'eventLocation':impressionBlock.data('impression-location')?impressionBlock.data('impression-location'):(typeof GTM_pageType != "undefined" ? GTM_pageType : ""),
331                'eventCategoryName':impressionBlock.data('impression-category'),
332                'eventCategoryId':""+impressionBlock.data('impression-categoryid'),
333                'eventProductName':impressionBlock.data('impression-name'),
334                'eventProductId':""+impressionBlock.data('impression-id'),
335                'eventProductPrice':""+impressionBlock.data('impression-price'),
336                //
337                'ecommerce':{
338                    'currencyCode':GTM_currencyCode,
339                    'detail':{
340                        'actionField':{
341                            'list':impressionBlock.data('impression-list'),
342                        },
343                        'products':[{
344                            'id':""+impressionBlock.data('impression-id'),
345                            'name':impressionBlock.data('impression-name'),
346                            'category':impressionBlock.data('impression-category'),
347                            'brand':impressionBlock.data('impression-brand'),
348                            'position':impressionBlock.data('impression-position'),
349                            'variant':impressionBlock.data('impression-variant'),
350                            'dimension7':""+impressionBlock.data('impression-dimension7'),
351                            'price':""+impressionBlock.data('impression-price'),
352                        }]
353                    }
354                }
355            });
356        },
357        onQuickBuyLinkClick : function($link,$success){
358            // console.log('onQuickBuyLinkClick');
359            $link = $($link);
360            var impressionBlock = $link.closest('.js-gtm-impression');
361            if(!impressionBlock.length){
362                return;
363            }
364            dataLayer.push({
365                'event':'OWOX',
366                'eventCategory':'Conversions',
367                'eventAction':'click',
368                'eventLabel':'makeOrder',
369                'eventContext':'1 клик',
370                //
371                'eventPosition':impressionBlock.data('impression-position'),
372                'eventLocation':impressionBlock.data('impression-location')?impressionBlock.data('impression-location'):GTM_pageType,
373                'eventCategoryName':impressionBlock.data('impression-category'),
374                'eventCategoryId':""+impressionBlock.data('impression-categoryid'),
375                'eventProductName':impressionBlock.data('impression-name'),
376                'eventProductId':""+impressionBlock.data('impression-id'),
377                'eventProductPrice':""+impressionBlock.data('impression-price'),
378                //
379                'ecommerce':{
380                    'currencyCode':GTM_currencyCode,
381                    'add':{
382                        'actionField':{
383                            'list':impressionBlock.data('impression-list'),
384                        },
385                        'products':[{
386                            'id':""+impressionBlock.data('impression-id'),
387                            'name':impressionBlock.data('impression-name'),
388                            'category':impressionBlock.data('impression-category'),
389                            'brand':impressionBlock.data('impression-brand'),
390                            'position':impressionBlock.data('impression-position'),
391                            'variant':impressionBlock.data('impression-variant'),
392                            'dimension7':""+impressionBlock.data('impression-dimension7'),
393                            'dimension8':""+$link.data('impression-dimension8'), //////
393/////// $link
394                            'price':""+impressionBlock.data('impression-price'),
395                        }]
396                    }
397                }
398            });
399        },
400        onProductTabSwitch : function(title,impressionBlock){
401            // console.log('onProductTabSwitch');
402            dataLayer.push({
403                'event':'OWOX',
404                'eventCategory':'Interactions',
405                'eventAction':'switch',
406                'eventLabel':'tab',
407                'eventContent': title,
408                'eventProductId':""+impressionBlock.data('impression-id'),
409                'eventProductPrice':""+impressionBlock.data('impression-price'),
410            });
411        },
412        onCartRemoveLinkClick : function($link){
413            // console.log('onCartRemoveLinkClick');
414            $link = $($link);
415            var impressionBlock = $link.closest('.js-gtm-impression');
416            if(!impressionBlock.length){
417                return;
418            }
419            dataLayer.push({
420                'event':'OWOX',
421                'eventCategory':'Interactions',
422                'eventAction':'remove',
423                'eventLabel':'cart',
424                //
425                'eventPortalName':GTM_portalName,
426                'eventCategoryName':impressionBlock.data('impression-category'),
427                'eventCategoryId':""+impressionBlock.data('impression-categoryid'),
428                'eventProductName':impressionBlock.data('impression-name'),
429                'eventProductId':""+impressionBlock.data('impression-id'),
430                'eventProductPrice':""+impressionBlock.data('impression-price'),
431                //
432                'ecommerce':{
433                    'currencyCode':GTM_currencyCode,
434                    'remove':{
435                        'actionField':{
436                            'list':'Корзина',
437                        },
438                        'products':[{
439                            'id':""+impressionBlock.data('impression-id'),
440                            'name':impressionBlock.data('impression-name'),
441                            'category':impressionBlock.data('impression-category'),
442                            'brand':impressionBlock.data('impression-brand'),
443                            'position':impressionBlock.data('impression-position'),
444                            'variant':impressionBlock.data('impression-variant'),
445                            'dimension7':""+impressionBlock.data('impression-dimension7'),
446                            'dimension8':""+impressionBlock.data('impression-dimension8'),
447                            'price':""+impressionBlock.data('impression-price'),
448                            'metric1':""+impressionBlock.data('impression-metric1'),
449                            'quantity':1, // TODO : выкусывать из ссылки
450                        }]
451                    }
452                }
453            });
454        },
455        onCartCheckout : function(){
456            // console.log('onCartCheckout');
457            dataLayer.push({
458                'event':'OWOX',
459                'eventCategory':'Conversions',
460                'eventAction':'click',
461                'eventLabel':'makeOrder',
462            });
463        },
464
465        /* Блок Задать вопрос */
466
467        // звонок с сайта
468        onCallFromSiteClick: function(){
469            dataLayer.push({
470                "event": "OWOX",
471                "eventCategory": "Interactions",
472                "eventAction": "click",
473                "eventLabel": "zvonok"
474            });
475        },
476
477        // online-консультант
478        onOnlineConsultantClick: function(){
479            dataLayer.push({
480                "event": "OWOX",
481                "eventCategory": "Interactions",
482                "eventAction": "click",
483                "eventLabel": "online-consultant"
484            });
485        },
486
487        // Написать письмо
488        onWriteLetterClick: function(){
489            dataLayer.push({
490                "event": "OWOX",
491                "eventCategory": "Interactions",
492                "eventAction": "click",
493                "eventLabel": "letter"
494            });
495        },
496
497        detailPageAction: function(el, action, size){
498            if (typeof console != 'undefined') {
499                console.info('detailPageAction');
500            }
501            if (typeof action == 'undefined') {
502                action = 'click';
503            }
504            if (typeof size == 'undefined') {
505                size = '';
506            }
507
508            impressionBlock = $(el).closest('body').find('.js-gtm-impression');
509            dataLayer.push({
510                'event': 'I-Media',
511                'eventCategory': 'Interactions',
512                'eventAction': action,
513                'eventLabel': 'productPage',
514                //
515                'eventPosition': null,
516                //(название блока или SearchResults, Catalog, ProductPage, ComparisonList, WishList,Выбор Стилиста)
517                'eventLocation': impressionBlock.data('impression-location') ? impressionBlock.data('impression-location') : (typeof GTM_pageType != "undefined" ? GTM_pageType : ""),
518
519                'eventPortalName': GTM_portalName, //"(название раздела товара)",
520                'eventCategoryName': "" + impressionBlock.data('impression-categoryName'), //"(название категории товара)",
521
522                'eventCategoryId': "" + impressionBlock.data('impression-categoryid'), //(Id категории товара)
523                'eventProductName': impressionBlock.data('impression-name'), //(название товара)
524                'eventProductId': "" + impressionBlock.data('impression-id'), //(Id товара)
525                'eventProductPrice': "" + impressionBlock.data('impression-price'), //(цена товара)
526
527                //
528                'ecommerce': {
529                    'currencyCode': GTM_currencyCode,
530                    'click': {
531                        'actionField': {
532                            'list':impressionBlock.data('impression-list'),
533                        },
534                        'products': [{
535                            'id': "" + impressionBlock.data('impression-id'),
536                            'name': impressionBlock.data('impression-name'),
537                            'category': impressionBlock.data('impression-category'),
538                            'brand': impressionBlock.data('impression-brand'),
539                            'position': impressionBlock.data('impression-position'),
540                            'variant': impressionBlock.data('impression-variant'),
541                            'dimension7': "" + impressionBlock.data('impression-dimension7'),
542                            'dimension8': size ? size : "", //(размер товара Eu)
543                            'dimension10': "" + impressionBlock.data('impression-dimension10'), //(% скидки, который предоставляется )
544                            'price': "" + impressionBlock.data('impression-price'),
545                        }]
546                    }
547                }
548            });
549        },
550    };
551
552    window['GTM_FORMS'] = {
553        startTime:0,
554        onSubmitStart:function(){
555            // console.log('onSubmitStart');
556            var form = $(this);
557            var now = new Date().getTime();
558            if(!form.data('first-submit-time')){
559                // первый сабмит
560                form.data('first-submit-time',now);
561                dataLayer.push({
562                    'event':'OWOX_Forms',
563                    'timingCategory':'Forms',
564                    'timingVar':'send',
565                    'timingValue':(now - form.data('first-focus-time')),
566                    'timingLabel':'first',
567                    'eventContent':form.data('gmt-name'),
568                    'eventContext':form.data('first-focus-field')
569                    // 'errorCode':
570                    // 'eventAttemptCount':
571                });
572            }
573            form.data('last-submit-time',now);
574            form.data('submit-count',parseInt(form.data('submit-count')||0)+1);
575        },
576        onSubmitSuccess:function(){
577            // console.log('onSubmitSuccess');
578            var form = $(this);
579            var now = new Date().getTime();
580            // мы только на ответе знаем, что произошел успех, потому и триггер успешного сабмита придется отправлять тут
581            dataLayer.push({
582                'event':'OWOX_Forms',
583                'timingCategory':'Forms',
584                'timingVar':'send',
585                'timingValue':(form.data('last-submit-time') - form.data('first-focus-time')),
586                'timingLabel':'successful',
587                'eventContent':form.data('gmt-name'),
588                'eventContext':form.data('first-focus-field'),
589                // 'errorCode':,
590                'eventAttemptCount':form.data('submit-count')
591            });
592            // и триггер ответа сервера, само собой
593            dataLayer.push({
594                'event':'OWOX_Forms',
595                'timingCategory':'Forms',
596                'timingVar':'response',
597                'timingValue':(now - form.data('first-focus-time')),
598                'timingLabel':'successful',
599                'eventContent':form.data('gmt-name'),
600                // 'eventContext':
601                // 'errorCode':,
602                'eventAttemptCount':form.data('submit-count')
603            });
604            form.data('submit-success-time',now);
605        },
606        onSubmitFail:function(e,$error){
607            // console.log('onSubmitFail');
608            var form = $(this);
609            var now = new Date().getTime();
610            // мы только на ответе знаем, что произошла ошибка, потому и триггер неуспешного сабмита придется отправлять тут
611            dataLayer.push({
612                'event':'OWOX_Forms',
613                'timingCategory':'Forms',
614                'timingVar':'send',
615                'timingValue':(form.data('last-submit-time') - form.data('first-focus-time')),
616                'timingLabel':'unsuccessful',
617                'eventContent':form.data('gmt-name'),
618                'eventContext':form.data('first-focus-field'),
619                'errorCode':$error,
620                'eventAttemptCount':form.data('submit-count')
621            });
622            // и триггер ответа сервера, само собой
623            dataLayer.push({
624                'event':'OWOX_Forms',
625                'timingCategory':'Forms',
626                'timingVar':'response',
627                'timingValue':(now - form.data('first-focus-time')),
628                'timingLabel':'unsuccessful',
629                'eventContent':form.data('gmt-name'),
630                // 'eventContext':
631                'errorCode':$error,
632                'eventAttemptCount':form.data('submit-count')
633            });
634        },
635        onFieldFocus:function(){
636            // console.log('onFieldFocus');
637            var field = $(this);
638            var form = field.closest('.js-gtm-form');
639            var now = new Date().getTime();
640            var fieldName = field.attr('name'); // label ???
641            dataLayer.push({
642                'event':'OWOX_Forms',
643                'timingCategory':'Forms',
644                'timingVar':'focus',
645                'timingValue':(now - GTM_FORMS.startTime),
646                // 'timingLabel':
647                'eventContent':form.data('gmt-name'),
648                'eventContext':fieldName
649                // 'errorCode':
650                // 'eventAttemptCount':
651            });
652            field.data('last-focus-time',now);
653            field.data('last-focus-field',fieldName);
654            if(!form.data('first-focus-time')){
655                form.data('first-focus-time',now);
656                form.data('first-focus-field',fieldName);
657            }
658        },
659        onFieldBlur:function(){
660            // console.log('onFieldBlur');
661            var field = $(this);
662            var form = field.closest('.js-gtm-form');
663            var now = new Date().getTime();
664            dataLayer.push({
665                'event':'OWOX_Forms',
666                'timingCategory':'Forms',
667                'timingVar':'unfocus',
668                'timingValue':(now - field.data('last-focus-time')),
669                // 'timingLabel':
670                'eventContent':form.data('gmt-name'),
671                'eventContext':field.attr('name'), // label ???
672                // 'errorCode':
673                // 'eventAttemptCount':
674            });
675        },
676        onUnload:function(e){
677            // console.log("onUnload");
678            var now = new Date().getTime();
679            // ищем все формы, которые были активированы, но не получили успешного сабмита
680            jBody.find('.js-gtm-form').each(function(){
681                var form = $(this);
682                if(
683                    !form.data('first-focus-time')
684                    ||
685                    form.data('submit-success-time')
686                ){
687                    return;
688                }
689                dataLayer.push({
690                    'event':'OWOX_Forms',
691                    'timingCategory':'Forms',
692                    'timingVar':'leave',
693                    'timingValue':(now - form.data('first-focus-time')),
694                    // 'timingLabel':
695                    'eventContent':form.data('gmt-name'),
696                    // 'eventContext':
697                    // 'errorCode':
698                    // 'eventAttemptCount':
699                });
700            });
701            // console.log(e);
702            // return 'asdasd';
703        },
704        init:function(){
705            this.startTime = (new Date().getTime());
706            jBody.on('submit','.js-gtm-form',this.onSubmitStart);
707            jBody.on('submit-success','.js-gtm-form',this.onSubmitSuccess);
708            jBody.on('submit-fail','.js-gtm-form',this.onSubmitFail);
709            jBody.on('focus','.js-gtm-form input,.js-gtm-form textarea',this.onFieldFocus);
710            jBody.on('blur','.js-gtm-form input,.js-gtm-form textarea',this.onFieldBlur);
711            $(window).on('unload',this.onUnload);
712            window.onbeforeunload = this.onUnload;
713        },
714    };
715    $(document).ready(function(){
716        GTM_FORMS.init();
717
718        // события GTM
719        jBody.on('submit','.js-search-form',function(){
720            var query = $(this).find('input[type=text]').val();
721            GTM.onSearch(query);
722        });
723
724        jBody.on('click','.js-gtm-promo',function(){
725            GTM.onBannerClick(this);
726        });
727
728        jBody.on('click','a.js-gtm-socials',function(){
729            GTM.onSocialClick(this);
730        });
731
732        jBody.on('click','.js-gtm-impression-link',function(){
733            GTM.onImpressionLinkClick(this);
734        });
735
736        jBody.on('click','.js-gtm-to-cart-link',function(){
737            GTM.onToCartLinkClick(this);
738        });
739
740        jBody.on('click','.js-gtm-ask-question',function(){
741            GTM.onAskQuestion(this);
742        });
743
744        jBody.on('click','.js-gtm-quick-view-link',function(){
745            GTM.onQuickViewLinkClick(this);
746        });
747
748        jBody.on('click','.js-gtm-quick-buy-link',function(){
749            GTM.onQuickBuyLinkClick(this);
750        });
751
752        jBody.on('click', '.size-table-block-link', function () {
753            GTM.detailPageAction(this, "table_size");
754        });
755
756        jBody.on('click','.shop-item-accordion-item-title-js',function(){
757            var $link = $(this);
758            if($link.closest('.shop-item-accordion-item').hasClass('active')){
759                return;
760            }
761            var impressionBlock = $link.closest('.js-gtm-impression');
762            GTM.onProductTabSwitch($link.text(),impressionBlock);
763        });
764
765        jBody.on('click','.js-gtm-cart-remove-link',function(){
766            GTM.onCartRemoveLinkClick(this);
767        });
768
769        jBody.on('click','.js-logout-link',function(){
770            GTM.onUserLogout();
771        });
772
773        // общий клас
773с для всех кликовых событий
774        jBody.on('click','.js-gtm-click',function(){
775            GTM.onSimpleClick($(this).data('gtm-type'));
776        });
777    });
778
779
780
781})(jQuery);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.