diff --git wp-includes/js/autosave.js wp-includes/js/autosave.js
index 537d9b6..e57007f 100644
|
|
|
function autosave_parse_response(response) { |
| 179 | 179 | // called when autosaving pre-existing post |
| 180 | 180 | function autosave_saved(response) { |
| 181 | 181 | blockSave = false; |
| 182 | | autosave_parse_response(response); // parse the ajax response |
| 183 | | autosave_enable_buttons(); // re-enable disabled form buttons |
| | 182 | |
| | 183 | var res = autosave_parse_response(response); // parse the ajax response |
| | 184 | if ( !res.errors ) |
| | 185 | autosave_enable_buttons(); // re-enable disabled form buttons |
| 184 | 186 | } |
| 185 | 187 | |
| 186 | 188 | // called when autosaving new post |
| … |
… |
function autosave_saved_new(response) { |
| 200 | 202 | autosaveDelayPreview = false; |
| 201 | 203 | doPreview(); |
| 202 | 204 | } |
| 203 | | } else { |
| 204 | | autosave_enable_buttons(); // re-enable disabled form buttons |
| 205 | 205 | } |
| 206 | 206 | } |
| 207 | 207 | |
| … |
… |
function autosave_enable_buttons() { |
| 236 | 236 | }, 500); |
| 237 | 237 | } |
| 238 | 238 | |
| 239 | | function autosave_disable_buttons() { |
| | 239 | function autosave_disable_buttons( leaveDisabled ) { |
| 240 | 240 | jQuery(':button, :submit', '#submitpost').prop('disabled', true); |
| 241 | | // Re-enable 5 sec later. Just gives autosave a head start to avoid collisions. |
| 242 | | setTimeout(autosave_enable_buttons, 5000); |
| | 241 | |
| | 242 | if ( ! leaveDisabled ) { |
| | 243 | // Re-enable 5 sec later. Just gives autosave a head start to avoid collisions. |
| | 244 | setTimeout(autosave_enable_buttons, 5000); |
| | 245 | } |
| 243 | 246 | } |
| 244 | 247 | |
| 245 | 248 | function delayed_autosave() { |
| … |
… |
autosave = function() { |
| 256 | 259 | var rich = (typeof tinymce != "undefined") && tinymce.activeEditor && !tinymce.activeEditor.isHidden(), |
| 257 | 260 | post_data, doAutoSave, ed, origStatus, successCallback; |
| 258 | 261 | |
| 259 | | autosave_disable_buttons(); |
| | 262 | // Disable buttons until we know the save completed. |
| | 263 | autosave_disable_buttons( true ); |
| 260 | 264 | |
| 261 | 265 | post_data = wp.autosave.getPostData(); |
| 262 | 266 | |
| … |
… |
wp.autosave.local = { |
| 510 | 514 | if ( !this.blog_id ) |
| 511 | 515 | this.blog_id = typeof window.autosaveL10n != 'undefined' ? window.autosaveL10n.blog_id : 0; |
| 512 | 516 | |
| | 517 | // When connection is lost, keep user from submitting changes. |
| | 518 | jQuery(document).on('heartbeat-connection-lost', function() { |
| | 519 | autosave_disable_buttons( true ); // Leave buttons disabled. |
| | 520 | }); |
| | 521 | |
| | 522 | // When connection returns, make work all the things. |
| | 523 | jQuery(document).on('heartbeat-connection-restored', function() { |
| | 524 | autosave_enable_buttons(); |
| | 525 | }); |
| | 526 | |
| 513 | 527 | this.checkPost(); |
| 514 | 528 | $(document).ready( self.run ); |
| 515 | 529 | }, |