Backend for songs.zachdecook.com
* Suggestions: Keep suggestions within the current playlist
| -rw-r--r-- | laravel/app/Http/Controllers/SongController.php | 8 | ||||
| -rw-r--r-- | laravel/resources/views/song.blade.php | 4 |
2 files changed, 8 insertions, 4 deletions
diff --git a/laravel/app/Http/Controllers/SongController.php b/laravel/app/Http/Controllers/SongController.php index 669ec3e..2074104 100644 --- a/laravel/app/Http/Controllers/SongController.php +++ b/laravel/app/Http/Controllers/SongController.php @@ -63,7 +63,11 @@ class SongController extends Controller $params['back'] = Song::where('id', '<', $song->id)->orderBy('id', 'desc')->first(); $params['next'] = Song::where('id', '>', $song->id)->orderBy('id', 'asc' )->first(); } - $params['suggestions'] = Song::inRandomOrder()->limit(5)->get(); + if ($playlist){ + $params['suggestions'] = $playlist->songs()->inRandomOrder()->limit(5)->get(); + } else { + $params['suggestions'] = Song::inRandomOrder()->limit(5)->get(); + } foreach ($params['suggestions'] as $sugSong){ $sug = Suggestion::firstOrNew(['from' => $song->id, 'song' => $sugSong->id]); $sug->shown++; @@ -77,7 +81,7 @@ class SongController extends Controller $sug->clicks++; $sug->save(); //Suggestion::make(['song' => $song, 'from' => $from]); - return redirect(route('song.show', ['song' => $song, 'key' => $request->key])); + return redirect(route('song.show', ['song' => $song, 'key' => $request->key, 'playlist' => $request->playlist])); } /** diff --git a/laravel/resources/views/song.blade.php b/laravel/resources/views/song.blade.php index c486ffc..dfc7f75 100644 --- a/laravel/resources/views/song.blade.php +++ b/laravel/resources/views/song.blade.php @@ -67,9 +67,9 @@ @foreach ($suggestions as $sug) <div class='controlArea'> - <a class='but' href='{{route('song.suggested', ['song' => $sug, 'from' => $song])}}'>{{$sug->name}}</a> + <a class='but' href='{{route('song.suggested', ['song' => $sug, 'from' => $song, 'playlist' => $playlist ?? ''])}}'>{{$sug->name}}</a> @if ($key && $sug->key) - <a class='but' data-words='transposed to ' data-key='{{$key}}' href='{{route('song.suggested', ['song' => $sug, 'from' => $song, 'key' => $key])}}'> + <a class='but' data-words='transposed to ' data-key='{{$key}}' href='{{route('song.suggested', ['song' => $sug, 'from' => $song, 'key' => $key, 'playlist' => $playlist ?? ''])}}'> transposed to {{$key}} </a> @endif |