summaryrefslogtreecommitdiff
path: root/config/services/web/rss/FipAlbumsBridge.php
diff options
context:
space:
mode:
Diffstat (limited to 'config/services/web/rss/FipAlbumsBridge.php')
-rw-r--r--config/services/web/rss/FipAlbumsBridge.php27
1 files changed, 21 insertions, 6 deletions
diff --git a/config/services/web/rss/FipAlbumsBridge.php b/config/services/web/rss/FipAlbumsBridge.php
index b8ec64d..aa5e597 100644
--- a/config/services/web/rss/FipAlbumsBridge.php
+++ b/config/services/web/rss/FipAlbumsBridge.php
@@ -1,5 +1,14 @@
<?php
+$GLOBALS['DATE_FORMATTER'] = new IntlDateFormatter(
+ 'fr-FR',
+ IntlDateFormatter::FULL,
+ IntlDateFormatter::SHORT,
+ 'Etc/UTC',
+ IntlDateFormatter::GREGORIAN,
+ "d MMMM y"
+);
+
class FipAlbumsBridge extends XPathAbstract {
const NAME = 'Fip Albums Bridge';
const URI = 'https://www.radiofrance.fr/fip/albums/';
@@ -18,14 +27,14 @@ class FipAlbumsBridge extends XPathAbstract {
]
];
- const XPATH_EXPRESSION_ITEM = '//div[starts-with(@class, "CardAlbum ")]';
- const XPATH_EXPRESSION_ITEM_TITLE = './/a/@title';
+ const XPATH_EXPRESSION_ITEM = '//div[starts-with(@class, "CardSide ")]';
+ const XPATH_EXPRESSION_ITEM_TITLE = './/a/@aria-label';
const XPATH_EXPRESSION_ITEM_CONTENT = './/img/@alt';
const XPATH_EXPRESSION_ITEM_URI = './/a/@href';
- const XPATH_EXPRESSION_ITEM_AUTHOR = './/div[starts-with(@class, "CardAlbum-details ")]/div[2]';
- const XPATH_EXPRESSION_ITEM_TIMESTAMP = './/time/@datetime';
+ const XPATH_EXPRESSION_ITEM_AUTHOR = './/div[starts-with(@class, "title-zone ")]/p[2]/text()';
+ const XPATH_EXPRESSION_ITEM_TIMESTAMP = './/div[starts-with(@class, "AdditionalInfos ")]/p[1]/text()';
const XPATH_EXPRESSION_ITEM_ENCLOSURES = './/img/@src';
- const XPATH_EXPRESSION_ITEM_CATEGORIES = './/div[starts-with(@class, "CardDetails-label ")]/span[2]';
+ const XPATH_EXPRESSION_ITEM_CATEGORIES = './/div[starts-with(@class, "AdditionalInfos ")]/p[2]/text()';
public function getSourceUrl() {
return self::URI . $this->getInput('category');
@@ -36,6 +45,12 @@ class FipAlbumsBridge extends XPathAbstract {
}
protected function formatItemTimestamp($value) {
- return strtotime('today +' . $value);
+ $monthyear = explode(": ", $value)[1];
+ return $GLOBALS['DATE_FORMATTER']->parse('1 ' . $monthyear);
+ }
+
+ # enclosure links don't have an extension
+ protected function cleanMediaUrl($mediaUrl) {
+ return $mediaUrl;
}
}