Make WordPress Core

Ticket #33349: 33349.2.patch

File 33349.2.patch, 1.1 KB (added by iseulde, 8 years ago)
  • src/wp-admin/js/post.js

     
    407407                        return;
    408408                }
    409409
    410                 $.ajax({
    411                         type: 'POST',
    412                         url: ajaxurl,
    413                         async: false,
    414                         data: {
    415                                 action: 'wp-remove-post-lock',
    416                                 _wpnonce: $('#_wpnonce').val(),
    417                                 post_ID: $('#post_ID').val(),
    418                                 active_post_lock: $('#active_post_lock').val()
     410                var data = {
     411                        action: 'wp-remove-post-lock',
     412                        _wpnonce: $('#_wpnonce').val(),
     413                        post_ID: $('#post_ID').val(),
     414                        active_post_lock: $('#active_post_lock').val()
     415                };
     416
     417                if (window.FormData && window.navigator.sendBeacon) {
     418                        var formData = new window.FormData();
     419
     420                        $.each(data, function(key, value) {
     421                                formData.append(key, value);
     422                        });
     423
     424                        if (window.navigator.sendBeacon(ajaxurl, formData)) {
     425                                return;
    419426                        }
     427                }
     428
     429                // Fall back to a synchronous POST request.
     430                // See https://developer.mozilla.org/en-US/docs/Web/API/Navigator/sendBeacon
     431                $.post({
     432                        async: false,
     433                        data: data,
     434                        url: ajaxurl
    420435                });
    421436        });
    422437