Compare commits
2 commits
97d8f4447d
...
61f01750ff
Author | SHA1 | Date | |
---|---|---|---|
61f01750ff | |||
a715ae58af |
5 changed files with 42 additions and 16 deletions
|
@ -31,13 +31,15 @@ public function getDiscordPresence(): mixed {
|
|||
|
||||
$response = Http::get('https://api.lanyard.rest/v1/users/' . Config::get('services.lanyard.user_id'));
|
||||
$data = $response->json();
|
||||
if (!isset($data["data"])) return null;
|
||||
$presence = $data["data"];
|
||||
Cache::put('discord_presence', $presence, now()->addSeconds(60));
|
||||
return $presence;
|
||||
}
|
||||
|
||||
public function getOnlineStatus(): array {
|
||||
public function getOnlineStatus(): ?array {
|
||||
$presence = $this->getDiscordPresence();
|
||||
if ($presence == null) return null;
|
||||
return match ($presence["discord_status"]) {
|
||||
"online", "dnd" => [
|
||||
"text" => "online",
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
namespace App\View\Components;
|
||||
|
||||
use Closure;
|
||||
use Exception;
|
||||
use Illuminate\Contracts\View\View;
|
||||
use Illuminate\Support\Facades\Cache;
|
||||
use Illuminate\Support\Facades\Config;
|
||||
|
@ -25,11 +26,16 @@ public function getWeatherData(): mixed {
|
|||
return Cache::get('weather_data');
|
||||
}
|
||||
|
||||
try {
|
||||
$response = Http::get('http://' . Config::get('services.weatherlink') . '/v1/current_conditions');
|
||||
$data = $response->json();
|
||||
$conditions = $data["data"]["conditions"];
|
||||
Cache::put('weather_data', $conditions, now()->addSeconds(60));
|
||||
return $conditions;
|
||||
} catch (Exception $ex) {
|
||||
return null;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -3,9 +3,19 @@
|
|||
@foreach($categories as $category)
|
||||
<div class="section">
|
||||
<h2>{{ $category->name }}</h2>
|
||||
@if($category->id == 1)
|
||||
<p><em>(These are shuffled every load)</em></p>
|
||||
@php
|
||||
$sites = $category->sites->shuffle();
|
||||
@endphp
|
||||
@else
|
||||
@php
|
||||
$sites = $category->sites;
|
||||
@endphp
|
||||
@endif
|
||||
<hr>
|
||||
<ul>
|
||||
@foreach($category->sites as $site)
|
||||
@foreach($sites as $site)
|
||||
<li><a href="{{ $site->url }}">{{ $site->name }}</a> - {{ $site->description }}</li>
|
||||
@endforeach
|
||||
</ul>
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
@if($status == null)
|
||||
<p>Status Unavailable</p>
|
||||
@else
|
||||
<span>I'm</span>
|
||||
<h2 class="online-status" style="color: {{ $status["color"] }};text-shadow: var(--firefox-shadow) {{ $status["color"] }}4f !important">{{ $status["text"] }}!</h2>
|
||||
@endif
|
||||
<p><strong>Time in Britain:</strong> <span id="clock"></span></p>
|
||||
|
|
|
@ -1,5 +1,8 @@
|
|||
<p><strong>Weather Conditions:</strong></p>
|
||||
<hr style="margin: 4px 0">
|
||||
@if($conditions == null)
|
||||
<p>Data Unavailable</p>
|
||||
@else
|
||||
<p><strong>Temperature:</strong> {{ round(($conditions[0]["temp"] - 32) * (5/9), 1) }} degC</p>
|
||||
<p><strong>Rain:</strong> {{ ($conditions[0]["rain_rate_last"] * 0.2) }}mm/hr ({{ $conditions[0]["rainfall_daily"] }}mm today)</p>
|
||||
@if ($conditions[0]["wind_speed_last"] != 0)
|
||||
|
@ -9,3 +12,4 @@
|
|||
@endif
|
||||
<p><strong>Humidity:</strong> {{ round($conditions[0]["hum"], 1) }}%</p>
|
||||
<p><strong>Pressure:</strong> {{ round($conditions[2]["bar_sea_level"], 1) }} inHg</p>
|
||||
@endif
|
||||
|
|
Loading…
Reference in a new issue