From 80fe041f320172244b839a2db2a3439f6138f278 Mon Sep 17 00:00:00 2001 From: ORelio Date: Fri, 4 Sep 2015 18:11:00 +0200 Subject: [PATCH] NextImpactBridge Improvements - Add subtitle - Add news main image - Add thumbnail rss field - Add author rss field - Minor code cleanup --- bridges/NextInpactBridge.php | 35 ++++++++++++++++++++--------------- 1 file changed, 20 insertions(+), 15 deletions(-) diff --git a/bridges/NextInpactBridge.php b/bridges/NextInpactBridge.php index ac1ec0fd..16126fda 100644 --- a/bridges/NextInpactBridge.php +++ b/bridges/NextInpactBridge.php @@ -9,34 +9,39 @@ * @description Returns the newest articles. * @maintainer qwertygc */ -class NextInpactBridge extends BridgeAbstract{ +class NextInpactBridge extends BridgeAbstract { - public function collectData(array $param){ + public function collectData(array $param) { - function StripCDATA($string) { + function StripCDATA($string) { $string = str_replace('', '', $string); return $string; } + function ExtractContent($url) { - $html2 = file_get_html($url); - $text = '

'.$html2->find('div#actu_entete > h2', 0)->innertext.'



'; - $text = $text.$html2->find('div[itemprop=articleBody]', 0)->innertext; - return $text; + $html2 = file_get_html($url); + $text = '

'.$html2->find('span.sub_title', 0)->innertext.'

' + .'

' + .'
'.$html2->find('div[itemprop=articleBody]', 0)->innertext.'
'; + return $text; } + $html = file_get_html('http://www.nextinpact.com/rss/news.xml') or $this->returnError('Could not request Nextinpact.', 404); $limit = 0; foreach($html->find('item') as $element) { if($limit < 3) { - $item = new \Item(); - $item->title = StripCDATA($element->find('title', 0)->innertext); - $item->uri = StripCDATA($element->find('guid', 0)->plaintext); - $item->timestamp = strtotime($element->find('pubDate', 0)->plaintext); - $item->content = ExtractContent($item->uri); - $this->items[] = $item; - $limit++; - } + $item = new \Item(); + $item->title = StripCDATA($element->find('title', 0)->innertext); + $item->uri = StripCDATA($element->find('guid', 0)->plaintext); + $item->thumbnailUri = StripCDATA($element->find('enclosure', 0)->url); + $item->author = StripCDATA($element->find('author', 0)->innertext); + $item->timestamp = strtotime($element->find('pubDate', 0)->plaintext); + $item->content = ExtractContent($item->uri); + $this->items[] = $item; + $limit++; + } } }