Browse Source

[SuperSmashBlogBridge] Added bridge (#716)

Corentin Garcia 6 years ago
parent
commit
8e468a9ca7
1 changed files with 45 additions and 0 deletions
  1. 45 0
      bridges/SuperSmashBlogBridge.php

+ 45 - 0
bridges/SuperSmashBlogBridge.php

@@ -0,0 +1,45 @@
+<?php
+class SuperSmashBlogBridge extends BridgeAbstract {
+
+	const MAINTAINER = 'corenting';
+	const NAME = 'Super Smash Blog';
+	const URI = 'https://www.smashbros.com/en_US/blog/index.html';
+	const CACHE_TIMEOUT = 7200; // 2h
+	const DESCRIPTION = 'Latest articles from the Super Smash Blog blog';
+
+	public function collectData(){
+		$dlUrl = "https://www.smashbros.com/data/bs/en_US/json/en_US.json";
+
+		$jsonString = getContents($dlUrl) or returnServerError('Error while downloading the website content');
+		$json = json_decode($jsonString, true);
+
+		foreach($json as $article) {
+
+			// Build content
+			$picture = $article['acf']['image1']['url'];
+			if (strlen($picture) != 0) {
+				$picture = str_get_html('<img src="https://www.smashbros.com/' . substr($picture, 8) . '"/>');
+			} else {
+				$picture = '';
+			}
+
+			$video = $article['acf']['link_url'];
+			if (strlen($video) != 0) {
+				$video = str_get_html('<a href="' . $video .'">Youtube video</a>');
+			} else {
+				$video = '';
+			}
+			$text = str_get_html($article['acf']['editor']);
+			$content = $picture . $video . $text;
+
+			// Build final item
+			$item = array();
+			$item['title'] = $article['title']['rendered'];
+			$item['timestamp'] = strtotime($article['date']);
+			$item['content'] = $content;
+			$item['uri'] = self::URI . '?post=' . $article['id'];
+
+			$this->items[] = $item;
+		}
+	}
+}