2014-05-26 00:30:46 +02:00
|
|
|
<?php
|
2016-02-26 19:41:35 +01:00
|
|
|
class AcrimedBridge extends RssExpander{
|
2015-11-03 23:28:44 +01:00
|
|
|
|
2015-11-03 15:36:19 +01:00
|
|
|
|
2016-08-30 11:23:55 +02:00
|
|
|
const MAINTAINER = "qwertygc";
|
|
|
|
const NAME = "Acrimed Bridge";
|
|
|
|
const URI = "http://www.acrimed.org/";
|
|
|
|
const DESCRIPTION = "Returns the newest articles.";
|
2016-02-26 19:41:35 +01:00
|
|
|
|
2016-08-25 01:24:53 +02:00
|
|
|
public function collectData(){
|
2014-05-26 00:30:46 +02:00
|
|
|
|
2016-09-01 23:48:50 +02:00
|
|
|
$this->collectExpandableDatas(static::URI.'spip.php?page=backend');
|
2016-02-26 19:41:35 +01:00
|
|
|
|
2014-05-26 00:30:46 +02:00
|
|
|
}
|
2016-08-25 17:11:49 +02:00
|
|
|
|
2016-02-26 19:41:35 +01:00
|
|
|
protected function parseRSSItem($newsItem) {
|
|
|
|
|
|
|
|
$hs = new HTMLSanitizer();
|
|
|
|
|
|
|
|
$namespaces = $newsItem->getNameSpaces(true);
|
|
|
|
$dc = $newsItem->children($namespaces['dc']);
|
|
|
|
|
2016-08-22 18:55:59 +02:00
|
|
|
$item = array();
|
|
|
|
$item['uri'] = trim($newsItem->link);
|
|
|
|
$item['title'] = trim($newsItem->title);
|
|
|
|
$item['timestamp'] = strtotime($dc->date);
|
2016-02-26 19:41:35 +01:00
|
|
|
|
2016-07-08 19:06:35 +02:00
|
|
|
$articlePage = $this->getSimpleHTMLDOM($newsItem->link);
|
2016-02-26 19:41:35 +01:00
|
|
|
$article = $hs->sanitize($articlePage->find('article.article1', 0)->innertext);
|
2016-09-01 23:48:50 +02:00
|
|
|
$article = HTMLSanitizer::defaultImageSrcTo($article, static::URI);
|
2016-02-26 19:41:35 +01:00
|
|
|
|
2016-08-22 18:55:59 +02:00
|
|
|
$item['content'] = $article;
|
2016-02-26 19:41:35 +01:00
|
|
|
|
|
|
|
|
|
|
|
return $item;
|
|
|
|
|
|
|
|
}
|
2014-05-26 00:30:46 +02:00
|
|
|
|
|
|
|
public function getCacheDuration(){
|
2016-02-26 19:42:52 +01:00
|
|
|
return 4800; // 2 hours
|
2014-05-26 00:30:46 +02:00
|
|
|
}
|
|
|
|
}
|