/home/vianto5/duettowers.mx/wp-content/plugins/wpforms/assets/js/admin/builder
NameSizeModeActions
fields/-0755rm
themes/-0755rm
admin-builder-providers.js178180644editdlrm
admin-builder-providers.min.js84540644editdlrm
admin-builder.js3114480644editdlrm
admin-builder.min.js1420590644editdlrm
chocolate-choices.js23340644editdlrm
chocolate-choices.min.js4700644editdlrm
choices-list.js37840644editdlrm
choices-list.min.js7140644editdlrm
context-menu.js185400644editdlrm
context-menu.min.js81830644editdlrm
drag-fields.js247250644editdlrm
drag-fields.min.js96530644editdlrm
dropdown-list.js99920644editdlrm
dropdown-list.min.js38630644editdlrm
email-template.js51440644editdlrm
email-template.min.js14480644editdlrm
field-map.js65920644editdlrm
field-map.min.js23720644editdlrm
form-templates.js198210644editdlrm
form-templates.min.js83010644editdlrm
help.js115720644editdlrm
help.min.js50160644editdlrm
image-upload.js45430644editdlrm
image-upload.min.js20200644editdlrm
multiple-choices.js154180644editdlrm
multiple-choices.min.js63670644editdlrm
panel-loader.js50710644editdlrm
panel-loader.min.js22520644editdlrm
payments-utils.js34930644editdlrm
payments-utils.min.js19630644editdlrm
providers.js355060644editdlrm
providers.min.js127910644editdlrm
search-fields.js46710644editdlrm
search-fields.min.js25080644editdlrm
settings.js114120644editdlrm
settings.min.js48200644editdlrm
setup.js202880644editdlrm
setup.min.js95460644editdlrm
smart-tags.js458990644editdlrm
smart-tags.min.js152750644editdlrm
templates.js40700644editdlrm
templates.min.js10790644editdlrm
wpforms-choicesjs.js81940644editdlrm
wpforms-choicesjs.min.js26310644editdlrm
Edit: /home/vianto5/duettowers.mx/wp-content/plugins/wpforms/assets/js/admin/builder/image-upload.js (4543B)
/* global WPFormsUtils, wpf, wpforms_builder */ // noinspection ES6ConvertVarToLetConst /** * WPForms Image Upload Control for Builder Settings. * * @since 1.9.7.3 */ var WPForms = window.WPForms || {}; // eslint-disable-line no-var WPForms.Admin = WPForms.Admin || {}; WPForms.Admin.Builder = WPForms.Admin.Builder || {}; WPForms.Admin.Builder.Settings = WPForms.Admin.Builder.Settings || {}; /** * Image Upload functionality for Settings. * * @since 1.9.7.3 */ WPForms.Admin.Builder.Settings.ImageUpload = WPForms.Admin.Builder.Settings.ImageUpload || ( function( document, window, $ ) { /** * Image Upload Control methods and properties. * * @since 1.9.7.3 * * @type {Object} */ const app = { /** * Start the engine. * * @since 1.9.7.3 */ init() { $( document ).ready( app.ready ); }, /** * Document ready. * * @since 1.9.7.3 */ ready() { app.$builder = $( '#wpforms-builder' ); app.bindEvents(); }, /** * Bind events. * * @since 1.9.7.3 */ bindEvents() { $( document ).on( 'click', '.wpforms-image-upload-button', app.openMediaUploader ); $( document ).on( 'click', '.wpforms-image-remove-button', app.removeImage ); }, /** * Open media uploader when upload button is clicked. * * @since 1.9.7.3 * * @param {Object} e Event object. */ openMediaUploader( e ) { e.preventDefault(); const $control = $( this ).closest( '.wpforms-image-upload-control' ); const controlId = $control.attr( 'id' ); app.frames = app.frames ?? {}; // If the media frame already exists, reopen it. if ( app.frames[ controlId ] ) { app.frame = app.frames[ controlId ]; app.frame.open(); return; } // Create a new media frame. app.frame = wpf.initMediaLibrary( { extensions: wpforms_builder.upload_image_extensions, extensionsError: wpforms_builder.upload_image_extensions_error, buttonText: wpforms_builder.upload_image_button, } ); // When an image is selected in the media frame. app.frame.on( 'select', function() { // Get media attachment details. const attachment = app.frame.state().get( 'selection' ).first().toJSON(); // Set image to the control. app.setImage( $control, attachment ); } ); // Finally, open the modal. app.frame.open(); // Store the frame. app.frames[ controlId ] = app.frame; }, /** * Get control elements. * * @since 1.9.7.3 * * @param {Object} $control Control element. * * @return {Object} Control elements. */ getControlElements( $control ) { return { $control, $idField: $control.find( '.wpforms-image-upload-id' ), $urlField: $control.find( '.wpforms-image-upload-url' ), $preview: $control.find( '.wpforms-image-preview img' ), $uploadBtn: $control.find( '.wpforms-image-upload-button' ), $removeBtn: $control.find( '.wpforms-image-remove-button' ), }; }, /** * Set image to the control. * * @since 1.9.7.3 * * @param {jQuery} $control Control element. * @param {Object} attachment Attachment data. */ setImage( $control, attachment ) { // Get control elements. const { $idField, $urlField, $preview, $uploadBtn, $removeBtn } = app.getControlElements( $control ); // Update preview. $preview.attr( 'src', attachment.url ); // Update fields. $idField.val( attachment.id ); $urlField.val( attachment.url ); // Toggle buttons $uploadBtn.addClass( 'wpforms-hidden' ); $removeBtn.removeClass( 'wpforms-hidden' ); // Trigger custom change event. WPFormsUtils.triggerEvent( app.$builder, 'wpformsImageUploadChange', [ $control, attachment ] ); }, /** * Remove image when remove button is clicked. * * @since 1.9.7.3 * * @param {Object} e Event object. */ removeImage( e ) { e.preventDefault(); const $control = $( this ).closest( '.wpforms-image-upload-control' ); const { $idField, $urlField, $preview, $uploadBtn, $removeBtn } = app.getControlElements( $control ); // Reset preview. $preview.attr( 'src', '' ); // Clear fields. $idField.val( '' ); $urlField.val( '' ); // Toggle buttons. $uploadBtn.removeClass( 'wpforms-hidden' ); $removeBtn.addClass( 'wpforms-hidden' ); // Trigger custom change event. WPFormsUtils.triggerEvent( app.$builder, 'wpformsImageUploadChange', [ $control, null ] ); }, }; return app; }( document, window, jQuery ) ); // Initialize. WPForms.Admin.Builder.Settings.ImageUpload.init();