arch-8.x-1.x-dev/modules/compare/assets/js/compare-products.js

modules/compare/assets/js/compare-products.js
/**
 * @file
 * ARCH Compare products JS Behavior.
 */

(function (Drupal, drupalSettings, $, window) {
  'use strict';

  Drupal.behaviors.arch_compare_products = {
    attach: function (context) {
      var $filter = $('.compare-page-filter');
      if (!$filter.length) {
        return;
      }

      if ($filter.hasClass('compare-filter-processed')) {
        return;
      }

      $filter.addClass('compare-filter-processed');

      $filter
        .on('change', function () {
          if (this.value === 'all') {
            // Show everything.
            $('.compare-table .field-value-row').show();
          }
          else if (this.value === 'differences') {
            // Show differences only.
            $('.compare-table .field-value-row').hide();
            $('.compare-table .different-values').show();
          }
          else if (this.value === 'similarities') {
            // Show same values only.
            $('.compare-table .field-value-row').hide();
            $('.compare-table .same-values').show();
          }

          var zebra = 0;
          $('.compare-table .field-value-row:visible').each(function () {
            if ($(this).prev().hasClass('group-header-row')) {
              zebra = 0;
            }

            $(this)
              .removeClass('even')
              .removeClass('odd')
              .addClass((zebra++ % 2 === 0) ? 'even' : 'odd')
            ;
          });
        })
      ;
    }
  };

})(Drupal, drupalSettings, jQuery, window);

Главная | Обратная связь

drupal hosting | друпал хостинг | it patrol .inc