Skip to content

Commit

Permalink
[CourrierInternationalBridge] Switch to FeedExpander (fix #778)
Browse files Browse the repository at this point in the history
  • Loading branch information
corenting committed May 7, 2021
1 parent 378f78d commit 9edc90b
Showing 1 changed file with 13 additions and 41 deletions.
54 changes: 13 additions & 41 deletions bridges/CourrierInternationalBridge.php
Original file line number Diff line number Diff line change
@@ -1,55 +1,27 @@
<?php
class CourrierInternationalBridge extends BridgeAbstract {
class CourrierInternationalBridge extends FeedExpander {

const MAINTAINER = 'teromene';
const NAME = 'Courrier International Bridge';
const URI = 'https://www.courrierinternational.com/';
const CACHE_TIMEOUT = 300; // 5 min
const DESCRIPTION = 'Courrier International bridge';
const DESCRIPTION = 'Returns the newest articles';

public function collectData(){
$html = getSimpleHTMLDOM(self::URI)
or returnServerError('Error.');

$element = $html->find('article');
$article_count = 1;

foreach($element as $article) {
$item = array();

$item['uri'] = $article->parent->getAttribute('href');

if(strpos($item['uri'], 'http') === false) {
$item['uri'] = self::URI . $item['uri'];
}

$page = getSimpleHTMLDOMCached($item['uri']);

$content = $page->find('.article-text', 0);

if(!$content) {
$content = $page->find('.depeche-text', 0);
}

$item['content'] = sanitize($content);
$item['title'] = strip_tags($article->find('.title', 0));
$this->collectExpandableDatas(static::URI . 'feed/all/rss.xml', 20);
}

$dateTime = date_parse($page->find('time', 0));
protected function parseItem($feedItem){
$item = parent::parseItem($feedItem);

$item['timestamp'] = mktime(
$dateTime['hour'],
$dateTime['minute'],
$dateTime['second'],
$dateTime['month'],
$dateTime['day'],
$dateTime['year']
);
$articlePage = getSimpleHTMLDOMCached($feedItem->link);
$content = $articlePage->find('.article-text', 0);
if(!$content) {
$content = $articlePage->find('.depeche-text', 0);
}

$this->items[] = $item;
$article_count ++;
$item['content'] = sanitize($content);

if($article_count > 5)
break;
}
return $item;
}
}

0 comments on commit 9edc90b

Please sign in to comment.