Bsitu has uploaded a new change for review.

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

Change subject: Redirect to Flow view action when url action is set to edit
......................................................................

Redirect to Flow view action when url action is set to edit

Flow doesn't support edit action

Change-Id: I3534a42c6fccd081a6b408e9f6d53a931d4ab886
---
M Flow.php
M includes/Actions/Action.php
A includes/Actions/EditAction.php
M includes/Content/BoardContentHandler.php
4 files changed, 38 insertions(+), 0 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/Flow 
refs/changes/83/156183/1

diff --git a/Flow.php b/Flow.php
index dda507b..0ebad7a 100755
--- a/Flow.php
+++ b/Flow.php
@@ -257,6 +257,7 @@
 $wgAutoloadClasses['Flow\Actions\CloseTopicAction'] = $dir . 
'includes/Actions/CloseTopicAction.php';
 $wgAutoloadClasses['Flow\Actions\RestorePostAction'] = $dir . 
'includes/Actions/RestorePostAction.php';
 $wgAutoloadClasses['Flow\Actions\RestoreTopicAction'] = $dir . 
'includes/Actions/RestoreTopicAction.php';
+$wgAutoloadClasses['Flow\Actions\EditAction'] = $dir . 
'includes/Actions/EditAction.php';
 $wgAutoloadClasses['Flow\Actions\ViewAction'] = $dir . 
'includes/Actions/ViewAction.php';
 $wgAutoloadClasses['Flow\Actions\ReplyAction'] = $dir . 
'includes/Actions/ReplyAction.php';
 $wgAutoloadClasses['Flow\Actions\HistoryAction'] = $dir . 
'includes/Actions/HistoryAction.php';
diff --git a/includes/Actions/Action.php b/includes/Actions/Action.php
index 307b41f..3849253 100644
--- a/includes/Actions/Action.php
+++ b/includes/Actions/Action.php
@@ -35,6 +35,9 @@
                $this->showForAction( $this->getName() );
        }
 
+       /**
+        * @FIXME - Is this method executed from anywhere?
+        */
        public function execute() {
                $childContext = new DerivativeContext( 
RequestContext::getMain() );
                $childContext->setOutput( new OutputPage( $childContext ) );
diff --git a/includes/Actions/EditAction.php b/includes/Actions/EditAction.php
new file mode 100644
index 0000000..0ec9ece
--- /dev/null
+++ b/includes/Actions/EditAction.php
@@ -0,0 +1,31 @@
+<?php
+
+namespace Flow\Actions;
+
+use IContextSource;
+use Page;
+use Title;
+
+class EditAction extends FlowAction {
+
+       function __construct( Page $page, IContextSource $context ) {
+               parent::__construct( $page, $context, 'edit' );
+       }
+
+       /**
+        * Flow doesn't support edit action, redirect to the title instead
+        */
+       public function show() {
+               $title = $this->context->getTitle();
+
+               // There should always be a title since Flow page
+               // is detected by title or namespace, adding this
+               // to prevent some werid cases
+               if ( !$title ) {
+                       $title = Title::newMainPage();
+               }
+
+               $this->context->getOutput()->redirect( $title->getFullURL() );
+       }
+
+}
diff --git a/includes/Content/BoardContentHandler.php 
b/includes/Content/BoardContentHandler.php
index e2ed186..1336b25 100644
--- a/includes/Content/BoardContentHandler.php
+++ b/includes/Content/BoardContentHandler.php
@@ -100,6 +100,9 @@
                        }
                }
 
+               // Flow has its own handlling for action=edit
+               $output['edit'] = 'Flow\Actions\EditAction';
+
                return $output;
        }
 }

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

Gerrit-MessageType: newchange
Gerrit-Change-Id: I3534a42c6fccd081a6b408e9f6d53a931d4ab886
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/Flow
Gerrit-Branch: master
Gerrit-Owner: Bsitu <[email protected]>

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

Reply via email to