diff options
author | Frankie B <git@diskfloppy.me> | 2023-06-14 22:05:01 +0100 |
---|---|---|
committer | Frankie B <frankieraybrown@gmail.com> | 2023-06-14 22:15:44 +0100 |
commit | 30f68f5c7daae4fad4e0f986c21b10a801a3988c (patch) | |
tree | 79d5d59e43087e603fcd1e71201395fa04ffa20b /resources/views | |
parent | 5142133f16cb085d46fbfd9514ab423b684f41aa (diff) |
Vastly improve lastfm thing
Diffstat (limited to 'resources/views')
-rw-r--r-- | resources/views/components/lastfm.blade.php | 67 |
1 files changed, 13 insertions, 54 deletions
diff --git a/resources/views/components/lastfm.blade.php b/resources/views/components/lastfm.blade.php index 78c5f81..92b2c9c 100644 --- a/resources/views/components/lastfm.blade.php +++ b/resources/views/components/lastfm.blade.php @@ -1,67 +1,26 @@ -<?php -$cfg = app('config')->get('services')['lastfm']; - -$curl_current = curl_init(); - -curl_setopt_array($curl_current, [ - CURLOPT_URL => "https://ws.audioscrobbler.com/2.0/?method=user.getrecenttracks&user=".$cfg['user']."&nowplaying=true&format=json&api_key=".$cfg['key'], - CURLOPT_RETURNTRANSFER => true, - CURLOPT_ENCODING => "", - CURLOPT_MAXREDIRS => 10, - CURLOPT_TIMEOUT => 30, - CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, - CURLOPT_CUSTOMREQUEST => "GET", -]); - -$current_response = curl_exec($curl_current); -$err = curl_error($curl_current); - -curl_close($curl_current); +@php -if ($err) { - die("cURL Error #:" . $err); -} -$current_response = json_decode($current_response, true); -$nowplaying = $current_response['recenttracks']['track'][0]; - - -$tracks_to_show = 10; - -$curl = curl_init(); -curl_setopt_array($curl, [ - CURLOPT_URL => "https://ws.audioscrobbler.com/2.0/?method=user.gettoptracks&user=".$cfg['user']."&format=json&period=7day&api_key=".$cfg['key'], - CURLOPT_RETURNTRANSFER => true, - CURLOPT_ENCODING => "", - CURLOPT_MAXREDIRS => 10, - CURLOPT_TIMEOUT => 30, - CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, - CURLOPT_CUSTOMREQUEST => "GET", -]); - -$toptracks = curl_exec($curl); -$err = curl_error($curl); -curl_close($curl); -if ($err) { - die("cURL Error #:" . $err); -} +$cfg = app('config')->get('services')['lastfm']; -$toptracks = json_decode($toptracks, true); -$tracks = $toptracks['toptracks']['track']; +$current_response = json_decode(file_get_contents("https://ws.audioscrobbler.com/2.0/?method=user.getrecenttracks&user=".$cfg['user']."&nowplaying=true&format=json&api_key=".$cfg['key'])); +$nowplaying = $current_response->recenttracks->track[0]; +$toptracks = json_decode(file_get_contents("https://ws.audioscrobbler.com/2.0/?method=user.gettoptracks&user=".$cfg['user']."&format=json&period=7day&api_key=".$cfg['key'])); +$tracks = $toptracks->toptracks->track; $count = 0; -?> +@endphp <h1>Last.fm <small>(<a href="https://www.last.fm/user/{{ $cfg['user']}}">Profile</a>)</small></h1> - <b>Last/Current Track:</b> <a href="{{ $nowplaying['url'] }}">{{ $nowplaying['name'] }} • {{ $nowplaying['artist']['#text'] }}</a> - <h2>Top {{ $tracks_to_show }} Tracks (Last 7 days)</h2> + <b>Last/Current Track:</b> <a href="{{ $nowplaying->url }}">{{ $nowplaying->name }} • {{ $nowplaying->artist->{"#text"} }}</a> + <h2>Top {{ $cfg['toptracks'] }} Tracks (Last 7 days)</h2> <ol> @foreach ($tracks as $track) - @if ($count >= $tracks_to_show) + @if ($count >= $cfg['toptracks']) </ol> @break @endif <li> - <a href="{{ $track['url'] }}">{{ $track['name'] }} • {{ $track['artist']['name'] }}</a> - <small>({{$track['playcount']}} plays)</small> + <a href="{{ $track->url }}">{{ $track->name }} • {{ $track->artist->name }}</a> + <small>({{ $track->playcount }} plays)</small> </li> -<?php $count++ ?> +@php $count++ @endphp @endforeach |