about summary refs log tree commit diff
path: root/laravel/app/Policies
diff options
context:
space:
mode:
Diffstat (limited to 'laravel/app/Policies')
-rw-r--r--laravel/app/Policies/SongPolicy.php86
1 files changed, 86 insertions, 0 deletions
diff --git a/laravel/app/Policies/SongPolicy.php b/laravel/app/Policies/SongPolicy.php
new file mode 100644
index 0000000..2f92bfb
--- /dev/null
+++ b/laravel/app/Policies/SongPolicy.php
@@ -0,0 +1,86 @@
+<?php
+
+namespace App\Policies;
+
+use App\User;
+use App\Song;
+use Illuminate\Auth\Access\HandlesAuthorization;
+
+class SongPolicy
+{
+    use HandlesAuthorization;
+
+    /**
+     * Determine whether the user can view the song.
+     *
+     * @param  \App\User  $user
+     * @param  \App\Song  $song
+     * @return mixed
+     */
+    public function view(User $user, Song $song)
+    {
+        return true;
+        //
+    }
+
+    /**
+     * Determine whether the user can create songs.
+     *
+     * @param  \App\User  $user
+     * @return mixed
+     */
+    public function create(User $user)
+    {
+        // TODO: Make it harder to create songs.
+        return true;
+    }
+
+    /**
+     * Determine whether the user can update the song.
+     *
+     * @param  \App\User  $user
+     * @param  \App\Song  $song
+     * @return mixed
+     */
+    public function update(User $user, Song $song)
+    {
+        // Allow all logged in users to update songs.
+        return true;
+    }
+
+    /**
+     * Determine whether the user can delete the song.
+     *
+     * @param  \App\User  $user
+     * @param  \App\Song  $song
+     * @return mixed
+     */
+    public function delete(User $user, Song $song)
+    {
+        //
+    }
+
+    /**
+     * Determine whether the user can restore the song.
+     *
+     * @param  \App\User  $user
+     * @param  \App\Song  $song
+     * @return mixed
+     */
+    public function restore(User $user, Song $song)
+    {
+        //
+    }
+
+    /**
+     * Determine whether the user can permanently delete the song.
+     *
+     * @param  \App\User  $user
+     * @param  \App\Song  $song
+     * @return mixed
+     */
+    public function forceDelete(User $user, Song $song)
+    {
+        //
+    }
+}