diff --git a/app/Http/Controllers/PageController.php b/app/Http/Controllers/PageController.php
index 451dd01..1699259 100644
--- a/app/Http/Controllers/PageController.php
+++ b/app/Http/Controllers/PageController.php
@@ -47,12 +47,12 @@ class PageController extends Controller
public function profile_friends($id)
{
$user = User::find($id);
- $friends = $user->getFriends($perPage = 10);
-
if (!$user) {
abort(404);
}
+ $friends = $user->getFriends($perPage = 10);
+
$data = [
'user' => $user,
'friends' => $friends
@@ -61,6 +61,23 @@ class PageController extends Controller
return view('pages.profile_friends')->with('data', $data);
}
+ public function mutual_friends($id)
+ {
+ $user = User::find($id);
+ if (!$user || $user->id == Auth::id()) {
+ abort(404);
+ }
+
+ $friends = Auth::user()->getMutualFriends($user, $perPage = 10);
+
+ $data = [
+ 'user' => $user,
+ 'friends' => $friends
+ ];
+
+ return view('pages.mutual_friends')->with('data', $data);
+ }
+
public function users(Request $request)
{
if ($request->has('q')) {
diff --git a/resources/views/pages/mutual_friends.blade.php b/resources/views/pages/mutual_friends.blade.php
new file mode 100644
index 0000000..991cfe1
--- /dev/null
+++ b/resources/views/pages/mutual_friends.blade.php
@@ -0,0 +1,51 @@
+@extends('layouts.app')
+@section('title')
+
+ @foreach ($data['friends'] as $friend)
+
+
+
 }})
+
+
+
{{ $friend->name }}
+ @if (!empty($friend->feedposts->last()->status))
+
"{{ $friend->feedposts->last()->status }}"
+ @else
+
"I'm new to ARCHBLOX!"
+ @endif
+ @if (Cache::has('is_online_' . $friend->id))
+
Website
+ @else
+
Offline - Last Online
+ {{ Carbon\Carbon::parse($friend->last_seen)->diffForHumans() }}
+ @endif
+
+ @if (Auth::id() == $data['user']->id)
+
+ @endif
+
+
+ @endforeach
+ @if (!Auth::user()->getMutualFriendsCount($data['user']))
+
You don't have any mutual friends with {{ $data['user']->name }}.
+ @endif
+ {{ $data['friends']->links() }}
+
+
@if (!empty($data['user']->feedposts->last()->status))
-
"{{ $data['user']->feedposts->last()->status }}"
+
"{{ $data['user']->feedposts->last()->status }}"
+
@else
"I'm new to ARCHBLOX!"
@endif
@@ -91,6 +92,9 @@
+ @if (Auth::check() && Auth::id() != $data['user']->id && Auth::user()->getMutualFriendsCount($data['user']) > 0)
+
{{ Auth::user()->getMutualFriendsCount($data['user'])}} Mutual Friends
+ @endif
@foreach ($data['friends'] as $friend)
diff --git a/resources/views/pages/profile_friends.blade.php b/resources/views/pages/profile_friends.blade.php
index d250aa6..7d31f11 100644
--- a/resources/views/pages/profile_friends.blade.php
+++ b/resources/views/pages/profile_friends.blade.php
@@ -5,6 +5,13 @@
@section('content')
{{ $data['user']->name }}'s Friends ({{ $data['user']->getFriendsCount() }})
+
All Friends
+ @auth
+ @if ($data['user']->id != Auth::id())
+
Mutual Friends ({{ Auth::user()->getMutualFriendsCount($data['user']) }})
+ @endif
+ @endauth
+
@foreach ($data['friends'] as $friend)
@@ -38,7 +45,7 @@
@endforeach
@if (!$data['user']->getFriendsCount())
-
You haven't made friends with anyone yet.
+
{{ $data['user']->name }} hasn't made friends with anyone yet.
@endif
{{ $data['friends']->links() }}
diff --git a/routes/web.php b/routes/web.php
index f3f5ff3..5de0dce 100644
--- a/routes/web.php
+++ b/routes/web.php
@@ -32,6 +32,7 @@ Route::middleware(['auth'])->group(function () {
Route::post('/home', [App\Http\Controllers\HomeController::class, 'feed_post'])->name('feed_post');
});
+ Route::get('/user/{id}/friends/mutual', [App\Http\Controllers\PageController::class, 'mutual_friends'])->name('mutual_friends');
Route::get('/users', [App\Http\Controllers\PageController::class, 'users'])->name('users');
Route::post('/users', [App\Http\Controllers\PageController::class, 'users'])->name('users');
Route::get('/my/settings', [App\Http\Controllers\PageController::class, 'settings'])->name('settings');