diff --git a/app/Http/Controllers/MusicController.php b/app/Http/Controllers/MusicController.php index 9cf8f23..5e31d86 100644 --- a/app/Http/Controllers/MusicController.php +++ b/app/Http/Controllers/MusicController.php @@ -2,19 +2,28 @@ namespace App\Http\Controllers; -use App\Models\Track; use Illuminate\Support\Facades\Cache; +use Illuminate\Support\Facades\Config; use Illuminate\Support\Facades\Http; use Illuminate\View\View; class MusicController extends Controller { public function getCurrentTrack() { + // If it's already cached just return that if (Cache::has('current_track')) { return Cache::get('current_track'); } - $response = Http::get('https://ws.audioscrobbler.com/2.0/?method=user.getrecenttracks&user='.env('LASTFM_USER').'&nowplaying=true&format=json&api_key='.env('LASTFM_KEY')); + + $response = Http::withQueryParameters([ + 'method' => 'user.getrecenttracks', + 'user' => Config::get('services.lastfm.user'), + 'format' => 'json', + 'nowplaying' => 'true', + 'api_key' => Config::get('services.lastfm.key') + ])->get('https://ws.audioscrobbler.com/2.0/'); $data = $response->json(); + error_log($response->body()); $track_data = $data["recenttracks"]["track"][0]; $current_track = [ 'title' => $track_data["name"], @@ -26,10 +35,19 @@ public function getCurrentTrack() { } public function getTopTracks() { + // If it's already cached just return that if (Cache::has('top_tracks')) { return Cache::get('top_tracks'); } - $response = Http::get('https://ws.audioscrobbler.com/2.0/?method=user.gettoptracks&user='.env('LASTFM_USER').'&format=json&period=1month&limit=10&api_key='.env('LASTFM_KEY')); + + $response = Http::withQueryParameters([ + 'method' => 'user.gettoptracks', + 'user' => Config::get('services.lastfm.user'), + 'format' => 'json', + 'period' => '1month', + 'limit' => 10, + 'api_key' => Config::get('services.lastfm.key') + ])->get('https://ws.audioscrobbler.com/2.0/'); $data = $response->json(); $topTracks = []; foreach ($data["toptracks"]["track"] as $track) {