2015-12-22 18:03:46 +01:00
< ? php
class LinkedInCompany extends BridgeAbstract {
public function loadMetadatas () {
$this -> maintainer = " regisenguehard " ;
$this -> name = " LinkedIn Company " ;
$this -> uri = " https://www.linkedin.com/ " ;
2015-12-23 16:14:28 +01:00
$this -> description = " Returns most recent actus from Company on LinkedIn. (https://www.linkedin.com/company/<strong style= \" font-weight:bold; \" >apple</strong>) " ;
2015-12-22 18:03:46 +01:00
$this -> update = " 2015-12-22 " ;
$this -> parameters [] =
' [
{
" name " : " Company name " ,
" identifier " : " c "
}
] ' ;
}
public function collectData ( array $param ){
$html = '' ;
2015-12-23 16:14:28 +01:00
$link = 'https://www.linkedin.com/company/' . $param [ c ];
2015-12-22 18:03:46 +01:00
$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 (){
2015-12-23 16:14:28 +01:00
return 21600 ; // 6 hours
2015-12-22 18:03:46 +01:00
}
}