aboutsummaryrefslogtreecommitdiff
path: root/bridges/OpenwrtSecurityBridge.php
blob: 8cdeec01a9ddc3e4b977614ff3754ae332b9a001 (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
35
36
<?php
class OpenwrtSecurityBridge extends BridgeAbstract {
	const NAME = 'OpenWrt Security Advisories';
	const URI = 'https://openwrt.org/advisory/start';
	const DESCRIPTION = 'Security Advisories published by openwrt.org';
	const MAINTAINER = 'mschwld';
	const CACHE_TIMEOUT = 3600;
	const WEBROOT = 'https://openwrt.org';

	public function collectData() {
		$item = array();
		$html = getSimpleHTMLDOM(self::URI);

		$advisories = $html->find('div[class=plugin_nspages]', 0);

		foreach($advisories->find('a[class=wikilink1]') as $element) {
			$item = array();

			$row = $element->innertext;

			$item['title'] = substr($row, 0, strpos($row, ' - '));
			$item['timestamp'] = $this->getDate($element->href);
			$item['uri'] = self::WEBROOT . $element->href;
			$item['uid'] = self::WEBROOT . $element->href;
			$item['content'] = substr($row, strpos($row, ' - ') + 3);
			$item['author'] = 'OpenWrt Project';

			$this->items[] = $item;
		}
	}

	private function getDate($href) {
		$date = substr($href, -12);
		return $date;
	}
}