From c1f9b1f7b1b77776192048005dcc66dcf3df2bfb Mon Sep 17 00:00:00 2001 From: Pierre Schmitz Date: Sat, 27 Dec 2014 15:41:37 +0100 Subject: Update to MediaWiki 1.24.1 --- includes/Feed.php | 111 +++++++++++++++++++++++++++++------------------------- 1 file changed, 59 insertions(+), 52 deletions(-) (limited to 'includes/Feed.php') diff --git a/includes/Feed.php b/includes/Feed.php index 635b04e4..2fdfa424 100644 --- a/includes/Feed.php +++ b/includes/Feed.php @@ -6,7 +6,7 @@ * Available feeds are defined in Defines.php * * Copyright © 2004 Brion Vibber - * http://www.mediawiki.org/ + * https://www.mediawiki.org/ * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -36,28 +36,32 @@ * @ingroup Feed */ class FeedItem { - /** - * @var Title - */ - var $title; + /** @var Title */ + public $title; + + public $description; + + public $url; + + public $date; + + public $author; - var $description; - var $url; - var $date; - var $author; - var $uniqueId; - var $comments; - var $rssIsPermalink = false; + public $uniqueId; + + public $comments; + + public $rssIsPermalink = false; /** * Constructor * * @param string|Title $title Item's title - * @param $description String + * @param string $description * @param string $url URL uniquely designating the item. * @param string $date Item's date * @param string $author Author's user name - * @param $comments String + * @param string $comments */ function __construct( $title, $description, $url, $date = '', $author = '', $comments = '' ) { $this->title = $title; @@ -72,8 +76,8 @@ class FeedItem { /** * Encode $string so that it can be safely embedded in a XML document * - * @param string $string string to encode - * @return String + * @param string $string String to encode + * @return string */ public function xmlEncode( $string ) { $string = str_replace( "\r\n", "\n", $string ); @@ -84,7 +88,7 @@ class FeedItem { /** * Get the unique id of this item * - * @return String + * @return string */ public function getUniqueId() { if ( $this->uniqueId ) { @@ -93,10 +97,10 @@ class FeedItem { } /** - * set the unique id of an item + * Set the unique id of an item * - * @param string $uniqueId unique id for the item - * @param $rssIsPermalink Boolean: set to true if the guid (unique id) is a permalink (RSS feeds only) + * @param string $uniqueId Unique id for the item + * @param bool $rssIsPermalink Set to true if the guid (unique id) is a permalink (RSS feeds only) */ public function setUniqueId( $uniqueId, $rssIsPermalink = false ) { $this->uniqueId = $uniqueId; @@ -106,7 +110,7 @@ class FeedItem { /** * Get the title of this item; already xml-encoded * - * @return String + * @return string */ public function getTitle() { return $this->xmlEncode( $this->title ); @@ -115,7 +119,7 @@ class FeedItem { /** * Get the URL of this item; already xml-encoded * - * @return String + * @return string */ public function getUrl() { return $this->xmlEncode( $this->url ); @@ -124,7 +128,7 @@ class FeedItem { /** * Get the description of this item; already xml-encoded * - * @return String + * @return string */ public function getDescription() { return $this->xmlEncode( $this->description ); @@ -133,7 +137,7 @@ class FeedItem { /** * Get the language of this item * - * @return String + * @return string */ public function getLanguage() { global $wgLanguageCode; @@ -141,9 +145,9 @@ class FeedItem { } /** - * Get the title of this item + * Get the date of this item * - * @return String + * @return string */ public function getDate() { return $this->date; @@ -152,7 +156,7 @@ class FeedItem { /** * Get the author of this item; already xml-encoded * - * @return String + * @return string */ public function getAuthor() { return $this->xmlEncode( $this->author ); @@ -161,7 +165,7 @@ class FeedItem { /** * Get the comment of this item; already xml-encoded * - * @return String + * @return string */ public function getComments() { return $this->xmlEncode( $this->comments ); @@ -170,8 +174,8 @@ class FeedItem { /** * Quickie hack... strip out wikilinks to more legible form from the comment. * - * @param string $text wikitext - * @return String + * @param string $text Wikitext + * @return string */ public static function stripComment( $text ) { return preg_replace( '/\[\[([^]]*\|)?([^]]+)\]\]/', '\2', $text ); @@ -190,7 +194,6 @@ abstract class ChannelFeed extends FeedItem { * @code * print ""; * @endcode - * @param $item */ abstract public function outHeader(); @@ -200,7 +203,7 @@ abstract class ChannelFeed extends FeedItem { * @code * print "..."; * @endcode - * @param $item + * @param FeedItem $item */ abstract public function outItem( $item ); @@ -239,28 +242,27 @@ abstract class ChannelFeed extends FeedItem { * Return an internet media type to be sent in the headers. * * @return string - * @private */ - function contentType() { + private function contentType() { global $wgRequest; + $ctype = $wgRequest->getVal( 'ctype', 'application/xml' ); - $allowedctypes = array( 'application/xml', 'text/xml', 'application/rss+xml', 'application/atom+xml' ); + $allowedctypes = array( + 'application/xml', + 'text/xml', + 'application/rss+xml', + 'application/atom+xml' + ); + return ( in_array( $ctype, $allowedctypes ) ? $ctype : 'application/xml' ); } /** - * Output the initial XML headers with a stylesheet for legibility - * if someone finds it in a browser. - * @private + * Output the initial XML headers. */ - function outXmlHeader() { - global $wgStylePath, $wgStyleVersion; - + protected function outXmlHeader() { $this->httpHeaders(); echo '' . "\n"; - echo '\n"; } } @@ -274,8 +276,8 @@ class RSSFeed extends ChannelFeed { /** * Format a date given a timestamp * - * @param $ts Integer: timestamp - * @return String: date string + * @param int $ts Timestamp + * @return string Date string */ function formatTime( $ts ) { return gmdate( 'D, d M Y H:i:s \G\M\T', wfTimestamp( TS_UNIX, $ts ) ); @@ -301,9 +303,10 @@ class RSSFeed extends ChannelFeed { /** * Output an RSS 2.0 item - * @param $item FeedItem: item to be output + * @param FeedItem $item Item to be output */ function outItem( $item ) { + // @codingStandardsIgnoreStart Ignore long lines and formatting issues. ?> <?php print $item->getTitle(); ?> @@ -315,6 +318,7 @@ class RSSFeed extends ChannelFeed { getComments() ) { ?>getComments(), PROTO_CURRENT ); ?> outXmlHeader(); + // @codingStandardsIgnoreStart Ignore long lines and formatting issues. ?> getFeedId() ?> <?php print $this->getTitle() ?> @@ -359,6 +365,7 @@ class AtomFeed extends ChannelFeed { MediaWiki getSelfUrl(); } /** * Atom 1.0 requests a self-reference to the feed. * @return string - * @private */ - function getSelfUrl() { + private function getSelfUrl() { global $wgRequest; return htmlspecialchars( $wgRequest->getFullRequestURL() ); } /** * Output a given item. - * @param $item + * @param FeedItem $item */ function outItem( $item ) { global $wgMimeType; + // @codingStandardsIgnoreStart Ignore long lines and formatting issues. ?> getUniqueId(); ?> @@ -413,5 +419,6 @@ class AtomFeed extends ChannelFeed { */ function outFooter() {?>