Loading modules/cloudinary_media_library_widget/js/cloudinary_media_library.widget.js +27 −24 Original line number Diff line number Diff line (function ($, Drupal, once, drupalSettings, cloudinary) { Drupal.behaviors.CloudinaryMediaLibraryWidget = { attach: function (context) { const settings = drupalSettings.cloudinary_media_library_widget || false; const widgetSettings = drupalSettings.cloudinary_media_library_widget || false; if (!settings) { if (!widgetSettings) { console.error('No settings available for the widget.'); return; } const $progress_element = $(Drupal.theme('ajaxProgressThrobber')); let mediaInsertHandler = function (data) { const settings = widgetSettings[this.fieldName]; const media_creation_url = 'cloudinary_media_library_widget/' + settings.bundle; const $fieldElement = $('#' + this.fieldWrapperId); $fieldElement.find('.js-media-library-selection').after($progress_element); $.ajax({ url: Drupal.url(media_creation_url), type: 'POST', data: JSON.stringify(data.assets), dataType: 'json', success: function (response) { $fieldElement.find('.js-cloudinary-library-selection').val(response.ids.join(',')); $fieldElement.find('.js-cloudinary-library-update-widget').trigger('mousedown'); } }); } once('cloudinaryMediaLibraryWidget', '.js-cloudinary-library-widget', context).forEach(function (element) { const settings = widgetSettings[element.dataset.fieldName]; const cloudinary_settings = { cloud_name: settings.cloud_name, api_key: settings.api_key, Loading @@ -29,27 +52,6 @@ cloudinary_settings.folder.path = settings.starting_folder; } const media_creation_url = 'cloudinary_media_library_widget/' + settings.bundle; const $progress_element = $(Drupal.theme('ajaxProgressThrobber')); let mediaInsertHandler = function (data) { const $fieldElement = $('#' + this.fieldWrapperId); $fieldElement.find('.js-media-library-selection').after($progress_element); $.ajax({ url: Drupal.url(media_creation_url), type: 'POST', data: JSON.stringify(data.assets), dataType: 'json', success: function (response) { $fieldElement.find('.js-cloudinary-library-selection').val(response.ids.join(',')); $fieldElement.find('.js-cloudinary-library-update-widget').trigger('mousedown'); } }); } once('cloudinaryMediaLibraryWidget', '.js-cloudinary-library-widget', context).forEach(function (element) { const widget = cloudinary.createMediaLibrary( cloudinary_settings, { Loading @@ -59,6 +61,7 @@ ) widget.fieldWrapperId = element.id; widget.fieldName = element.dataset.fieldName; }); } }; Loading modules/cloudinary_media_library_widget/src/Plugin/Field/FieldWidget/CloudinaryMediaLibraryWidget.php +6 −3 Original line number Diff line number Diff line Loading @@ -126,6 +126,7 @@ class CloudinaryMediaLibraryWidget extends MediaLibraryWidget { $element = parent::formElement($items, $delta, $element, $form, $form_state); $element['#attributes']['class'][] = 'js-cloudinary-library-widget'; $element['#attributes']['data-field-name'] = $this->fieldDefinition->getName(); $element['media_library_selection']['#attributes']['class'][] = 'js-cloudinary-library-selection'; $element['media_library_update_widget']['#attributes']['class'][] = 'js-cloudinary-library-update-widget'; Loading Loading @@ -176,7 +177,9 @@ class CloudinaryMediaLibraryWidget extends MediaLibraryWidget { } return [ 'cloudinary_media_library_widget' => $settings, 'cloudinary_media_library_widget' => [ $this->fieldDefinition->getName() => $settings, ], ]; } Loading Loading
modules/cloudinary_media_library_widget/js/cloudinary_media_library.widget.js +27 −24 Original line number Diff line number Diff line (function ($, Drupal, once, drupalSettings, cloudinary) { Drupal.behaviors.CloudinaryMediaLibraryWidget = { attach: function (context) { const settings = drupalSettings.cloudinary_media_library_widget || false; const widgetSettings = drupalSettings.cloudinary_media_library_widget || false; if (!settings) { if (!widgetSettings) { console.error('No settings available for the widget.'); return; } const $progress_element = $(Drupal.theme('ajaxProgressThrobber')); let mediaInsertHandler = function (data) { const settings = widgetSettings[this.fieldName]; const media_creation_url = 'cloudinary_media_library_widget/' + settings.bundle; const $fieldElement = $('#' + this.fieldWrapperId); $fieldElement.find('.js-media-library-selection').after($progress_element); $.ajax({ url: Drupal.url(media_creation_url), type: 'POST', data: JSON.stringify(data.assets), dataType: 'json', success: function (response) { $fieldElement.find('.js-cloudinary-library-selection').val(response.ids.join(',')); $fieldElement.find('.js-cloudinary-library-update-widget').trigger('mousedown'); } }); } once('cloudinaryMediaLibraryWidget', '.js-cloudinary-library-widget', context).forEach(function (element) { const settings = widgetSettings[element.dataset.fieldName]; const cloudinary_settings = { cloud_name: settings.cloud_name, api_key: settings.api_key, Loading @@ -29,27 +52,6 @@ cloudinary_settings.folder.path = settings.starting_folder; } const media_creation_url = 'cloudinary_media_library_widget/' + settings.bundle; const $progress_element = $(Drupal.theme('ajaxProgressThrobber')); let mediaInsertHandler = function (data) { const $fieldElement = $('#' + this.fieldWrapperId); $fieldElement.find('.js-media-library-selection').after($progress_element); $.ajax({ url: Drupal.url(media_creation_url), type: 'POST', data: JSON.stringify(data.assets), dataType: 'json', success: function (response) { $fieldElement.find('.js-cloudinary-library-selection').val(response.ids.join(',')); $fieldElement.find('.js-cloudinary-library-update-widget').trigger('mousedown'); } }); } once('cloudinaryMediaLibraryWidget', '.js-cloudinary-library-widget', context).forEach(function (element) { const widget = cloudinary.createMediaLibrary( cloudinary_settings, { Loading @@ -59,6 +61,7 @@ ) widget.fieldWrapperId = element.id; widget.fieldName = element.dataset.fieldName; }); } }; Loading
modules/cloudinary_media_library_widget/src/Plugin/Field/FieldWidget/CloudinaryMediaLibraryWidget.php +6 −3 Original line number Diff line number Diff line Loading @@ -126,6 +126,7 @@ class CloudinaryMediaLibraryWidget extends MediaLibraryWidget { $element = parent::formElement($items, $delta, $element, $form, $form_state); $element['#attributes']['class'][] = 'js-cloudinary-library-widget'; $element['#attributes']['data-field-name'] = $this->fieldDefinition->getName(); $element['media_library_selection']['#attributes']['class'][] = 'js-cloudinary-library-selection'; $element['media_library_update_widget']['#attributes']['class'][] = 'js-cloudinary-library-update-widget'; Loading Loading @@ -176,7 +177,9 @@ class CloudinaryMediaLibraryWidget extends MediaLibraryWidget { } return [ 'cloudinary_media_library_widget' => $settings, 'cloudinary_media_library_widget' => [ $this->fieldDefinition->getName() => $settings, ], ]; } Loading