90 lines
5.0 KiB
PHP
90 lines
5.0 KiB
PHP
<x-app-layout>
|
|
<x-slot name="header">
|
|
<h2 class="font-semibold text-xl text-gray-800 dark:text-gray-200 leading-tight">
|
|
{{ __('Edycja użytkownika') }}: {{ $user->name }} {{ $user->surname }}
|
|
</h2>
|
|
</x-slot>
|
|
|
|
<div class="py-12">
|
|
<div class="max-w-7xl mx-auto sm:px-6 lg:px-8 space-y-6">
|
|
|
|
<div class="p-4 sm:p-8 bg-white dark:bg-gray-800 shadow sm:rounded-lg">
|
|
<div class="max-w-xl">
|
|
<section>
|
|
<header>
|
|
<h2 class="text-lg font-medium text-gray-900 dark:text-gray-100">
|
|
{{ __('Dane użytkownika') }}
|
|
</h2>
|
|
|
|
<p class="mt-1 text-sm text-gray-600 dark:text-gray-400">
|
|
{{ __('Zaktualizuj dane osobowe oraz rolę przypisaną do konta.') }}
|
|
</p>
|
|
</header>
|
|
|
|
<form method="post" action="{{ route('users.update', $user) }}" class="mt-6 space-y-6">
|
|
@csrf
|
|
@method('put')
|
|
|
|
<!-- Imię -->
|
|
<div>
|
|
<x-input-label for="name" :value="__('Imię')" />
|
|
<x-text-input id="name" name="name" type="text" class="mt-1 block w-full" :value="old('name', $user->name)" required autofocus />
|
|
<x-input-error class="mt-2" :messages="$errors->get('name')" />
|
|
</div>
|
|
|
|
<!-- Nazwisko -->
|
|
<div>
|
|
<x-input-label for="surname" :value="__('Nazwisko')" />
|
|
<x-text-input id="surname" name="surname" type="text" class="mt-1 block w-full" :value="old('surname', $user->surname)" required />
|
|
<x-input-error class="mt-2" :messages="$errors->get('surname')" />
|
|
</div>
|
|
|
|
<!-- Email -->
|
|
<div>
|
|
<x-input-label for="email" :value="__('Email')" />
|
|
<x-text-input id="email" name="email" type="email" class="mt-1 block w-full" :value="old('email', $user->email)" required />
|
|
<x-input-error class="mt-2" :messages="$errors->get('email')" />
|
|
</div>
|
|
|
|
<!-- Rola -->
|
|
<div>
|
|
<x-input-label for="role" :value="__('Rola')" />
|
|
<select id="role" name="roles[]" class="mt-1 block w-full border-gray-300 dark:border-gray-700 dark:bg-gray-900 dark:text-gray-300 focus:border-indigo-500 dark:focus:border-indigo-600 focus:ring-indigo-500 dark:focus:ring-indigo-600 rounded-md shadow-sm">
|
|
@foreach($roles as $role)
|
|
<option value="{{ $role->name }}" {{ $user->hasRole($role->name) ? 'selected' : '' }}>
|
|
{{ strtoupper($role->name) }}
|
|
</option>
|
|
@endforeach
|
|
</select>
|
|
<x-input-error class="mt-2" :messages="$errors->get('roles')" />
|
|
</div>
|
|
|
|
<!-- Przyciski -->
|
|
<div class="flex items-center justify-between gap-4">
|
|
<div class="flex items-center gap-4">
|
|
<x-primary-button>{{ __('Zapisz') }}</x-primary-button>
|
|
<a href="{{ route('users.index') }}" class="text-sm text-gray-600 dark:text-gray-400 hover:text-gray-900 dark:hover:text-gray-100 transition">
|
|
{{ __('Anuluj') }}
|
|
</a>
|
|
</div>
|
|
</div>
|
|
</form>
|
|
|
|
@if(auth()->id() !== $user->id)
|
|
<div class="mt-6 flex justify-end">
|
|
<form method="POST" action="{{ route('users.destroy', $user) }}" onsubmit="return confirm('Czy na pewno chcesz usunąć tego użytkownika?');">
|
|
@csrf
|
|
@method('DELETE')
|
|
<button type="submit" class="inline-flex items-center px-4 py-2 bg-red-600 hover:bg-red-500 text-white text-sm font-medium rounded-md shadow-sm transition">
|
|
{{ __('Usuń użytkownika') }}
|
|
</button>
|
|
</form>
|
|
</div>
|
|
@endif
|
|
</section>
|
|
</div>
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
</x-app-layout> |