diff --git a/src/app/Http/Controllers/Dashboard/UserProfileController.php b/src/app/Http/Controllers/Dashboard/UserProfileController.php index bc7733a..5e862cc 100644 --- a/src/app/Http/Controllers/Dashboard/UserProfileController.php +++ b/src/app/Http/Controllers/Dashboard/UserProfileController.php @@ -2,21 +2,14 @@ namespace App\Http\Controllers; -use App\Http\Controllers\Controller; -use Carbon\Carbon; use Illuminate\Http\Request; -use Illuminate\Support\Collection; -use Illuminate\Support\Facades\DB; use Inertia\Response; -use Jenssegers\Agent\Agent; use Laravel\Fortify\Features; -use Laravel\Jetstream\Http\Controllers\Inertia\Concerns\ConfirmsTwoFactorAuthentication; +use Laravel\Jetstream\Http\Controllers\Inertia\UserProfileController as JetstreamUserProfileController; use Laravel\Jetstream\Jetstream; -class UserProfileController extends Controller +class UserProfileController extends JetstreamUserProfileController { - use ConfirmsTwoFactorAuthentication; - /** * Show the general profile settings screen. * @@ -36,56 +29,4 @@ class UserProfileController extends Controller 'timezones' => timezone_identifiers_list(), ]); } - - /** - * Get the current sessions. - * - * @since 1.0.0 - * - * @param \Illuminate\Http\Request $request - * - * @return \Illuminate\Support\Collection - */ - public function sessions(Request $request): Collection - { - if (config('session.driver') !== 'database') { - return collect(); - } - - return collect( - DB::connection(config('session.connection'))->table(config('session.table', 'sessions')) - ->where('user_id', $request->user()->getAuthIdentifier()) - ->orderBy('last_activity', 'desc') - ->get() - )->map(function ($session) use ($request) { - $agent = $this->createAgent($session); - - return (object) [ - 'agent' => [ - 'is_desktop' => $agent->isDesktop(), - 'platform' => $agent->platform(), - 'browser' => $agent->browser(), - ], - 'ip_address' => $session->ip_address, - 'is_current_device' => $session->id === $request->session()->getId(), - 'last_active' => Carbon::createFromTimestamp($session->last_activity)->diffForHumans(), - ]; - }); - } - - /** - * Create a new agent instance from the given session. - * - * @since 1.0.0 - * - * @param mixed $session - * - * @return \Jenssegers\Agent\Agent - */ - protected function createAgent($session): Agent - { - return tap(new Agent, function ($agent) use ($session) { - $agent->setUserAgent($session->user_agent); - }); - } }