-
Notifications
You must be signed in to change notification settings - Fork 1k
/
ViadeoCompanyBridge.php
43 lines (37 loc) · 1.3 KB
/
ViadeoCompanyBridge.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
<?php
class ViadeoCompanyBridge extends BridgeAbstract
{
const MAINTAINER = 'regisenguehard';
const NAME = 'Viadeo Company';
const URI = 'https://www.viadeo.com/';
const CACHE_TIMEOUT = 21600; // 6h
const DESCRIPTION = 'Returns most recent actus from Company on Viadeo.
(http://www.viadeo.com/fr/company/<strong style="font-weight:bold;">apple</strong>)';
const PARAMETERS = [ [
'c' => [
'name' => 'Company name',
'exampleValue' => 'apple',
'required' => true
]
]];
public function collectData()
{
// Redirects to https://emploi.lefigaro.fr/recherche/entreprises
$url = sprintf('%sfr/company/%s', self::URI, $this->getInput('c'));
$html = getSimpleHTMLDOM($url);
// TODO: Fix broken xpath selector
$elements = $html->find('//*[@id="company-newsfeed"]/ul/li');
foreach ($elements as $element) {
$title = $element->find('p', 0)->innertext;
if (!$title) {
continue;
}
$item = [];
$item['uri'] = $url;
$item['title'] = mb_substr($element->find('p', 0)->innertext, 0, 100);
$item['content'] = $element->find('p', 0)->innertext;
;
$this->items[] = $item;
}
}
}