about summary refs log tree commit diff
diff options
context:
space:
mode:
authorZach DeCook <zachdecook@gmail.com>2018-12-27 08:51:12 -0500
committerZach DeCook <zachdecook@gmail.com>2018-12-27 08:51:12 -0500
commit7057844718f20f47109549a0f26745d88d66e195 (patch)
tree408cd2ce68e743461489013afb4d83eaed5b74cd
parent67c377fe1d87bfb127bcbfa952e9119bd341d4e8 (diff)
downloadprosongsa-7057844718f20f47109549a0f26745d88d66e195.tar.gz
* Views: Create playlist view
-rw-r--r--laravel/app/Http/Controllers/PlaylistController.php18
-rw-r--r--laravel/resources/views/playlist.blade.php13
-rw-r--r--laravel/routes/web.php1
3 files changed, 32 insertions, 0 deletions
diff --git a/laravel/app/Http/Controllers/PlaylistController.php b/laravel/app/Http/Controllers/PlaylistController.php
new file mode 100644
index 0000000..49b1f35
--- /dev/null
+++ b/laravel/app/Http/Controllers/PlaylistController.php
@@ -0,0 +1,18 @@
+<?php
+
+namespace App\Http\Controllers;
+
+use App\Playlist;
+use Illuminate\Http\Request;
+
+class PlaylistController extends Controller
+{
+    public function show( $playlistName )
+    {
+        $playlist = Playlist::where('name', $playlistName)->first();
+        if ( $playlist ) {
+            return view('playlist', ['playlist' => $playlist ] );
+        }
+        abort(404);
+    }
+}
diff --git a/laravel/resources/views/playlist.blade.php b/laravel/resources/views/playlist.blade.php
new file mode 100644
index 0000000..3026963
--- /dev/null
+++ b/laravel/resources/views/playlist.blade.php
@@ -0,0 +1,13 @@
+@extends('layouts.app')
+@section('title', $playlist->name)
+
+@section('content')
+
+    <h2>Playlist "<i>{{$playlist->name}}</i>"</h2>
+    <ul>
+    @foreach($playlist->songs as $song)
+        <li><a href='/song/{{$song->number}}?playlist={{$playlist->id}}'>{{$song->title}}</a>
+    @endforeach
+    </ul>
+
+@endsection
diff --git a/laravel/routes/web.php b/laravel/routes/web.php
index c091d9c..d11a121 100644
--- a/laravel/routes/web.php
+++ b/laravel/routes/web.php
@@ -15,6 +15,7 @@ Route::get('/', function () {
     return view('welcome');
 });
 Route::get('/song/{song}', 'SongController@show')->name('song.show');
+Route::get('/playlist/{playlist}', 'PlaylistController@show')->name('playlist.show');
 
 Auth::routes();