Daniel Kinzler has uploaded a new change for review. ( 
https://gerrit.wikimedia.org/r/370326 )

Change subject: Check Title::canHaveTalkPage before calling getTalkPage()
......................................................................

Check Title::canHaveTalkPage before calling getTalkPage()

Bug: T172146
Change-Id: Iba8616448b8219109277e24d1af10345c49b5ee9
---
M NewsRenderer.php
1 file changed, 8 insertions(+), 4 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/News 
refs/changes/26/370326/1

diff --git a/NewsRenderer.php b/NewsRenderer.php
index 50057bc..8db7151 100644
--- a/NewsRenderer.php
+++ b/NewsRenderer.php
@@ -380,6 +380,11 @@
                return $html;
        }
 
+       /**
+        * @param FeedItem $item
+        *
+        * @return string
+        */
        function renderFeedItem( $item ) {
                global $wgContLang;
 
@@ -401,9 +406,9 @@
                $html .= $item->raw_text;
                $html .= '</div>';
                $html .= '<p><small>';
-               if ( $item->getComments() ) {
+               if ( $item->getComments() && $item->comment_object ) {
                        $html .= '(';
-                       $html .= '<a href="'.htmlspecialchars( 
$item->raw_comment 
).'"/>'.htmlspecialchars($item->title_object->getTalkPage()->getPrefixedText()).'</a>';
+                       $html .= '<a href="'.htmlspecialchars( 
$item->comment_object->getFullUrl() ).'"/>'.htmlspecialchars( 
$item->comment_object->getPrefixedText() ).'</a>';
                        $html .= ')';
                }
                $html .= '</small></p>';
@@ -458,8 +463,7 @@
 
                //XXX: ugly hack - things used by preview
                $item->raw_text = $text; //needed because FeedItem holds text 
html-encoded internally. wtf
-               $item->raw_comment = $title->getTalkPage()->getFullURL(); 
//needed because FeedItem holds text html-encoded internally. wtf
-               $item->raw_title = $name; //needed because FeedItem holds text 
html-encoded internally. wtf
+               $item->comment_object = $title->canHaveTalkPage() ? 
$title->getTalkPage() : null; //needed because FeedItem holds text html-encoded 
internally. wtf
                $item->title_object = $title; //title object
                return $item;
        }

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

Gerrit-MessageType: newchange
Gerrit-Change-Id: Iba8616448b8219109277e24d1af10345c49b5ee9
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/News
Gerrit-Branch: master
Gerrit-Owner: Daniel Kinzler <daniel.kinz...@wikimedia.de>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to