(function( $ ) { var prefix = 'automatorwp-convertkit-'; var _prefix = 'automatorwp_convertkit_'; // On click authorize button $('body').on('click', '.automatorwp_settings #' + _prefix + 'authorize', function(e) { e.preventDefault(); var button = $(this); var wrapper = button.parent(); var key = $('#' + _prefix + 'key').val(); var secret = $('#' + _prefix + 'secret').val(); // Check if response div exists var response_wrap = wrapper.find('#' + _prefix + 'response'); if( ! response_wrap.length ) { wrapper.append( '' ); response_wrap = wrapper.find('#' + _prefix + 'response'); } // Show error message if not correctly configured if( key.length === 0 || secret.length === 0 ) { response_wrap.addClass( 'automatorwp-notice-error' ); response_wrap.html( 'All fields are required to connect with ConvertKit' ); response_wrap.slideDown('fast'); return; } response_wrap.slideUp('fast'); response_wrap.attr('class', ''); // Show spinner wrapper.append(''); // Disable button button.prop('disabled', true); $.post( ajaxurl, { action: 'automatorwp_convertkit_authorize', nonce: automatorwp_convertkit.nonce, key: key, secret: secret, }, function( response ) { // Add class automatorwp-notice-success on successful unlock, if not will add the class automatorwp-notice-error response_wrap.addClass( 'automatorwp-notice-' + ( response.success === true ? 'success' : 'error' ) ); response_wrap.html( ( response.data.message !== undefined ? response.data.message : response.data ) ); response_wrap.slideDown('fast'); // Hide spinner wrapper.find('.spinner').remove(); // Redirect on success if( response.success === true && response.data.redirect_url !== undefined ) { window.location = response.data.redirect_url; return; } // Enable button button.prop('disabled', false); } ); }); })( jQuery );