Initial commit

This commit is contained in:
root
2026-05-09 17:28:23 +02:00
commit 9d73f82529
5575 changed files with 281989 additions and 0 deletions
+54
View File
@@ -0,0 +1,54 @@
<?php
namespace App\Http\Controllers\User;
use App\Http\Controllers\Controller;
use App\Http\Requests\AccountSettingsFormRequest;
use App\Services\RconService;
use App\Services\User\SessionService;
use App\Services\User\UserService;
use Illuminate\Http\RedirectResponse;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
use Illuminate\View\View;
class AccountSettingsController extends Controller
{
public function __construct(private readonly SessionService $sessionService, private readonly UserService $userService, private readonly RconService $rconService) {}
public function edit(): View
{
return view('user.settings.account', [
'user' => Auth::user()->load('settings:allow_name_change'),
]);
}
public function sessionLogs(Request $request): View
{
$sessions = $this->sessionService->fetchSessionLogs($request);
return view('user.settings.session-logs', [
'logs' => $sessions,
]);
}
public function update(AccountSettingsFormRequest $request): RedirectResponse
{
$user = Auth::user();
if ($user === null) {
return redirect()->back()->withErrors('User not found');
}
if ($user->mail !== $request->input('mail')) {
$this->userService->updateField($user, 'mail', $request->input('mail'));
}
if ($user->motto !== $request->input('motto')) {
$this->rconService->setMotto($user, $request->input('motto'));
$this->userService->updateField($user, 'motto', $request->input('motto'));
}
return redirect()->route('settings.account.show')->with('success', __('Your account settings has been updated'));
}
}