rss-bridge/bridges/LesJoiesDuCodeBridge.php

54 lines
1.5 KiB
PHP
Raw Normal View History

<?php
class LesJoiesDuCodeBridge extends BridgeAbstract{
public function loadMetadatas() {
$this->maintainer = "superbaillot.net";
$this->name = "Les Joies Du Code";
$this->uri = "http://lesjoiesducode.fr/";
$this->description = "LesJoiesDuCode";
}
public function collectData(array $param){
$html = $this->getSimpleHTMLDOM('http://lesjoiesducode.fr/') or $this->returnServerError('Could not request LesJoiesDuCode.');
2015-10-14 00:28:38 +03:00
foreach($html->find('div.blog-post') as $element) {
$item = array();
2015-10-14 00:28:38 +03:00
$temp = $element->find('h1 a', 0);
$titre = html_entity_decode($temp->innertext);
$url = $temp->href;
2015-10-14 00:28:38 +03:00
$temp = $element->find('div.blog-post-content', 0);
// retrieve .gif instead of static .jpg
2015-10-14 00:28:38 +03:00
$images = $temp->find('p img');
foreach($images as $image){
$img_src = str_replace(".jpg",".gif",$image->src);
$image->src = $img_src;
}
$content = $temp->innertext;
$auteur = $temp->find('i', 0);
$pos = strpos($auteur->innertext, "by");
if($pos > 0)
{
$auteur = trim(str_replace("*/", "", substr($auteur->innertext, ($pos + 2))));
$item['author'] = $auteur;
}
$item['content'] .= trim($content);
$item['uri'] = $url;
$item['title'] = trim($titre);
$this->items[] = $item;
}
}
public function getCacheDuration(){
return 7200; // 2h hours
}
}