1. JavaScript / Говнокод #23557

    0

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    57. 57
    58. 58
    59. 59
    60. 60
    61. 61
    62. 62
    63. 63
    64. 64
    65. 65
    66. 66
    67. 67
    68. 68
    69. 69
    70. 70
    71. 71
    72. 72
    73. 73
    74. 74
    75. 75
    76. 76
    77. 77
    78. 78
    79. 79
    80. 80
    81. 81
    //функция возвращает название списка товара для аналитики
        getItemListName: function(obj) {
            obj = $(obj);
            var list = 'other';
            if (obj.parents('.AddedToCart__box--showcase').length > 0) {
                list = 'paneAddToCart';
            } else if (obj.parents('.slider').length > 0
                && obj.parents('.slider').find('.sliderHeader').html() == 'Лучшая цена') {
                list = 'paneBestPrice';
            } else if (obj.parents('.slider').length > 0
                && obj.parents('.slider').find('.sliderHeader').html() == 'Цена недели') {
                list = 'paneWeekPrice';
            } else if (obj.parents('.slider').length > 0
                && obj.parents('.slider').find('.sliderHeader').html() == 'Акционные товары') {
                list = 'panePromo';
            } else if (obj.parents('.slider').length > 0
                && obj.parents('.slider').find('.sliderHeader').html() == 'Популярные товары'
                && $('body').hasClass('Page--itemCard')) {
                list = 'panePopDetail';
            } else if (obj.parents('.slider').length > 0
                && obj.parents('.slider').find('.sliderHeader').html() == 'Популярные товары'
                && document.location.pathname.indexOf('/personal/cart/') >= 0) {
                list = 'panePopCart';
            } else if (obj.parents('.slider').length > 0
                && obj.parents('.slider').find('.sliderHeader').html() == 'Популярные товары'
                && $('.Rubric--category').length > 0) {
                list = 'panePopRubrics';
            } else if (obj.parents('.slider').length > 0
                && obj.parents('.slider').find('.sliderHeader').html() == 'Популярные товары') {
                list = 'panePopCatalog';
            } else if (obj.parents('.relatedItem').length > 0
                && obj.parents('.relatedItem').find('.relatedItemsHeader').html() == 'Сопутствующий товар') {
                list = 'relatedCart';
            } else if (obj.parents('.analogues').length > 0 
                && document.location.search.indexOf('REMOVE_CODE') >= 0) {
                list = 'replacements';
            } else if (obj.parents('.analogues').length > 0) {
                list = 'analog';
            } else if (obj.parents('.consumables').length > 0) {
                list = 'consumables';
            } else if (document.location.pathname.indexOf('/search/') >= 0) {
                list = 'search';
            } else if (document.location.pathname.indexOf('/promo/actions/') >= 0) {
                list = 'promo';
            } else if (document.location.pathname.indexOf('/personal/favorite/') >= 0) {
                list = 'favorite';
            } else if (document.location.pathname.indexOf('/personal/remind/') >= 0) {
                list = 'remind';
            } else if (document.location.pathname.indexOf('/personal/order/') >= 0) {
                if (document.location.href.indexOf('plist=Y') >= 0) {
                    list = 'allMyOrder';
                } else {
                    list = 'myOrder';
                }
            } else if (document.location.pathname.indexOf('/services/code/') >= 0) {
                list = 'orderByCode';
            } else if (document.location.pathname.indexOf('/catalog/compare/') >= 0) {
                list = 'compare';
            } else if (document.location.pathname.indexOf('/services/cartridges/') >= 0) {
                list = 'cartridge';
            } else if (document.location.pathname.indexOf('/promo/best_price/') >= 0) {
                list = 'bestPrice';
            } else if (document.location.pathname.indexOf('/promo/sale/') >= 0) {
                list = 'sale';
            } else if (document.location.pathname.indexOf('/catalog/novelty/') >= 0) {
                list = 'novelty';
            } else if (document.location.pathname.indexOf('/services/sets/') >= 0) {
                list = 'collections';
            } else if (document.location.pathname.indexOf('/catalog/brands/') >= 0) {
                list = 'brands';
            } else if (obj.parents('.listItemsContainer').length > 0
                && document.location.search.indexOf('REMOVE_CODE') >= 0) {
                list = 'replacements';
            } else if (obj.parents('.listItemsContainer').length > 0) {
                list = 'catalog';
            } else if ($('body').hasClass('Page--itemCard')) {
                list = 'detail';
            }
    
            return list;
        },

    Объект-обертка над Гугл аналитикой
    Написано старшим программистом

    Запостил: _copy_of, 20 Ноября 2017

    Комментарии (4) RSS

    • На одном из крупнейших магазинов товаров для дома и офиса
      Ответить
    • Врятли это говно, js сам по себе с убогими возможностями
      Ответить
    • и теперь поменяем название класса в разметке, и получаем танцы с бубном
      Ответить

    Добавить комментарий