Article: Show moveddeleted on 404s for all pages if the user has a session
authorvinithegit <vinithacse@gmail.com>
Mon, 30 Oct 2017 12:30:37 +0000 (18:00 +0530)
committervinithegit <vinithacse@gmail.com>
Mon, 30 Oct 2017 12:30:37 +0000 (18:00 +0530)
Add a check for user session and show movedelete message for this case as well.

Bug: T178099
Change-Id: Id42f27a19e85b608a734c7fedb4e016d8cdc163e

includes/page/Article.php

index 3767ecc..df189af 100644 (file)
@@ -1179,7 +1179,8 @@ class Article implements Page {
                $cache = MediaWikiServices::getInstance()->getMainObjectStash();
                $key = $cache->makeKey( 'page-recent-delete', md5( $title->getPrefixedText() ) );
                $loggedIn = $this->getContext()->getUser()->isLoggedIn();
-               if ( $loggedIn || $cache->get( $key ) ) {
+               $sessionExists = $this->getContext()->getRequest()->getSession()->isPersistent();
+               if ( $loggedIn || $cache->get( $key ) || $sessionExists ) {
                        $logTypes = [ 'delete', 'move', 'protect' ];
 
                        $dbr = wfGetDB( DB_REPLICA );
@@ -1196,7 +1197,7 @@ class Article implements Page {
                                        'lim' => 10,
                                        'conds' => $conds,
                                        'showIfEmpty' => false,
-                                       'msgKey' => [ $loggedIn
+                                       'msgKey' => [ $loggedIn || $sessionExists
                                                ? 'moveddeleted-notice'
                                                : 'moveddeleted-notice-recent'
                                        ]