blob: cf8dbcec3cf88b09dc9aae8a131f8e221ea4b6dd (
plain) (
blame)
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
|
<?php
declare(strict_types=1);
final class QnapBridge extends BridgeAbstract
{
const NAME = 'QNAP';
const URI = 'https://www.qnap.com/fr-fr/security-news/2022';
const DESCRIPTION = <<<'DESCRIPTION'
<b>Use offical feed instead: https://www.qnap.com/fr-fr/security-news/feed </b><br><br>
Unofficial feed for security news.
DESCRIPTION;
const MAINTAINER = 'dvikan';
public function collectData()
{
$thisYear = date('Y');
$url = sprintf('https://www.qnap.com/api/v1/articles/security-news?locale=fr-fr&year=%s&page=1', $thisYear);
$response = json_decode(getContents($url));
foreach ($response->data as $post) {
$item = [];
$item['uri'] = sprintf('https://www.qnap.com%s', $post->url);
$item['title'] = $post->title;
$item['timestamp'] = \DateTime::createFromFormat('Y-m-d', $post->date)->format('U');
$image = sprintf('<img src="https://www.qnap.com%s">', $post->image_url);
$item['content'] = $image . '<br><br>' . $post->desc;
$this->items[] = $item;
}
usort($this->items, function ($a, $b) {
return $a['timestamp'] < $b['timestamp'];
});
}
}
|