JFIFxxC      C  " }!1AQa"q2#BR$3br %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz w!1AQaq"2B #3Rbr{ gilour

File "UserFollowersController.php"

Full Path: /home/markqprx/iniasli.pro/common-20260222054824/Auth/Controllers/UserFollowersController.php
File size: 1.07 KB
MIME-type: text/x-php
Charset: utf-8

<?php namespace Common\Auth\Controllers;

use App\Models\User;
use Auth;
use Common\Core\BaseController;

class UserFollowersController extends BaseController
{
    public function __construct()
    {
        $this->middleware('auth')->except(['index']);
    }

    public function index(User $user)
    {
        $this->authorize('show', $user);

        $pagination = $user
            ->followers()
            ->withCount(['followers'])
            ->simplePaginate(request('perPage') ?? 20);

        return $this->success(['pagination' => $pagination]);
    }

    public function follow(User $userToFollow)
    {
        if ($userToFollow->id !== Auth::user()->id) {
            Auth::user()
                ->followedUsers()
                ->sync([$userToFollow->id], false);
        }

        return $this->success();
    }

    public function unfollow(User $userToFollow)
    {
        if ($userToFollow->id != Auth::user()->id) {
            Auth::user()
                ->followedUsers()
                ->detach($userToFollow->id);
        }

        return $this->success();
    }
}