<?php
class NikonDownloadCenterBridge extends BridgeAbstract {
	const NAME = 'Nikon Download Center – What\'s New';
	const URI = 'https://downloadcenter.nikonimglib.com/';
	const DESCRIPTION = 'Firmware updates and new software from Nikon.';
	const MAINTAINER = 'sal0max';
	const CACHE_TIMEOUT = 60 * 60 * 2; // 2 hours

	public function getURI() {
		$year = date('Y');
		return self::URI . 'en/update/index/' . $year . '.html';
	}

	public function getIcon() {
		return self::URI . 'favicon.ico';
	}

	public function collectData() {
		$html = getSimpleHTMLDOM($this->getURI());

		foreach ($html->find('dd>ul>li') as $element) {
			$date        = $element->find('.date', 0)->plaintext;
			$productType = $element->find('.icon>img', 0)->alt;
			$desc        = $element->find('p>a', 0)->plaintext;
			$link        = urljoin(self::URI, $element->find('p>a', 0)->href);

			$item = array(
				'title'     => $desc,
				'uri'       => $link,
				'timestamp' => strtotime($date),
				'content'   => <<<EOD
<p>
 New/updated {$productType}:<br>
 <strong><a href="{$link}">{$desc}</a></strong>
</p>
<p>
 {$date}
</p>
EOD
			);
			$this->items[] = $item;
		}
	}
}