; ( function ( $ ) { var $this = UR_Form_Settings = { init: function() { $( document ).ready( UR_Form_Settings.ready ); }, ready: function() { UR_Form_Settings.initSettings(); }, initSettings: function () { $this.initImageUploader(); $this.handleRecaptchaFormSettings(); $(".user-registration").on("change","#user_registration_form_setting_enable_recaptcha_support", function(){ $this.handleRecaptchaFormSettings(); }); }, handleRecaptchaFormSettings: function() { var login_captcha_enabled = $("#user_registration_form_setting_enable_recaptcha_support").is(":checked"); if ( login_captcha_enabled ) { $("#user_registration_form_setting_configured_captcha_type_field").show(); } else { $("#user_registration_form_setting_configured_captcha_type_field").hide(); } }, initImageUploader: function () { $( '.form-row.ur-image-uploader' ).each( function ( _, row ) { $( row ).find( 'input' ).hide(); var wrapper = $( row ) .find( '.input-wrapper' ) .append( '
' + '' + '
' + '' + '' + '
' + '
' ); var imageUrl = $( row ).find( 'input' ).val(); if ( imageUrl.length ) { wrapper.find( 'img' ).attr( 'src', imageUrl ).show(); wrapper.find( 'button.ur-file-remove-button' ).show(); } else { wrapper.find( 'button.ur-file-upload-button' ).show(); } wrapper.find( 'button.ur-file-upload-button' ).click( function ( e ) { e.preventDefault(); var ur_uploader = $( this ); var image = wp.media({ library: { type: [ 'image' ] }, title: ur_uploader.upload_file, multiple: false }).open() .on( 'select', function () { var uploaded_image = image.state().get('selection').first(); var image_url = uploaded_image.toJSON().url; if ( image_url.length ) { ur_uploader.closest( '.ur-image-uploader-wrapper' ).find( 'img' ).attr( 'src', image_url ).show(); ur_uploader.closest( '.input-wrapper' ).find( 'input' ).attr( 'value', image_url ); ur_uploader.siblings( 'button.ur-file-remove-button' ).show(); ur_uploader.hide(); } }); } ); wrapper.find( 'button.ur-file-remove-button' ).click( function ( e ) { e.preventDefault(); $( this ).closest( '.input-wrapper' ).find( 'input' ).attr( 'value', '' ); $( this ).closest( '.ur-image-uploader-wrapper' ).find( 'img' ).hide(); $( this ).hide(); $( this ).siblings( 'button.ur-file-upload-button' ).show(); } ) } ); } } UR_Form_Settings.init(); } )( jQuery );