Merge pull request #208 from regisenguehard/master

Ajout LinkedIn & Viadeo
This commit is contained in:
Mitsu 2016-01-30 01:32:37 +01:00
commit 4bd04a1023
2 changed files with 104 additions and 0 deletions

View file

@ -0,0 +1,52 @@
<?php
class LinkedInCompany extends BridgeAbstract{
public function loadMetadatas() {
$this->maintainer = "regisenguehard";
$this->name = "LinkedIn Company";
$this->uri = "https://www.linkedin.com/";
$this->description = "Returns most recent actus from Company on LinkedIn. (https://www.linkedin.com/company/<strong style=\"font-weight:bold;\">apple</strong>)";
$this->update = "2015-12-22";
$this->parameters[] =
'[
{
"name" : "Company name",
"identifier" : "c"
}
]';
}
public function collectData(array $param){
$html = '';
$link = 'https://www.linkedin.com/company/'.$param[c];
$html = file_get_html($link) or $this->returnError('Could not request LinkedIn.', 404);
foreach($html->find('//*[@id="my-feed-post"]/li') as $element) {
$title = $element->find('span.share-body', 0)->innertext;
if ($title) {
$item = new \Item();
$item->uri = $link;
$item->title = mb_substr(strip_tags($element->find('span.share-body', 0)->innertext), 0 ,100);
$item->content = strip_tags($element->find('span.share-body', 0)->innertext);
$item->thumbnailUri = htmlspecialchars_decode($element->find('img', 0)->attr['data-li-lazy-load-src']);
$this->items[] = $item;
$i++;
}
}
}
public function getName(){
return 'LinkedIn';
}
public function getURI(){
return 'https://www.linkedin.com';
}
public function getCacheDuration(){
return 21600; // 6 hours
}
}

52
bridges/ViadeoCompany.php Normal file
View file

@ -0,0 +1,52 @@
<?php
class ViadeoCompany extends BridgeAbstract{
public function loadMetadatas() {
$this->maintainer = "regisenguehard";
$this->name = "Viadeo Company";
$this->uri = "https://www.viadeo.com/";
$this->description = "Returns most recent actus from Company on Viadeo. (http://www.viadeo.com/fr/company/<strong style=\"font-weight:bold;\">apple</strong>)";
$this->update = "2015-12-22";
$this->parameters[] =
'[
{
"name" : "Company name",
"identifier" : "c"
}
]';
}
public function collectData(array $param){
$html = '';
$link = 'http://www.viadeo.com/fr/company/'.$param[c];
$html = file_get_html($link) or $this->returnError('Could not request Viadeo.', 404);
foreach($html->find('//*[@id="company-newsfeed"]/ul/li') as $element) {
$title = $element->find('p', 0)->innertext;
if ($title) {
$item = new \Item();
$item->uri = $link;
$item->title = mb_substr($element->find('p', 0)->innertext, 0 ,100);
$item->content = $element->find('p', 0)->innertext;
$item->thumbnailUri = str_replace('//', 'http://', $element->find('img.usage-article__image_only', 0)->src);
$this->items[] = $item;
$i++;
}
}
}
public function getName(){
return 'Viadeo';
}
public function getURI(){
return 'https://www.viadeo.com';
}
public function getCacheDuration(){
return 21600; // 6 hours
}
}