about summary refs log tree commit diff
path: root/laravel/app/Http
diff options
context:
space:
mode:
authorZach DeCook <zachdecook@gmail.com>2019-01-12 10:49:50 -0500
committerZach DeCook <zachdecook@gmail.com>2019-01-12 10:49:50 -0500
commitb4958b4bf1fecbb2bace7dc9664b326841c8067e (patch)
tree97b36139bf2d01cf2e8d5f36656d22f0d2d1bf28 /laravel/app/Http
parentfa336a55266650b2f1847194130dc097f4e614dd (diff)
downloadprosongsa-b4958b4bf1fecbb2bace7dc9664b326841c8067e.tar.gz
* Suggestions: show suggestions and track them
Diffstat (limited to 'laravel/app/Http')
-rw-r--r--laravel/app/Http/Controllers/SongController.php15
1 files changed, 15 insertions, 0 deletions
diff --git a/laravel/app/Http/Controllers/SongController.php b/laravel/app/Http/Controllers/SongController.php
index 60b3e67..087c358 100644
--- a/laravel/app/Http/Controllers/SongController.php
+++ b/laravel/app/Http/Controllers/SongController.php
@@ -4,6 +4,7 @@ namespace App\Http\Controllers;
 
 use App\Playlist;
 use App\Song;
+use App\Suggestion;
 use Illuminate\Http\Request;
 
 class SongController extends Controller
@@ -55,8 +56,22 @@ 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();
+        foreach ($params['suggestions'] as $sugSong){
+            $sug = Suggestion::firstOrNew(['from' => $song->id, 'song' => $sugSong->id]);
+            $sug->shown++;
+            $sug->save();
+        }
         return view('song', $params );
     }
+    public function suggested($song, $from)
+    {
+        $sug = Suggestion::firstOrNew(['song' => $song, 'from' => $from]);
+        $sug->clicks++;
+        $sug->save();
+        //Suggestion::make(['song' => $song, 'from' => $from]);
+        return redirect(route('song.show', $song));
+    }
 
     /**
      * @brief Determine whether or not this line contains chords.