media_library_extend_crowdriff-1.x-dev/js/crowdriff.media_library.js

js/crowdriff.media_library.js
(function ($, Drupal) {
  Drupal.behaviors.media_library_extend_crowdriff.media_library = {
    attach: function (context, settings) {
      // No results messaging.
      let $media_library_extend_form = $('#media-library-extend-form-content');
      let total_items = 0;
      $('.js-media-library-item:visible', $media_library_extend_form).each(function () {
        if ($(this).hasClass('js-click-to-select')) {
          total_items++;
        }
      });
      $('.media-library__no-assets', $media_library_extend_form).remove();
      if (total_items) {
        $('.js-media-library-extend-pager', $media_library_extend_form).show();
      } else {
        $media_library_extend_form.prepend('<p class="media-library__no-assets">' + Drupal.t('No assets found. Please try adjusting filters.') + '</p>');
        $('.js-media-library-extend-pager', $media_library_extend_form).hide();
      }

      // Check for max and current selections.
      let currentSelection = Drupal.MediaLibrary.currentSelection;
      // Current number of selections matches remaining selections.
      // Disable any further selections.
      if (settings.media_library.selection_remaining && settings.media_library.selection_remaining === currentSelection.length) {
        let $form = $('.js-media-library-views-form, .js-media-library-add-form', context);
        if (!$form.length) {
          return;
        }
        // Get media items that are not checked. Disable remaining.
        let $mediaItems = $('.js-media-library-item input[type="checkbox"]', $form);
        $mediaItems.not(':checked').prop('disabled', true).closest('.js-media-library-item').addClass('media-library-item--disabled');
      }
    }
  };
}(jQuery, Drupal));

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

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