rss-bridge/bridges/ProjectMGameBridge.php

48 lines
1.3 KiB
PHP
Raw Normal View History

2014-08-27 19:37:38 +04:00
<?php
class ProjectMGameBridge extends BridgeAbstract{
2014-08-27 20:23:43 +04:00
2015-11-04 12:47:21 +03:00
public function loadMetadatas() {
$this->maintainer = "corenting";
$this->name = "Project M Game Bridge";
$this->uri = "http://projectmgame.com/en/";
$this->description = "Returns the newest articles.";
$this->update = "2014-08-27";
}
2014-08-27 19:37:38 +04:00
public function collectData(array $param){
$html = '';
$html = $this->file_get_html('http://projectmgame.com/en/') or $this->returnError('Error while downloading the Project M homepage', 404);
2014-08-27 19:37:38 +04:00
foreach($html->find('article') as $article) {
$item = new \Item();
$item->uri = 'http://projectmgame.com/en/'.$article->find('section div.info_block a',0)->href;
$item->title = $article->find('h1 p',0)->innertext;
$p_list = $article->find('section p');
$content = '';
2014-08-27 20:23:43 +04:00
foreach($p_list as $p) $content .= $p->innertext;
2014-08-27 19:37:38 +04:00
$item->content = $content;
// get publication date
$str_date = $article->find('section div.info_block a',0)->innertext;
2014-08-27 20:23:43 +04:00
$item->timestamp = strtotime($str_date);
2014-08-27 19:37:38 +04:00
$this->items[] = $item;
}
}
public function getName(){
return 'Project M Game Bridge';
}
public function getURI(){
return 'http://projectmgame.com/en/';
}
public function getCacheDuration(){
2014-08-27 20:23:43 +04:00
return 10800; //3 hours
2014-08-27 19:37:38 +04:00
}
}