2010-10-19 21:54:53 +00:00
|
|
|
<?php
|
2010-10-20 11:25:10 +00:00
|
|
|
|
2022-04-06 00:05:34 +00:00
|
|
|
namespace MediaWiki\Extension\RSS;
|
|
|
|
|
|
|
|
use DOMDocument;
|
|
|
|
use DOMXPath;
|
|
|
|
|
2010-10-19 21:54:53 +00:00
|
|
|
class RSSData {
|
2024-08-20 20:15:24 +00:00
|
|
|
/** @var string */
|
2010-11-13 19:11:28 +00:00
|
|
|
public $error;
|
2024-08-20 20:15:24 +00:00
|
|
|
/** @var string[][] */
|
2010-10-19 21:54:53 +00:00
|
|
|
public $items;
|
|
|
|
|
2010-11-04 23:19:00 +00:00
|
|
|
/**
|
|
|
|
* Constructor, takes a DOMDocument and returns an array of parsed items.
|
2017-10-14 15:23:24 +00:00
|
|
|
* @param DOMDocument $xml the pre-parsed XML Document
|
2010-11-04 23:19:00 +00:00
|
|
|
*/
|
2018-11-02 10:23:45 +00:00
|
|
|
public function __construct( $xml ) {
|
2010-11-13 19:11:28 +00:00
|
|
|
if ( !( $xml instanceof DOMDocument ) ) {
|
|
|
|
$this->error = "Not passed DOMDocument object.";
|
2010-11-04 23:19:00 +00:00
|
|
|
return;
|
2010-11-01 16:25:04 +00:00
|
|
|
}
|
|
|
|
$xpath = new DOMXPath( $xml );
|
2010-10-19 21:54:53 +00:00
|
|
|
|
version 2.18 + squashed commit RSS changes fromSVN
bump version number from 2.17 to 2.18 for the releas version
removed 4 white spaces tabs.
followed the advices of the code reviewer. removed an unwanted switch(true) structure
removed switch case by an assoc array, removed unneeded http factory comments Wikinaut 2013-01-04
removed unneeded INSTALL text file
new version 2.17 incl. code cosmetics. rebased on master bea4447d24ad33c115e64385ef8fc5a308b58188 2012-12-22
bear with me ! It's my first real-life commit to gerrit. Wikinaut, 2012-12-30
Catrope squashed these together per Wikinaut's request. List of commit
summaries:
adding the long-wanted date format attribute.
implemented a date format equalising function,
so that dates of RSS feeds are rendered in a common format.
follow-up r111347 : adding escapeTemplateParameter around the user supplied optional date attribute
fix for bug30377 : add a new parameter to limit the number of characters when rendering the channel item <description>
follow-up r111350 . check if optional parameter isset and is_numeric, otherwise limit to the built-in default (30000)
removed a wrong comment regarding PHP 5.3 function date_create_from_format,
which is not suited to auto-detect a time string in any formats - only strtotime() can do it.
follow-up r111350 r111351 . switch replaced by if elseif construct.
name and behaviour change of wgRSSAllowedFeeds towgRSSUrlWhitelist.
The wgRSSUrlWhitelist is _now_ empty by default which was not the case until this version.
Admins who want to allow their users to insert arbitrary feed urls must now denote this expressly
with an asterisk in quotes as whitelist array element.
This is harmonised to the same method as recently introduced in E:EtherpadLite.
The RELEASE NOTES file has been updated, updates to the MediaWiki manual page will follow soon.
increased wgRSSFetchTimeout default from 5 to 15 seconds - many sites are too slow.
v2.00 can parse ATOM feeds, at least some.
This is a major improvement over pre-2.00 versions which only could read and parse RSS feeds but no ATOM feeds.
Version 2.00 begins to keep care of namespaces in the XML.
The parser still leaves room for further improvements.
At least, E:RSS can now read E:WikiArticleFeeds generated RSS _and_ ATOM feeds.
v2.01 fixed ATOM summary element was forgotten to be parsed.
Added handling of basic HTML layout tags (p br b u i s) in feed descriptions,
they are preserved in the wiki output after sanitizing.
improved code legibility function namespacePrefixedQuery
fix for ultra bug 30028 .
The RSS extension can parse RSS and ATOM feeds of different flavours.
The php xml dom xpath query uses now a namespace-safe method to find all elements like item (RSS, RDF)
or entry (ATOM).
Further fixed a hidden problem when the feed url was redirecting,
this threw the Cannot parse RSS for XML error, which is now history.
Introduced a new parameter wgRSSUrlNumberOfAllowedRedirects which defaults to zero,
i.e. no redirects are allowed by default. See Manual page
removed superfluous code for setting userAgent since r112466
function name typo correction. Version number update
fix for bug34763 'RSS feed items (HTML) are not rendered as HTML but htmlescaped';
tolerated controlled regression bug30377 'feed item length limitation',
because this now becomes very tricky when we allow some tags in order to close bug 34763.
add tracking category feature (enabled by default). Each page using this extensions gets
automatically the tracking category with MediaWiki:Rss-tracking-category name (= RSS).
Tracking-Cat-Feature can be disabled, or a different MediaWiki message text can be assigned.
Documentation of the switch is inline and follows on MediaWiki.
follow up r113508 : escaped html tag brackets to make translaters happy
beautifying the tracking category name
adding casts. better ?
removed the redundant code for handling tracking categories.
By using '-' for the message text rss-tracking-category , this can be disabled easily.
+ Patchset 11
rebased on master
+ Patchset 12
wrapped commit message text lines
version number bumped to 2.18
+ Patchset 13
improved and updated README
added history of the present version 2.18
+ Patchset 14
white space fixes
version number fixes
Change-Id: I2d9724314f94c216650370071b31390c5c2c97fc
2012-02-13 01:39:24 +00:00
|
|
|
// namespace-safe method to find all elements
|
|
|
|
$items = $xpath->query( "//*[local-name() = 'item']" );
|
|
|
|
|
|
|
|
if ( $items->length === 0 ) {
|
|
|
|
$items = $xpath->query( "//*[local-name() = 'entry']" );
|
|
|
|
}
|
|
|
|
|
|
|
|
if ( $items->length === 0 ) {
|
|
|
|
$this->error = 'No RSS/ATOM items found.';
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
|
|
|
|
foreach ( $items as $item ) {
|
2017-05-20 21:41:06 +00:00
|
|
|
$bit = [];
|
version 2.18 + squashed commit RSS changes fromSVN
bump version number from 2.17 to 2.18 for the releas version
removed 4 white spaces tabs.
followed the advices of the code reviewer. removed an unwanted switch(true) structure
removed switch case by an assoc array, removed unneeded http factory comments Wikinaut 2013-01-04
removed unneeded INSTALL text file
new version 2.17 incl. code cosmetics. rebased on master bea4447d24ad33c115e64385ef8fc5a308b58188 2012-12-22
bear with me ! It's my first real-life commit to gerrit. Wikinaut, 2012-12-30
Catrope squashed these together per Wikinaut's request. List of commit
summaries:
adding the long-wanted date format attribute.
implemented a date format equalising function,
so that dates of RSS feeds are rendered in a common format.
follow-up r111347 : adding escapeTemplateParameter around the user supplied optional date attribute
fix for bug30377 : add a new parameter to limit the number of characters when rendering the channel item <description>
follow-up r111350 . check if optional parameter isset and is_numeric, otherwise limit to the built-in default (30000)
removed a wrong comment regarding PHP 5.3 function date_create_from_format,
which is not suited to auto-detect a time string in any formats - only strtotime() can do it.
follow-up r111350 r111351 . switch replaced by if elseif construct.
name and behaviour change of wgRSSAllowedFeeds towgRSSUrlWhitelist.
The wgRSSUrlWhitelist is _now_ empty by default which was not the case until this version.
Admins who want to allow their users to insert arbitrary feed urls must now denote this expressly
with an asterisk in quotes as whitelist array element.
This is harmonised to the same method as recently introduced in E:EtherpadLite.
The RELEASE NOTES file has been updated, updates to the MediaWiki manual page will follow soon.
increased wgRSSFetchTimeout default from 5 to 15 seconds - many sites are too slow.
v2.00 can parse ATOM feeds, at least some.
This is a major improvement over pre-2.00 versions which only could read and parse RSS feeds but no ATOM feeds.
Version 2.00 begins to keep care of namespaces in the XML.
The parser still leaves room for further improvements.
At least, E:RSS can now read E:WikiArticleFeeds generated RSS _and_ ATOM feeds.
v2.01 fixed ATOM summary element was forgotten to be parsed.
Added handling of basic HTML layout tags (p br b u i s) in feed descriptions,
they are preserved in the wiki output after sanitizing.
improved code legibility function namespacePrefixedQuery
fix for ultra bug 30028 .
The RSS extension can parse RSS and ATOM feeds of different flavours.
The php xml dom xpath query uses now a namespace-safe method to find all elements like item (RSS, RDF)
or entry (ATOM).
Further fixed a hidden problem when the feed url was redirecting,
this threw the Cannot parse RSS for XML error, which is now history.
Introduced a new parameter wgRSSUrlNumberOfAllowedRedirects which defaults to zero,
i.e. no redirects are allowed by default. See Manual page
removed superfluous code for setting userAgent since r112466
function name typo correction. Version number update
fix for bug34763 'RSS feed items (HTML) are not rendered as HTML but htmlescaped';
tolerated controlled regression bug30377 'feed item length limitation',
because this now becomes very tricky when we allow some tags in order to close bug 34763.
add tracking category feature (enabled by default). Each page using this extensions gets
automatically the tracking category with MediaWiki:Rss-tracking-category name (= RSS).
Tracking-Cat-Feature can be disabled, or a different MediaWiki message text can be assigned.
Documentation of the switch is inline and follows on MediaWiki.
follow up r113508 : escaped html tag brackets to make translaters happy
beautifying the tracking category name
adding casts. better ?
removed the redundant code for handling tracking categories.
By using '-' for the message text rss-tracking-category , this can be disabled easily.
+ Patchset 11
rebased on master
+ Patchset 12
wrapped commit message text lines
version number bumped to 2.18
+ Patchset 13
improved and updated README
added history of the present version 2.18
+ Patchset 14
white space fixes
version number fixes
Change-Id: I2d9724314f94c216650370071b31390c5c2c97fc
2012-02-13 01:39:24 +00:00
|
|
|
foreach ( $item->childNodes as $n ) {
|
|
|
|
$name = $this->rssTokenToName( $n->nodeName );
|
|
|
|
if ( $name != null ) {
|
|
|
|
/**
|
|
|
|
* Because for DOMElements the nodeValue is just
|
|
|
|
* the text of the containing element, without any
|
|
|
|
* tags, it makes this a safe, if unattractive,
|
|
|
|
* value to use. If you want to allow people to
|
|
|
|
* mark up their RSS, some more precautions are
|
|
|
|
* needed.
|
|
|
|
*/
|
2013-10-17 21:37:46 +00:00
|
|
|
$bit[$name] = trim( $n->nodeValue );
|
2010-10-20 11:25:10 +00:00
|
|
|
}
|
2010-10-19 21:54:53 +00:00
|
|
|
}
|
version 2.18 + squashed commit RSS changes fromSVN
bump version number from 2.17 to 2.18 for the releas version
removed 4 white spaces tabs.
followed the advices of the code reviewer. removed an unwanted switch(true) structure
removed switch case by an assoc array, removed unneeded http factory comments Wikinaut 2013-01-04
removed unneeded INSTALL text file
new version 2.17 incl. code cosmetics. rebased on master bea4447d24ad33c115e64385ef8fc5a308b58188 2012-12-22
bear with me ! It's my first real-life commit to gerrit. Wikinaut, 2012-12-30
Catrope squashed these together per Wikinaut's request. List of commit
summaries:
adding the long-wanted date format attribute.
implemented a date format equalising function,
so that dates of RSS feeds are rendered in a common format.
follow-up r111347 : adding escapeTemplateParameter around the user supplied optional date attribute
fix for bug30377 : add a new parameter to limit the number of characters when rendering the channel item <description>
follow-up r111350 . check if optional parameter isset and is_numeric, otherwise limit to the built-in default (30000)
removed a wrong comment regarding PHP 5.3 function date_create_from_format,
which is not suited to auto-detect a time string in any formats - only strtotime() can do it.
follow-up r111350 r111351 . switch replaced by if elseif construct.
name and behaviour change of wgRSSAllowedFeeds towgRSSUrlWhitelist.
The wgRSSUrlWhitelist is _now_ empty by default which was not the case until this version.
Admins who want to allow their users to insert arbitrary feed urls must now denote this expressly
with an asterisk in quotes as whitelist array element.
This is harmonised to the same method as recently introduced in E:EtherpadLite.
The RELEASE NOTES file has been updated, updates to the MediaWiki manual page will follow soon.
increased wgRSSFetchTimeout default from 5 to 15 seconds - many sites are too slow.
v2.00 can parse ATOM feeds, at least some.
This is a major improvement over pre-2.00 versions which only could read and parse RSS feeds but no ATOM feeds.
Version 2.00 begins to keep care of namespaces in the XML.
The parser still leaves room for further improvements.
At least, E:RSS can now read E:WikiArticleFeeds generated RSS _and_ ATOM feeds.
v2.01 fixed ATOM summary element was forgotten to be parsed.
Added handling of basic HTML layout tags (p br b u i s) in feed descriptions,
they are preserved in the wiki output after sanitizing.
improved code legibility function namespacePrefixedQuery
fix for ultra bug 30028 .
The RSS extension can parse RSS and ATOM feeds of different flavours.
The php xml dom xpath query uses now a namespace-safe method to find all elements like item (RSS, RDF)
or entry (ATOM).
Further fixed a hidden problem when the feed url was redirecting,
this threw the Cannot parse RSS for XML error, which is now history.
Introduced a new parameter wgRSSUrlNumberOfAllowedRedirects which defaults to zero,
i.e. no redirects are allowed by default. See Manual page
removed superfluous code for setting userAgent since r112466
function name typo correction. Version number update
fix for bug34763 'RSS feed items (HTML) are not rendered as HTML but htmlescaped';
tolerated controlled regression bug30377 'feed item length limitation',
because this now becomes very tricky when we allow some tags in order to close bug 34763.
add tracking category feature (enabled by default). Each page using this extensions gets
automatically the tracking category with MediaWiki:Rss-tracking-category name (= RSS).
Tracking-Cat-Feature can be disabled, or a different MediaWiki message text can be assigned.
Documentation of the switch is inline and follows on MediaWiki.
follow up r113508 : escaped html tag brackets to make translaters happy
beautifying the tracking category name
adding casts. better ?
removed the redundant code for handling tracking categories.
By using '-' for the message text rss-tracking-category , this can be disabled easily.
+ Patchset 11
rebased on master
+ Patchset 12
wrapped commit message text lines
version number bumped to 2.18
+ Patchset 13
improved and updated README
added history of the present version 2.18
+ Patchset 14
white space fixes
version number fixes
Change-Id: I2d9724314f94c216650370071b31390c5c2c97fc
2012-02-13 01:39:24 +00:00
|
|
|
$this->items[] = $bit;
|
2010-10-19 21:54:53 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2010-11-04 23:19:00 +00:00
|
|
|
/**
|
|
|
|
* Return a string that will be used to map RSS elements that
|
|
|
|
* contain similar data (e.g. dc:date, date, and pubDate) to the
|
|
|
|
* same array key. This works on WordPress feeds as-is, but it
|
|
|
|
* probably needs a way to concert dc:date format dates to be the
|
|
|
|
* same as pubDate.
|
2010-11-05 00:59:28 +00:00
|
|
|
*
|
2017-10-14 15:23:24 +00:00
|
|
|
* @param string $name name of the element we have
|
2020-01-30 02:49:36 +00:00
|
|
|
* @return string|null Name to map it to
|
2010-11-04 23:19:00 +00:00
|
|
|
*/
|
version 2.18 + squashed commit RSS changes fromSVN
bump version number from 2.17 to 2.18 for the releas version
removed 4 white spaces tabs.
followed the advices of the code reviewer. removed an unwanted switch(true) structure
removed switch case by an assoc array, removed unneeded http factory comments Wikinaut 2013-01-04
removed unneeded INSTALL text file
new version 2.17 incl. code cosmetics. rebased on master bea4447d24ad33c115e64385ef8fc5a308b58188 2012-12-22
bear with me ! It's my first real-life commit to gerrit. Wikinaut, 2012-12-30
Catrope squashed these together per Wikinaut's request. List of commit
summaries:
adding the long-wanted date format attribute.
implemented a date format equalising function,
so that dates of RSS feeds are rendered in a common format.
follow-up r111347 : adding escapeTemplateParameter around the user supplied optional date attribute
fix for bug30377 : add a new parameter to limit the number of characters when rendering the channel item <description>
follow-up r111350 . check if optional parameter isset and is_numeric, otherwise limit to the built-in default (30000)
removed a wrong comment regarding PHP 5.3 function date_create_from_format,
which is not suited to auto-detect a time string in any formats - only strtotime() can do it.
follow-up r111350 r111351 . switch replaced by if elseif construct.
name and behaviour change of wgRSSAllowedFeeds towgRSSUrlWhitelist.
The wgRSSUrlWhitelist is _now_ empty by default which was not the case until this version.
Admins who want to allow their users to insert arbitrary feed urls must now denote this expressly
with an asterisk in quotes as whitelist array element.
This is harmonised to the same method as recently introduced in E:EtherpadLite.
The RELEASE NOTES file has been updated, updates to the MediaWiki manual page will follow soon.
increased wgRSSFetchTimeout default from 5 to 15 seconds - many sites are too slow.
v2.00 can parse ATOM feeds, at least some.
This is a major improvement over pre-2.00 versions which only could read and parse RSS feeds but no ATOM feeds.
Version 2.00 begins to keep care of namespaces in the XML.
The parser still leaves room for further improvements.
At least, E:RSS can now read E:WikiArticleFeeds generated RSS _and_ ATOM feeds.
v2.01 fixed ATOM summary element was forgotten to be parsed.
Added handling of basic HTML layout tags (p br b u i s) in feed descriptions,
they are preserved in the wiki output after sanitizing.
improved code legibility function namespacePrefixedQuery
fix for ultra bug 30028 .
The RSS extension can parse RSS and ATOM feeds of different flavours.
The php xml dom xpath query uses now a namespace-safe method to find all elements like item (RSS, RDF)
or entry (ATOM).
Further fixed a hidden problem when the feed url was redirecting,
this threw the Cannot parse RSS for XML error, which is now history.
Introduced a new parameter wgRSSUrlNumberOfAllowedRedirects which defaults to zero,
i.e. no redirects are allowed by default. See Manual page
removed superfluous code for setting userAgent since r112466
function name typo correction. Version number update
fix for bug34763 'RSS feed items (HTML) are not rendered as HTML but htmlescaped';
tolerated controlled regression bug30377 'feed item length limitation',
because this now becomes very tricky when we allow some tags in order to close bug 34763.
add tracking category feature (enabled by default). Each page using this extensions gets
automatically the tracking category with MediaWiki:Rss-tracking-category name (= RSS).
Tracking-Cat-Feature can be disabled, or a different MediaWiki message text can be assigned.
Documentation of the switch is inline and follows on MediaWiki.
follow up r113508 : escaped html tag brackets to make translaters happy
beautifying the tracking category name
adding casts. better ?
removed the redundant code for handling tracking categories.
By using '-' for the message text rss-tracking-category , this can be disabled easily.
+ Patchset 11
rebased on master
+ Patchset 12
wrapped commit message text lines
version number bumped to 2.18
+ Patchset 13
improved and updated README
added history of the present version 2.18
+ Patchset 14
white space fixes
version number fixes
Change-Id: I2d9724314f94c216650370071b31390c5c2c97fc
2012-02-13 01:39:24 +00:00
|
|
|
protected function rssTokenToName( $name ) {
|
2017-05-20 21:41:06 +00:00
|
|
|
$tokenNames = [
|
version 2.18 + squashed commit RSS changes fromSVN
bump version number from 2.17 to 2.18 for the releas version
removed 4 white spaces tabs.
followed the advices of the code reviewer. removed an unwanted switch(true) structure
removed switch case by an assoc array, removed unneeded http factory comments Wikinaut 2013-01-04
removed unneeded INSTALL text file
new version 2.17 incl. code cosmetics. rebased on master bea4447d24ad33c115e64385ef8fc5a308b58188 2012-12-22
bear with me ! It's my first real-life commit to gerrit. Wikinaut, 2012-12-30
Catrope squashed these together per Wikinaut's request. List of commit
summaries:
adding the long-wanted date format attribute.
implemented a date format equalising function,
so that dates of RSS feeds are rendered in a common format.
follow-up r111347 : adding escapeTemplateParameter around the user supplied optional date attribute
fix for bug30377 : add a new parameter to limit the number of characters when rendering the channel item <description>
follow-up r111350 . check if optional parameter isset and is_numeric, otherwise limit to the built-in default (30000)
removed a wrong comment regarding PHP 5.3 function date_create_from_format,
which is not suited to auto-detect a time string in any formats - only strtotime() can do it.
follow-up r111350 r111351 . switch replaced by if elseif construct.
name and behaviour change of wgRSSAllowedFeeds towgRSSUrlWhitelist.
The wgRSSUrlWhitelist is _now_ empty by default which was not the case until this version.
Admins who want to allow their users to insert arbitrary feed urls must now denote this expressly
with an asterisk in quotes as whitelist array element.
This is harmonised to the same method as recently introduced in E:EtherpadLite.
The RELEASE NOTES file has been updated, updates to the MediaWiki manual page will follow soon.
increased wgRSSFetchTimeout default from 5 to 15 seconds - many sites are too slow.
v2.00 can parse ATOM feeds, at least some.
This is a major improvement over pre-2.00 versions which only could read and parse RSS feeds but no ATOM feeds.
Version 2.00 begins to keep care of namespaces in the XML.
The parser still leaves room for further improvements.
At least, E:RSS can now read E:WikiArticleFeeds generated RSS _and_ ATOM feeds.
v2.01 fixed ATOM summary element was forgotten to be parsed.
Added handling of basic HTML layout tags (p br b u i s) in feed descriptions,
they are preserved in the wiki output after sanitizing.
improved code legibility function namespacePrefixedQuery
fix for ultra bug 30028 .
The RSS extension can parse RSS and ATOM feeds of different flavours.
The php xml dom xpath query uses now a namespace-safe method to find all elements like item (RSS, RDF)
or entry (ATOM).
Further fixed a hidden problem when the feed url was redirecting,
this threw the Cannot parse RSS for XML error, which is now history.
Introduced a new parameter wgRSSUrlNumberOfAllowedRedirects which defaults to zero,
i.e. no redirects are allowed by default. See Manual page
removed superfluous code for setting userAgent since r112466
function name typo correction. Version number update
fix for bug34763 'RSS feed items (HTML) are not rendered as HTML but htmlescaped';
tolerated controlled regression bug30377 'feed item length limitation',
because this now becomes very tricky when we allow some tags in order to close bug 34763.
add tracking category feature (enabled by default). Each page using this extensions gets
automatically the tracking category with MediaWiki:Rss-tracking-category name (= RSS).
Tracking-Cat-Feature can be disabled, or a different MediaWiki message text can be assigned.
Documentation of the switch is inline and follows on MediaWiki.
follow up r113508 : escaped html tag brackets to make translaters happy
beautifying the tracking category name
adding casts. better ?
removed the redundant code for handling tracking categories.
By using '-' for the message text rss-tracking-category , this can be disabled easily.
+ Patchset 11
rebased on master
+ Patchset 12
wrapped commit message text lines
version number bumped to 2.18
+ Patchset 13
improved and updated README
added history of the present version 2.18
+ Patchset 14
white space fixes
version number fixes
Change-Id: I2d9724314f94c216650370071b31390c5c2c97fc
2012-02-13 01:39:24 +00:00
|
|
|
'dc:date' => 'date',
|
|
|
|
'pubDate' => 'date',
|
|
|
|
'updated' => 'date',
|
|
|
|
'dc:creator' => 'author',
|
|
|
|
'summary' => 'description',
|
|
|
|
'content:encoded' => 'encodedContent',
|
|
|
|
'category' => null,
|
|
|
|
'comments' => null,
|
|
|
|
'feedburner:origLink' => null,
|
|
|
|
'slash:comments' => null,
|
|
|
|
'slash:department' => null,
|
|
|
|
'slash:hit_parade' => null,
|
|
|
|
'slash:section' => null,
|
|
|
|
'wfw:commentRss' => null,
|
2017-05-20 21:41:06 +00:00
|
|
|
];
|
Revert r111347, r111348, r111350, r111351, r111515, r111816, r112243, r112251, r112308, r112314, r112315, r112465, r112467, r112709, r113297, r113508, r113510, r113524, r113546, r114168. Unreviewed revisions in the RSS extension and their dependencies.
All of these revisions are tagged with 'gerritmigration' and will be resubmitted into Gerrit after the Gerrit switchover. See also http://lists.wikimedia.org/pipermail/wikitech-l/2012-March/059124.html
2012-03-21 18:40:06 +00:00
|
|
|
|
version 2.18 + squashed commit RSS changes fromSVN
bump version number from 2.17 to 2.18 for the releas version
removed 4 white spaces tabs.
followed the advices of the code reviewer. removed an unwanted switch(true) structure
removed switch case by an assoc array, removed unneeded http factory comments Wikinaut 2013-01-04
removed unneeded INSTALL text file
new version 2.17 incl. code cosmetics. rebased on master bea4447d24ad33c115e64385ef8fc5a308b58188 2012-12-22
bear with me ! It's my first real-life commit to gerrit. Wikinaut, 2012-12-30
Catrope squashed these together per Wikinaut's request. List of commit
summaries:
adding the long-wanted date format attribute.
implemented a date format equalising function,
so that dates of RSS feeds are rendered in a common format.
follow-up r111347 : adding escapeTemplateParameter around the user supplied optional date attribute
fix for bug30377 : add a new parameter to limit the number of characters when rendering the channel item <description>
follow-up r111350 . check if optional parameter isset and is_numeric, otherwise limit to the built-in default (30000)
removed a wrong comment regarding PHP 5.3 function date_create_from_format,
which is not suited to auto-detect a time string in any formats - only strtotime() can do it.
follow-up r111350 r111351 . switch replaced by if elseif construct.
name and behaviour change of wgRSSAllowedFeeds towgRSSUrlWhitelist.
The wgRSSUrlWhitelist is _now_ empty by default which was not the case until this version.
Admins who want to allow their users to insert arbitrary feed urls must now denote this expressly
with an asterisk in quotes as whitelist array element.
This is harmonised to the same method as recently introduced in E:EtherpadLite.
The RELEASE NOTES file has been updated, updates to the MediaWiki manual page will follow soon.
increased wgRSSFetchTimeout default from 5 to 15 seconds - many sites are too slow.
v2.00 can parse ATOM feeds, at least some.
This is a major improvement over pre-2.00 versions which only could read and parse RSS feeds but no ATOM feeds.
Version 2.00 begins to keep care of namespaces in the XML.
The parser still leaves room for further improvements.
At least, E:RSS can now read E:WikiArticleFeeds generated RSS _and_ ATOM feeds.
v2.01 fixed ATOM summary element was forgotten to be parsed.
Added handling of basic HTML layout tags (p br b u i s) in feed descriptions,
they are preserved in the wiki output after sanitizing.
improved code legibility function namespacePrefixedQuery
fix for ultra bug 30028 .
The RSS extension can parse RSS and ATOM feeds of different flavours.
The php xml dom xpath query uses now a namespace-safe method to find all elements like item (RSS, RDF)
or entry (ATOM).
Further fixed a hidden problem when the feed url was redirecting,
this threw the Cannot parse RSS for XML error, which is now history.
Introduced a new parameter wgRSSUrlNumberOfAllowedRedirects which defaults to zero,
i.e. no redirects are allowed by default. See Manual page
removed superfluous code for setting userAgent since r112466
function name typo correction. Version number update
fix for bug34763 'RSS feed items (HTML) are not rendered as HTML but htmlescaped';
tolerated controlled regression bug30377 'feed item length limitation',
because this now becomes very tricky when we allow some tags in order to close bug 34763.
add tracking category feature (enabled by default). Each page using this extensions gets
automatically the tracking category with MediaWiki:Rss-tracking-category name (= RSS).
Tracking-Cat-Feature can be disabled, or a different MediaWiki message text can be assigned.
Documentation of the switch is inline and follows on MediaWiki.
follow up r113508 : escaped html tag brackets to make translaters happy
beautifying the tracking category name
adding casts. better ?
removed the redundant code for handling tracking categories.
By using '-' for the message text rss-tracking-category , this can be disabled easily.
+ Patchset 11
rebased on master
+ Patchset 12
wrapped commit message text lines
version number bumped to 2.18
+ Patchset 13
improved and updated README
added history of the present version 2.18
+ Patchset 14
white space fixes
version number fixes
Change-Id: I2d9724314f94c216650370071b31390c5c2c97fc
2012-02-13 01:39:24 +00:00
|
|
|
if ( array_key_exists( $name, $tokenNames ) ) {
|
|
|
|
return $tokenNames[ $name ];
|
2010-10-19 21:54:53 +00:00
|
|
|
}
|
version 2.18 + squashed commit RSS changes fromSVN
bump version number from 2.17 to 2.18 for the releas version
removed 4 white spaces tabs.
followed the advices of the code reviewer. removed an unwanted switch(true) structure
removed switch case by an assoc array, removed unneeded http factory comments Wikinaut 2013-01-04
removed unneeded INSTALL text file
new version 2.17 incl. code cosmetics. rebased on master bea4447d24ad33c115e64385ef8fc5a308b58188 2012-12-22
bear with me ! It's my first real-life commit to gerrit. Wikinaut, 2012-12-30
Catrope squashed these together per Wikinaut's request. List of commit
summaries:
adding the long-wanted date format attribute.
implemented a date format equalising function,
so that dates of RSS feeds are rendered in a common format.
follow-up r111347 : adding escapeTemplateParameter around the user supplied optional date attribute
fix for bug30377 : add a new parameter to limit the number of characters when rendering the channel item <description>
follow-up r111350 . check if optional parameter isset and is_numeric, otherwise limit to the built-in default (30000)
removed a wrong comment regarding PHP 5.3 function date_create_from_format,
which is not suited to auto-detect a time string in any formats - only strtotime() can do it.
follow-up r111350 r111351 . switch replaced by if elseif construct.
name and behaviour change of wgRSSAllowedFeeds towgRSSUrlWhitelist.
The wgRSSUrlWhitelist is _now_ empty by default which was not the case until this version.
Admins who want to allow their users to insert arbitrary feed urls must now denote this expressly
with an asterisk in quotes as whitelist array element.
This is harmonised to the same method as recently introduced in E:EtherpadLite.
The RELEASE NOTES file has been updated, updates to the MediaWiki manual page will follow soon.
increased wgRSSFetchTimeout default from 5 to 15 seconds - many sites are too slow.
v2.00 can parse ATOM feeds, at least some.
This is a major improvement over pre-2.00 versions which only could read and parse RSS feeds but no ATOM feeds.
Version 2.00 begins to keep care of namespaces in the XML.
The parser still leaves room for further improvements.
At least, E:RSS can now read E:WikiArticleFeeds generated RSS _and_ ATOM feeds.
v2.01 fixed ATOM summary element was forgotten to be parsed.
Added handling of basic HTML layout tags (p br b u i s) in feed descriptions,
they are preserved in the wiki output after sanitizing.
improved code legibility function namespacePrefixedQuery
fix for ultra bug 30028 .
The RSS extension can parse RSS and ATOM feeds of different flavours.
The php xml dom xpath query uses now a namespace-safe method to find all elements like item (RSS, RDF)
or entry (ATOM).
Further fixed a hidden problem when the feed url was redirecting,
this threw the Cannot parse RSS for XML error, which is now history.
Introduced a new parameter wgRSSUrlNumberOfAllowedRedirects which defaults to zero,
i.e. no redirects are allowed by default. See Manual page
removed superfluous code for setting userAgent since r112466
function name typo correction. Version number update
fix for bug34763 'RSS feed items (HTML) are not rendered as HTML but htmlescaped';
tolerated controlled regression bug30377 'feed item length limitation',
because this now becomes very tricky when we allow some tags in order to close bug 34763.
add tracking category feature (enabled by default). Each page using this extensions gets
automatically the tracking category with MediaWiki:Rss-tracking-category name (= RSS).
Tracking-Cat-Feature can be disabled, or a different MediaWiki message text can be assigned.
Documentation of the switch is inline and follows on MediaWiki.
follow up r113508 : escaped html tag brackets to make translaters happy
beautifying the tracking category name
adding casts. better ?
removed the redundant code for handling tracking categories.
By using '-' for the message text rss-tracking-category , this can be disabled easily.
+ Patchset 11
rebased on master
+ Patchset 12
wrapped commit message text lines
version number bumped to 2.18
+ Patchset 13
improved and updated README
added history of the present version 2.18
+ Patchset 14
white space fixes
version number fixes
Change-Id: I2d9724314f94c216650370071b31390c5c2c97fc
2012-02-13 01:39:24 +00:00
|
|
|
|
2020-01-30 02:49:36 +00:00
|
|
|
return $name;
|
2010-10-19 21:54:53 +00:00
|
|
|
}
|
version 2.18 + squashed commit RSS changes fromSVN
bump version number from 2.17 to 2.18 for the releas version
removed 4 white spaces tabs.
followed the advices of the code reviewer. removed an unwanted switch(true) structure
removed switch case by an assoc array, removed unneeded http factory comments Wikinaut 2013-01-04
removed unneeded INSTALL text file
new version 2.17 incl. code cosmetics. rebased on master bea4447d24ad33c115e64385ef8fc5a308b58188 2012-12-22
bear with me ! It's my first real-life commit to gerrit. Wikinaut, 2012-12-30
Catrope squashed these together per Wikinaut's request. List of commit
summaries:
adding the long-wanted date format attribute.
implemented a date format equalising function,
so that dates of RSS feeds are rendered in a common format.
follow-up r111347 : adding escapeTemplateParameter around the user supplied optional date attribute
fix for bug30377 : add a new parameter to limit the number of characters when rendering the channel item <description>
follow-up r111350 . check if optional parameter isset and is_numeric, otherwise limit to the built-in default (30000)
removed a wrong comment regarding PHP 5.3 function date_create_from_format,
which is not suited to auto-detect a time string in any formats - only strtotime() can do it.
follow-up r111350 r111351 . switch replaced by if elseif construct.
name and behaviour change of wgRSSAllowedFeeds towgRSSUrlWhitelist.
The wgRSSUrlWhitelist is _now_ empty by default which was not the case until this version.
Admins who want to allow their users to insert arbitrary feed urls must now denote this expressly
with an asterisk in quotes as whitelist array element.
This is harmonised to the same method as recently introduced in E:EtherpadLite.
The RELEASE NOTES file has been updated, updates to the MediaWiki manual page will follow soon.
increased wgRSSFetchTimeout default from 5 to 15 seconds - many sites are too slow.
v2.00 can parse ATOM feeds, at least some.
This is a major improvement over pre-2.00 versions which only could read and parse RSS feeds but no ATOM feeds.
Version 2.00 begins to keep care of namespaces in the XML.
The parser still leaves room for further improvements.
At least, E:RSS can now read E:WikiArticleFeeds generated RSS _and_ ATOM feeds.
v2.01 fixed ATOM summary element was forgotten to be parsed.
Added handling of basic HTML layout tags (p br b u i s) in feed descriptions,
they are preserved in the wiki output after sanitizing.
improved code legibility function namespacePrefixedQuery
fix for ultra bug 30028 .
The RSS extension can parse RSS and ATOM feeds of different flavours.
The php xml dom xpath query uses now a namespace-safe method to find all elements like item (RSS, RDF)
or entry (ATOM).
Further fixed a hidden problem when the feed url was redirecting,
this threw the Cannot parse RSS for XML error, which is now history.
Introduced a new parameter wgRSSUrlNumberOfAllowedRedirects which defaults to zero,
i.e. no redirects are allowed by default. See Manual page
removed superfluous code for setting userAgent since r112466
function name typo correction. Version number update
fix for bug34763 'RSS feed items (HTML) are not rendered as HTML but htmlescaped';
tolerated controlled regression bug30377 'feed item length limitation',
because this now becomes very tricky when we allow some tags in order to close bug 34763.
add tracking category feature (enabled by default). Each page using this extensions gets
automatically the tracking category with MediaWiki:Rss-tracking-category name (= RSS).
Tracking-Cat-Feature can be disabled, or a different MediaWiki message text can be assigned.
Documentation of the switch is inline and follows on MediaWiki.
follow up r113508 : escaped html tag brackets to make translaters happy
beautifying the tracking category name
adding casts. better ?
removed the redundant code for handling tracking categories.
By using '-' for the message text rss-tracking-category , this can be disabled easily.
+ Patchset 11
rebased on master
+ Patchset 12
wrapped commit message text lines
version number bumped to 2.18
+ Patchset 13
improved and updated README
added history of the present version 2.18
+ Patchset 14
white space fixes
version number fixes
Change-Id: I2d9724314f94c216650370071b31390c5c2c97fc
2012-02-13 01:39:24 +00:00
|
|
|
|
2012-10-07 10:11:49 +00:00
|
|
|
}
|