Esanders has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/63861


Change subject: Return proper error if parsoid is unavailable on serialize
......................................................................

Return proper error if parsoid is unavailable on serialize

Previously was just returning an empty result.

Bug: 47581
Change-Id: I6bdd177bc9b5a0af9107cf08d8e46470c6778e12
---
M ApiVisualEditor.php
M modules/ve/init/mw/targets/ve.init.mw.ViewPageTarget.js
M modules/ve/init/mw/ve.init.mw.Target.js
3 files changed, 8 insertions(+), 5 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/VisualEditor 
refs/changes/61/63861/1

diff --git a/ApiVisualEditor.php b/ApiVisualEditor.php
index 0579119..2cbd290 100644
--- a/ApiVisualEditor.php
+++ b/ApiVisualEditor.php
@@ -222,11 +222,11 @@
                        if ( $params['html'] === null ) {
                                $this->dieUsageMsg( 'missingparam', 'html' );
                        }
-                       $serialized = array( 'content' => $this->postHTML( 
$page, $params['html'], $parserParams ) );
-                       if ( $serialized === false ) {
+                       $content = $this->postHTML( $page, $params['html'], 
$parserParams );
+                       if ( $content === false ) {
                                $this->dieUsage( 'Error contacting the Parsoid 
server', 'parsoidserver' );
                        } else {
-                               $result = array_merge( array( 'result' => 
'success' ), $serialized );
+                               $result = array( 'result' => 'success', 
'content' => $content );
                        }
                } elseif ( $params['paction'] === 'save' || $params['paction'] 
=== 'diff' ) {
                        $wikitext = $this->postHTML( $page, $params['html'], 
$parserParams );
diff --git a/modules/ve/init/mw/targets/ve.init.mw.ViewPageTarget.js 
b/modules/ve/init/mw/targets/ve.init.mw.ViewPageTarget.js
index 50d15c9..e94205f 100644
--- a/modules/ve/init/mw/targets/ve.init.mw.ViewPageTarget.js
+++ b/modules/ve/init/mw/targets/ve.init.mw.ViewPageTarget.js
@@ -466,7 +466,6 @@
 ve.init.mw.ViewPageTarget.prototype.onSerializeError = function ( jqXHR, 
status ) {
        alert( ve.msg( 'visualeditor-serializeerror', status ) );
        this.$saveDialogLoadingIcon.hide();
-       this.saveDialogReviewGoodButton.setDisabled( false );
        this.saveDialogReviewWrongButton.setDisabled( false );
 };
 
diff --git a/modules/ve/init/mw/ve.init.mw.Target.js 
b/modules/ve/init/mw/ve.init.mw.Target.js
index ce87f12..8fc90e1 100644
--- a/modules/ve/init/mw/ve.init.mw.Target.js
+++ b/modules/ve/init/mw/ve.init.mw.Target.js
@@ -329,7 +329,11 @@
        var data = response.visualeditor;
        if ( !data && !response.error ) {
                ve.init.mw.Target.onSerializeError.call( this, null, 'Invalid 
response from server', null );
-       } else if ( response.error || data.result === 'error' ) {
+       } else if ( response.error ) {
+               ve.init.mw.Target.onSerializeError.call(
+                       this, null, 'Unsuccessful request: ' + 
response.error.info, null
+               );
+       } else if ( data.result === 'error' ) {
                ve.init.mw.Target.onSerializeError.call( this, null, 'Server 
error', null );
        } else if ( typeof data.content !== 'string' ) {
                ve.init.mw.Target.onSerializeError.call(

-- 
To view, visit https://gerrit.wikimedia.org/r/63861
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I6bdd177bc9b5a0af9107cf08d8e46470c6778e12
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/VisualEditor
Gerrit-Branch: master
Gerrit-Owner: Esanders <[email protected]>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to