oont-contents/plugins/woocommerce-pdf-ips-templates/updater/assets/script.js
2025-02-08 15:10:23 +01:00

61 lines
No EOL
2.4 KiB
JavaScript

jQuery( function( $ ) {
$( '.wpo-license-registration-toggle').on('click', function( event ) {
let $row = $(this).closest('tr');
let $updater_row = $( '.wpo-license-row-' + $(this).data('plugin_slug') );
let $update_helper = $updater_row.find('.wpo-update-helper');
if ($update_helper.length) {
if ($updater_row.has('.wpo-license-key').length && $updater_row.is(":visible")) {
$updater_row.css('display',''); // see comment below before $updater_row.show();
$updater_row.hide();
return;
} else {
if ($updater_row.has('.wpo-license-key').length === 0 ) {
$(this).addClass('wpo-spinner');
}
$updater_row.attr('style','display:'+$row.css('display')+' !important;'); // fixes other plugins overriding the visibility of the row with !important rules
$updater_row.show();
}
} else {
return;
}
let plugin_license_slug = $(this).data('plugin_license_slug');
let edd_action = $(this).data('edd_action');
wpo_update_helper_action( edd_action, plugin_license_slug, $update_helper );
});
$( '.wpo-update-helper' ).on( 'click', '.activate, .deactivate', function( event ) {
$parent = $(this).closest('.wpo-update-helper');
var plugin_license_slug = $parent.data('plugin_license_slug');
var edd_action = $(this).data('edd_action');
wpo_update_helper_action( edd_action, plugin_license_slug, $parent );
});
function wpo_update_helper_action( edd_action, plugin_license_slug, $parent ) {
var license_key = $parent.find( 'input.wpo-license-key' ).val();
$parent.find( '.license-data' ).addClass('ajax-waiting');
$parent.find( '.license-state' ).addClass('wpo-spinner');
var data = {
security: wpo_update_helper.nonce,
action: "wpo_updater_licence_key_action_"+plugin_license_slug,
license_key: license_key,
remote_edd_action: edd_action,
};
xhr = $.ajax({
type: 'POST',
url: wpo_update_helper.ajaxurl,
data: data,
dataType: "json",
context: $parent,
success: function( response ) {
$(this).find('.license-data').replaceWith( response.html );
$row = $(this).closest('tr');
$plugin_row = $('.wpo-license-registration-toggle[data-plugin_license_slug="' + plugin_license_slug + '"').closest('tr');
$row.attr('style','display:'+$plugin_row.css('display')+' !important;'); // see comment above
$row.show();
$plugin_row.find('.wpo-license-registration-toggle').removeClass('wpo-spinner');
}
});
}
});