From 31262f442c7f5a0936446dd5f535f4d44594624b Mon Sep 17 00:00:00 2001 From: Ghostie Date: Fri, 23 Aug 2024 13:54:04 -0500 Subject: [PATCH] now users can be followed --- app/Http/Controllers/FollowerController.php | 8 +++++++- app/Models/Follower.php | 5 +++++ app/Models/User.php | 8 ++++++++ resources/views/dashboard.blade.php | 17 +++++++++++++++++ 4 files changed, 37 insertions(+), 1 deletion(-) diff --git a/app/Http/Controllers/FollowerController.php b/app/Http/Controllers/FollowerController.php index fa35ca2..fe829aa 100644 --- a/app/Http/Controllers/FollowerController.php +++ b/app/Http/Controllers/FollowerController.php @@ -2,9 +2,15 @@ namespace App\Http\Controllers; +use App\Models\User; use Illuminate\Http\Request; class FollowerController extends Controller { - // + public function store(User $user) + { + $user->followers()->attach(auth()->user()->id); + + return back(); + } } diff --git a/app/Models/Follower.php b/app/Models/Follower.php index 5f8df71..d0b1dc6 100644 --- a/app/Models/Follower.php +++ b/app/Models/Follower.php @@ -8,4 +8,9 @@ use Illuminate\Database\Eloquent\Model; class Follower extends Model { use HasFactory; + + protected $fillable = [ + "user_id", + "follower_id" + ]; } diff --git a/app/Models/User.php b/app/Models/User.php index 35d6037..c7d9eac 100644 --- a/app/Models/User.php +++ b/app/Models/User.php @@ -55,4 +55,12 @@ class User extends Authenticatable { return $this->hasMany(Like::class); } + + // store the followers + public function followers() + { + return $this->belongsToMany(User::class, "followers", "user_id", "follower_id"); + } + + // store the following } diff --git a/resources/views/dashboard.blade.php b/resources/views/dashboard.blade.php index 1d4b93f..6025ee1 100644 --- a/resources/views/dashboard.blade.php +++ b/resources/views/dashboard.blade.php @@ -44,6 +44,23 @@ {{ $user->posts->count() }} Posts

+ + @auth + @if ($user->id !== auth()->user()->id) +
+ @csrf + +
+
+ @csrf + +
+ @endif + @endauth