drowl_media-8.x-2.0-rc0/js/drowl_media.admin.media_library_vbo.js

js/drowl_media.admin.media_library_vbo.js
/**
 * @file
 * This file is only attached, if the "views_bulk_operations/frontUi" library is present on the page.
 * Adds click-selection for media library item checkboxes when using VBO.
 */
(function ($, Drupal) {
  Drupal.behaviors.drowl_media_library_vbo = {
    attach: function (context, settings) {
      // Make VBO act like the core bulk operations (click on the .media-library-item toggles the checkbox)
      $(".vbo-view-form .media-library-item", context).each(function () {
        let $mediaItem = $(this);
        let $vboSelectionTrigger = $mediaItem.find(
          ".media-library-item__preview-wrapper:first"
        );
        let $vboCheckbox = $mediaItem.find("input.form-checkbox:first");
        // Clicking the .media-library-item
        $vboSelectionTrigger.on("click", function (e) {
          e.preventDefault();
          e.stopPropagation();
          if ($vboCheckbox.is(":checked")) {
            $vboCheckbox.prop("checked", false);
            $mediaItem.removeClass("checked");
          } else {
            $vboCheckbox.prop("checked", true);
            $mediaItem.addClass("checked");
          }
        });
        // Clicking the checkbox itself
        $vboCheckbox.change(function () {
          if ($(this).is(":checked")) {
            $mediaItem.addClass("checked");
          } else {
            $mediaItem.removeClass("checked");
          }
        });
      });
    },
  };
})(jQuery, Drupal);

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

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