-
Erick Hitter authoredErick Hitter authored
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
post.js 1.82 KiB
( function( $ ) {
$( document ).ready( function() {
var purge_button = $( '#' + wp_revisions_control.namespace + ' .button.purge' ),
post_id = null,
nonce = null,
button_text = null;
button_text = $( purge_button ).text();
$( purge_button ).on( 'click', click_handler_purge );
/**
* Click handler for purging a post's revisions
*/
function click_handler_purge() {
post_id = parseInt( $( this ).data( 'postid' ) );
$( purge_button ).text( wp_revisions_control.processing_text );
var confirmed = confirm( wp_revisions_control.ays );
if ( confirmed && post_id ) {
$.ajax({
url: ajaxurl,
cache: false,
data: {
action: wp_revisions_control.action_base + '_purge',
post_id: post_id,
nonce: $( this ).data( 'nonce' )
},
type: 'post',
dataType: 'json',
success: ajax_purge_request_success,
error: ajax_purge_request_error
});
} else {
$( purge_button ).text( button_text );
}
}
/**
* User feedback when Ajax request succeeds
* Does not indicate that purge request succeeded
*/
function ajax_purge_request_success( response ) {
if ( response.error ) {
alert( response.error );
$( purge_button ).text( button_text );
} else if ( response.success ) {
var list_table = $( 'ul.post-revisions > li' );
$( list_table ).each( function() {
var autosave = $( this ).text().match( wp_revisions_control.autosave );
if ( ! autosave )
$( this ).slideUp( 'slow' ).remove();
} );
$( purge_button ).fadeOut( 'slow' ).after( wp_revisions_control.nothing_text );
}
}
/**
* Return a generic error when the Ajax request fails
*/
function ajax_purge_request_error() {
alert( wp_revisions_control.error );
$( purge_button ).text( button_text );
}
} );
} )( jQuery );