diff --git a/Resources/Private/Standalone/MediaLibrary/Show.html b/Resources/Private/Standalone/MediaLibrary/Show.html index 762c207..f49a42f 100644 --- a/Resources/Private/Standalone/MediaLibrary/Show.html +++ b/Resources/Private/Standalone/MediaLibrary/Show.html @@ -4,6 +4,7 @@ class="btn-cloudinary-media-library btn btn-default open-btn mx-1 btn-open-cloudinary btn-open-cloudinary-storage-{cloudinaryCredential.storageUid}" data-cloudinary-credentials="{cloudinaryCredential -> f:format.json()}" data-object-group="{objectGroup}" + disabled > diff --git a/Resources/Public/JavaScript/CloudinaryMediaLibrary.js b/Resources/Public/JavaScript/CloudinaryMediaLibrary.js index d954f70..4484f96 100644 --- a/Resources/Public/JavaScript/CloudinaryMediaLibrary.js +++ b/Resources/Public/JavaScript/CloudinaryMediaLibrary.js @@ -10,17 +10,36 @@ define([ ], function ($, NProgress, MessageUtility, Modal, Severity) { let cloudinaryButtons = Array.from(document.getElementsByClassName('btn-cloudinary-media-library')); + setCloudinaryButtonEvent(cloudinaryButtons); - cloudinaryButtons.map((cloudinaryButton) => { - cloudinaryButton.addEventListener("click", function(event){ - event.preventDefault(); - let buttonClasses = $(this).attr('class'); - let buttonInnerHtml = $(this).prop("innerHTML"); - let objectGroup = $(this).data('objectGroup'); - let elementId = $(this).attr('id'); - openMediaLibrary(JSON.parse(cloudinaryButton.dataset.cloudinaryCredentials), objectGroup, elementId, buttonClasses, buttonInnerHtml); + $('.t3js-create-new-button').click(function(e) { + setTimedOutedCloudinaryButtonEvent(); + }) + + $('.form-irre-header-button').click(function(e) { + setTimedOutedCloudinaryButtonEvent(); + }) + + function setTimedOutedCloudinaryButtonEvent(){ + setTimeout(() => + {setCloudinaryButtonEvent(Array.from(document.getElementsByClassName('btn-cloudinary-media-library')))}, + 1000 + ); + } + + function setCloudinaryButtonEvent(cloudinaryButtons) { + cloudinaryButtons.map((cloudinaryButton) => { + cloudinaryButton.addEventListener("click", function(event){ + event.preventDefault(); + let buttonClasses = $(this).attr('class'); + let buttonInnerHtml = $(this).prop("innerHTML"); + let objectGroup = $(this).data('objectGroup'); + let elementId = $(this).attr('id'); + openMediaLibrary(JSON.parse(cloudinaryButton.dataset.cloudinaryCredentials), objectGroup, elementId, buttonClasses, buttonInnerHtml); + }); + cloudinaryButton.removeAttribute('disabled'); }); - }); + } function openMediaLibrary(credential, objectGroup, elementId, buttonClasses, buttonInnerHtml) { // Render the cloudinary button