Allow undo via ApiEditPage for all content models
authoraude <aude.wiki@gmail.com>
Thu, 13 Aug 2015 20:34:45 +0000 (22:34 +0200)
committerdaniel <daniel.kinzler@wikimedia.de>
Wed, 11 Nov 2015 19:50:23 +0000 (20:50 +0100)
It might be even nicer to separate undo into action=undo,
but for now undo is done via ApiEditPage and should be
allowed for all content models.

Bug: T101694
Change-Id: I833bcc20d86fa5bf216dc9444e2b8a16ddd45f66

includes/api/ApiEditPage.php

index 78913e1..59264e8 100644 (file)
@@ -100,7 +100,10 @@ class ApiEditPage extends ApiBase {
 
                $name = $titleObj->getPrefixedDBkey();
                $model = $contentHandler->getModelID();
-               if ( $contentHandler->supportsDirectApiEditing() === false ) {
+
+               if ( $params['undo'] > 0 ) {
+                       // allow undo via api
+               } elseif ( $contentHandler->supportsDirectApiEditing() === false ) {
                        $this->dieUsage(
                                "Direct editing via API is not supported for content model $model used by $name",
                                'no-direct-editing'