From 8233497611075216b12d0dd4ef4ed1a1d254f69e Mon Sep 17 00:00:00 2001
From: Fanch <github.com@qth.fr>
Date: Sun, 17 May 2020 20:33:14 +0200
Subject: [PATCH] [AirBreizhBridge] Add new bridge (#1544)

* [AirBreizhBridge] Add new bridge
---
 bridges/AirBreizhBridge.php | 54 +++++++++++++++++++++++++++++++++++++
 1 file changed, 54 insertions(+)
 create mode 100644 bridges/AirBreizhBridge.php

diff --git a/bridges/AirBreizhBridge.php b/bridges/AirBreizhBridge.php
new file mode 100644
index 00000000..2d852da5
--- /dev/null
+++ b/bridges/AirBreizhBridge.php
@@ -0,0 +1,54 @@
+<?php
+class AirBreizhBridge extends BridgeAbstract {
+
+	const MAINTAINER = 'fanch317';
+	const NAME = 'Air Breizh';
+	const URI = 'https://www.airbreizh.asso.fr/';
+	const DESCRIPTION = 'Returns newests publications on Air Breizh';
+	const PARAMETERS = array(
+		'Publications' => array(
+			'theme' => array(
+				'name' => 'Thematique',
+				'type' => 'list',
+				'values' => array(
+					'Tout' => '',
+					'Rapport d\'activite' => 'rapport-dactivite',
+					'Etude' => 'etudes',
+					'Information' => 'information',
+					'Autres documents' => 'autres-documents',
+					'Plan Régional de Surveillance de la qualité de l’air' => 'prsqa',
+					'Transport' => 'transport'
+				)
+			)
+		)
+	);
+
+	public function getIcon() {
+		return 'https://www.airbreizh.asso.fr/voy_content/uploads/2017/11/favicon.png';
+	}
+
+	public function collectData(){
+		$html = '';
+		$html = getSimpleHTMLDOM(static::URI . 'publications/?fwp_publications_thematiques=' . $this->getInput('theme'))
+			or returnClientError('No results for this query.');
+
+		foreach ($html->find('article') as $article) {
+			$item = array();
+			// Title
+			$item['title'] = $article->find('h2', 0)->plaintext;
+			// Author
+			$item['author'] = 'Air Breizh';
+			// Image
+			$imagelink = $article->find('.card__image', 0)->find('img', 0)->getAttribute('src');
+			// Content preview
+			$item['content'] = '<img src="' . $imagelink . '" />
+			<br/>'
+			. $article->find('.card__text', 0)->plaintext;
+			// URL
+			$item['uri'] = $article->find('.publi__buttons', 0)->find('a', 0)->getAttribute('href');
+			// ID
+			$item['id'] = $article->find('.publi__buttons', 0)->find('a', 0)->getAttribute('href');
+			$this->items[] = $item;
+		}
+	}
+}