Poprawki Copilota

This commit is contained in:
Tomasz Boruc 2026-08-27 23:20:57 +02:00
parent e4f40faca1
commit de53067d89
3 changed files with 11 additions and 9 deletions

View File

@ -35,22 +35,24 @@ class RegisteredUserController extends Controller
// 1. Walidacja danych z formularza // 1. Walidacja danych z formularza
$request->validate([ $request->validate([
'name' => ['required', 'string', 'max:255'], 'name' => ['required', 'string', 'max:255'],
'surname' => ['required', 'string', 'max:255'], 'surname' => ['nullable', 'string', 'max:255'],
'email' => ['required', 'string', 'lowercase', 'email', 'max:255', 'unique:'.User::class], 'email' => ['required', 'string', 'lowercase', 'email', 'max:255', 'unique:'.User::class],
'password' => ['required', 'confirmed', Rules\Password::defaults()], 'password' => ['required', 'confirmed', Rules\Password::defaults()],
'role' => ['required', 'exists:roles,name'], // Walidacja wybrane pole musi istnieć w tabeli roles 'role' => ['nullable', 'exists:roles,name'], // Walidacja jeśli rola została wysłana, musi istnieć w tabeli roles
]); ]);
// 2. Utworzenie nowego użytkownika // 2. Utworzenie nowego użytkownika
$user = User::create([ $user = User::create([
'name' => $request->name, 'name' => $request->name,
'surname' => $request->surname, 'surname' => $request->surname ?? '',
'email' => $request->email, 'email' => $request->email,
'password' => Hash::make($request->password), 'password' => Hash::make($request->password),
]); ]);
// 3. Przypisanie wybranej roli ze Spatie // 3. Przypisanie wybranej roli ze Spatie
if ($request->filled('role')) {
$user->assignRole($request->role); $user->assignRole($request->role);
}
// 4. Wysłanie zdarzenia rejestracji i zalogowanie // 4. Wysłanie zdarzenia rejestracji i zalogowanie
event(new Registered($user)); event(new Registered($user));

View File

@ -17,7 +17,7 @@ class ProfileUpdateRequest extends FormRequest
{ {
return [ return [
'name' => ['required', 'string', 'max:255'], 'name' => ['required', 'string', 'max:255'],
'surname' => ['required', 'string', 'max:255'], // Jeśli używasz nazwiska 'surname' => ['nullable', 'string', 'max:255'],
'email' => [ 'email' => [
'required', 'required',
'string', 'string',
@ -26,7 +26,7 @@ class ProfileUpdateRequest extends FormRequest
'max:255', 'max:255',
Rule::unique(User::class)->ignore($this->user()->id), Rule::unique(User::class)->ignore($this->user()->id),
], ],
'role' => ['nullable', 'string', 'exists:roles,name'], // Dopuszczamy role 'role' => ['nullable', 'string', 'exists:roles,name'],
]; ];
} }
} }

View File

@ -73,7 +73,7 @@
<x-dropdown align="right" width="48"> <x-dropdown align="right" width="48">
<x-slot name="trigger"> <x-slot name="trigger">
<button class="inline-flex items-center px-3 py-2 border border-transparent text-sm leading-4 font-medium rounded-md text-gray-500 dark:text-gray-400 bg-white dark:bg-gray-800 hover:text-gray-700 dark:hover:text-gray-300 focus:outline-none transition ease-in-out duration-150"> <button class="inline-flex items-center px-3 py-2 border border-transparent text-sm leading-4 font-medium rounded-md text-gray-500 dark:text-gray-400 bg-white dark:bg-gray-800 hover:text-gray-700 dark:hover:text-gray-300 focus:outline-none transition ease-in-out duration-150">
<div>{{ Auth::user()->name }}</div> <div>{{ Auth::user()?->name ?? 'Guest' }}</div>
<div class="ms-1"> <div class="ms-1">
<svg class="fill-current h-4 w-4" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"> <svg class="fill-current h-4 w-4" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20">
@ -150,8 +150,8 @@
<div class="pt-4 pb-1 border-t border-gray-200 dark:border-gray-600"> <div class="pt-4 pb-1 border-t border-gray-200 dark:border-gray-600">
<div class="px-4 flex justify-between items-center"> <div class="px-4 flex justify-between items-center">
<div> <div>
<div class="font-medium text-base text-gray-800 dark:text-gray-200">{{ Auth::user()->name }}</div> <div class="font-medium text-base text-gray-800 dark:text-gray-200">{{ Auth::user()?->name ?? 'Guest' }}</div>
<div class="font-medium text-sm text-gray-500">{{ Auth::user()->email }}</div> <div class="font-medium text-sm text-gray-500">{{ Auth::user()?->email ?? '' }}</div>
</div> </div>
<!-- Dark Mode Toggle Button (Mobile) --> <!-- Dark Mode Toggle Button (Mobile) -->