38 lines
1.1 KiB
PHP
38 lines
1.1 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Controllers\User;
|
|
|
|
use App\Http\Controllers\Controller;
|
|
use Illuminate\Http\Request;
|
|
use Illuminate\Support\Facades\DB;
|
|
|
|
class BuddiesController extends Controller
|
|
{
|
|
public function index(Request $request)
|
|
{
|
|
$user = $request->user();
|
|
if (! $user) {
|
|
return redirect()->route('login');
|
|
}
|
|
|
|
$perPage = 50;
|
|
|
|
try {
|
|
$query = DB::table('friends_list as t1')
|
|
->leftJoin('users as t2', 't1.user_id', '=', 't2.id')
|
|
->leftJoin('user_profiles as p', 'p.user_id', '=', 't2.id')
|
|
->where('t1.friend_id', $user->id)
|
|
->select('t1.id', 't1.user_id', 't1.friend_id', 't2.name as uname', 'p.avatar_hash as icon', 't1.date_added')
|
|
->orderByDesc('t1.date_added');
|
|
|
|
$followers = $query->paginate($perPage)->withQueryString();
|
|
} catch (\Throwable $e) {
|
|
$followers = collect();
|
|
}
|
|
|
|
$page_title = ($user->name ?? $user->username ?? 'User') . ': Followers';
|
|
|
|
return view('user.buddies', compact('followers', 'page_title'));
|
|
}
|
|
}
|