mirror of
https://github.com/moodle/moodle.git
synced 2025-08-05 17:06:53 +02:00
RSS update and caching broken for some feeds MDL-7045; merged from MOODLE_17_STABLE
This commit is contained in:
parent
d543939cd9
commit
a32a53d2a4
2 changed files with 21 additions and 7 deletions
|
@ -2,4 +2,17 @@ This folder is the MagpieRSS news feed client library
|
||||||
http://magpierss.sourceforge.net/
|
http://magpierss.sourceforge.net/
|
||||||
Moodle's rss_client block uses these libraries to download, parse and cache remote new feeds.
|
Moodle's rss_client block uses these libraries to download, parse and cache remote new feeds.
|
||||||
|
|
||||||
Magpie version 0.72 added to Moodle 1.6dev on 20051213
|
Magpie version 0.72 added to Moodle 1.6dev on 20051213
|
||||||
|
|
||||||
|
=============================================================
|
||||||
|
Changes - see MDL-7045:
|
||||||
|
* ETag and Last-Modified http field names are not case sensitive anymore - should improve caching
|
||||||
|
* Fixed some minor undefined warnings
|
||||||
|
* Tralining newlines are stripped from ETag and Last-Modified headers (discovered by Matthew Bockol),
|
||||||
|
we should be sending valid headers when fetching feed updates now, yay!
|
||||||
|
|
||||||
|
|
||||||
|
Fixes not reported upstream yet.
|
||||||
|
|
||||||
|
skodak
|
||||||
|
16 October 2006
|
|
@ -163,7 +163,7 @@ function fetch_rss ($url, $postdata=null) {
|
||||||
// setup headers
|
// setup headers
|
||||||
if ( $cache_status == 'STALE' ) {
|
if ( $cache_status == 'STALE' ) {
|
||||||
$rss = $cache->get( $cache_key );
|
$rss = $cache->get( $cache_key );
|
||||||
if ( $rss and $rss->etag and $rss->last_modified ) {
|
if ( $rss and !empty($rss->etag) and !empty($rss->last_modified) ) { // moodle fixes
|
||||||
$request_headers['If-None-Match'] = $rss->etag;
|
$request_headers['If-None-Match'] = $rss->etag;
|
||||||
$request_headers['If-Last-Modified'] = $rss->last_modified;
|
$request_headers['If-Last-Modified'] = $rss->last_modified;
|
||||||
}
|
}
|
||||||
|
@ -318,14 +318,15 @@ function _response_to_rss ($resp) {
|
||||||
$field = $h;
|
$field = $h;
|
||||||
$val = "";
|
$val = "";
|
||||||
}
|
}
|
||||||
|
// start of moodle modification
|
||||||
if ( $field == 'ETag' ) {
|
if ( strtolower($field) == 'etag' ) { // field names are case insensitive - sites are sending Etag, ETag, etc.
|
||||||
$rss->etag = $val;
|
$rss->etag = rtrim($val); // trailing newline problem discovered by Matthew Bockol
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( $field == 'Last-Modified' ) {
|
if ( strtolower($field) == 'last-modified' ) { // field names are case insensitive
|
||||||
$rss->last_modified = $val;
|
$rss->last_modified = rtrim($val); // we do not want any whitespace after it
|
||||||
}
|
}
|
||||||
|
// end of moodle modification
|
||||||
}
|
}
|
||||||
|
|
||||||
return $rss;
|
return $rss;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue