mirror of
https://github.com/RSS-Bridge/rss-bridge.git
synced 2024-11-25 02:46:15 +03:00
4f75591060
Reformat code base to PSR12 Co-authored-by: rssbridge <noreply@github.com>
42 lines
1.2 KiB
PHP
42 lines
1.2 KiB
PHP
<?php
|
|
|
|
class ParksOnTheAirBridge extends BridgeAbstract
|
|
{
|
|
const MAINTAINER = 's0lesurviv0r';
|
|
const NAME = 'Parks On The Air Spots';
|
|
const URI = 'https://pota.app/#';
|
|
const API_URI = 'https://api.pota.app/spot/activator';
|
|
const CACHE_TIMEOUT = 60; // 1m
|
|
const DESCRIPTION = 'Parks On The Air Activator Spots';
|
|
|
|
public function collectData()
|
|
{
|
|
$header = ['Content-type:application/json'];
|
|
$opts = [CURLOPT_HTTPGET => 1];
|
|
$json = getContents(self::API_URI, $header, $opts);
|
|
|
|
$spots = json_decode($json, true);
|
|
|
|
foreach ($spots as $spot) {
|
|
$title = $spot['activator'] . ' @ ' . $spot['reference'] . ' ' .
|
|
$spot['frequency'] . ' kHz';
|
|
$park_link = self::URI . '/park/' . $spot['reference'];
|
|
|
|
$content = <<<EOL
|
|
<a href="{$park_link}">
|
|
{$spot['reference']}, {$spot['name']}</a><br />
|
|
Location: {$spot['locationDesc']}<br />
|
|
Frequency: {$spot['frequency']} kHz<br />
|
|
Spotter: {$spot['spotter']}<br />
|
|
Comments: {$spot['comments']}
|
|
EOL;
|
|
|
|
$this->items[] = [
|
|
'uri' => $park_link,
|
|
'title' => $title,
|
|
'content' => $content,
|
|
'timestamp' => $spot['spotTime']
|
|
];
|
|
}
|
|
}
|
|
}
|