qbank_dam-8.x-1.4/js/qbank_dam.ckeditor.js

js/qbank_dam.ckeditor.js
(function ($, Drupal, drupalSettings) {
  "use strict";

  Drupal.behaviors.qbankdamSetup = {
    attach: function (context, setting) {
      var setupWindowSize = function () {
        var mainWindow = jQuery("#" + drupalSettings.qbank_dam.html_id)
          .parent()
          .parent();
        mainWindow.css({
          top: "20px",
          left: "20px",
          width: jQuery(window).width() - 40 + "px",
          "max-width": "100%",
        });

        //Resize window - alignment and window size fixes
        jQuery(".ui-dialog").addClass("qbank-override-ui-dialog");
        jQuery(".ui-dialog .ui-dialog-content").addClass(
          "qbank-override-ui-dialog-content"
        );

        jQuery(".ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset").css({
          display: "none",
        });
        jQuery(".ui-dialog .ui-widget-content.ui-dialog-buttonpane").css({
          padding: "3px",
        });
        jQuery(".ui-dialog .ui-dialog-titlebar").css({
          padding: "5px 15px 5px 15px",
        });
        jQuery(
          ".ui-button.ui-corner-all.ui-widget.ui-button-icon-only.ui-dialog-titlebar-close"
        ).css({ zoom: "0.6" });
        jQuery(".ui-front.ui-dialog-content.ui-widget-content").css({
          "max-height": "unset",
          height: jQuery(window).height() - 90,
          width: "initial",
        });

        jQuery("#" + drupalSettings.qbank_dam.html_id).css({
          height: jQuery(window).height() - 275 + "px",
        });
        jQuery(".ui-front.ui-dialog-content.ui-widget-content div").css({
          height: "100%",
        });
      };

      var mediaSelected = function (media, image, usePrevious) {

        if (!usePrevious) {
          jQuery("input[name='qbank_url']").val(image[0].url);
          jQuery("input[name='qbank_extension']").val(image[0].extension);
          jQuery("input[name='qbank_media_classification']").val(media.mimetype.classification);
          jQuery("input[name='qbank_title']").val(media.name);
          jQuery("input[name='qbank_media_id']").val(media.mediaId);
          jQuery(
            '<div role="contentinfo" aria-label="Status message" class="messages messages--status"><div role="alert"><h2 class="visually-hidden">Status message</h2>Downloading media from QBank DAM</div></div>'
          ).insertBefore("#" + drupalSettings.qbank_dam.html_id);
          jQuery("button.js-form-submit").trigger("click");
        } else {
          console.log(usePrevious);
        }
      };

      var protocol =
        drupalSettings.qbank_dam.protocol === "HTTPS" ? "https" : "http";
      var qbcConfig = {
        deploymentSite: drupalSettings.qbank_dam.deployment_site,
        api: {
          host: drupalSettings.qbank_dam.url,
          access_token: drupalSettings.qbank_dam.token,
          protocol: protocol,
        },
        gui: {
          basehref:
            protocol + "://" + drupalSettings.qbank_dam.url + "/connector/",
        },
      };

      var QBC = new QBankConnector(qbcConfig);

      var mediaPicker = new QBC.mediaPicker({
        container: "#" + drupalSettings.qbank_dam.html_id,
        onSelect: mediaSelected,
        onReady: setupWindowSize,
        modules: {
          folders: true,
          categories: true,
          moodboards: true,
          settings: true,
          content: {
            header: true,
            toolbar: true,
            details: true,
          },
          imageTool: {
            crop: true,
          },
          detail: {
            showUseButton: true,
          },
          searchResult: {
            showUseButton: false,
          },
        },
      });
		
		let mediaPickerFrame = window?.document?.getElementsByTagName('iframe');
		for(let i=0; i<50; i++){
			setTimeout(()=>{
				if(mediaPickerFrame.length > 0){
					i = 50;
				}
				let closeBtn = mediaPickerFrame[0]?.contentWindow?.document?.getElementById('btn-close-connector');
				closeBtn.setAttribute(
					'style',
					'display:none'
				);
			},500);
		}
		
		window.document.addEventListener('load', function() {
			console.log('load');
		});
		window.document.addEventListener('load', function() {
			console.log('load');
		});
	  
		
    },
  };
})(jQuery, Drupal, drupalSettings);

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

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