From 80fe041f320172244b839a2db2a3439f6138f278 Mon Sep 17 00:00:00 2001 From: ORelio Date: Fri, 4 Sep 2015 18:11:00 +0200 Subject: [PATCH 1/2] 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++; + } } } From 88bf15e46cdcb21c6b010fd1e77462a40486bcc3 Mon Sep 17 00:00:00 2001 From: ORelio Date: Fri, 4 Sep 2015 18:33:22 +0200 Subject: [PATCH 2/2] Add Author into MrssFormat --- formats/MrssFormat.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/formats/MrssFormat.php b/formats/MrssFormat.php index 0753059f..a5e6cd20 100644 --- a/formats/MrssFormat.php +++ b/formats/MrssFormat.php @@ -24,6 +24,7 @@ class MrssFormat extends FormatAbstract{ foreach($this->getDatas() as $data){ $itemTitle = strip_tags(is_null($data->title) ? '' : $data->title); $itemUri = is_null($data->uri) ? '' : $data->uri; + $itemAuthor = is_null($data->author) ? '' : $data->author; $itemThumbnailUri = is_null($data->thumbnailUri) ? '' : $data->thumbnailUri; $itemTimestamp = is_null($data->timestamp) ? '' : date(DATE_RFC2822, $data->timestamp); // We prevent content from closing the CDATA too early. @@ -37,6 +38,7 @@ class MrssFormat extends FormatAbstract{ {$itemUri} {$itemTimestamp} {$itemContent} + {$itemAuthor} {$itemTitle}