2021-06-26 11:23:15 -04:00
|
|
|
<?php
|
|
|
|
|
2023-05-17 12:56:55 -04:00
|
|
|
namespace BookStack\Users\Controllers;
|
2021-03-09 18:06:12 -05:00
|
|
|
|
2023-05-17 12:56:55 -04:00
|
|
|
use BookStack\Activity\ActivityQueries;
|
2023-05-18 15:53:39 -04:00
|
|
|
use BookStack\Http\Controller;
|
2023-05-17 12:56:55 -04:00
|
|
|
use BookStack\Users\Queries\UserContentCounts;
|
|
|
|
use BookStack\Users\Queries\UserRecentlyCreatedContent;
|
|
|
|
use BookStack\Users\UserRepo;
|
2021-03-09 18:06:12 -05:00
|
|
|
|
|
|
|
class UserProfileController extends Controller
|
|
|
|
{
|
|
|
|
/**
|
2021-06-26 11:23:15 -04:00
|
|
|
* Show the user profile page.
|
2021-03-09 18:06:12 -05:00
|
|
|
*/
|
2021-12-11 12:29:33 -05:00
|
|
|
public function show(UserRepo $repo, ActivityQueries $activities, string $slug)
|
2021-03-09 18:06:12 -05:00
|
|
|
{
|
|
|
|
$user = $repo->getBySlug($slug);
|
|
|
|
|
2021-12-11 12:29:33 -05:00
|
|
|
$userActivity = $activities->userActivity($user);
|
2022-02-13 07:56:26 -05:00
|
|
|
$recentlyCreated = (new UserRecentlyCreatedContent())->run($user, 5);
|
|
|
|
$assetCounts = (new UserContentCounts())->run($user);
|
2021-03-09 18:06:12 -05:00
|
|
|
|
2022-01-04 08:33:24 -05:00
|
|
|
$this->setPageTitle($user->name);
|
|
|
|
|
2021-03-09 18:06:12 -05:00
|
|
|
return view('users.profile', [
|
2021-06-26 11:23:15 -04:00
|
|
|
'user' => $user,
|
|
|
|
'activity' => $userActivity,
|
2021-03-09 18:06:12 -05:00
|
|
|
'recentlyCreated' => $recentlyCreated,
|
2021-06-26 11:23:15 -04:00
|
|
|
'assetCounts' => $assetCounts,
|
2021-03-09 18:06:12 -05:00
|
|
|
]);
|
|
|
|
}
|
|
|
|
}
|