@extends('admin.layouts.app') @section('page-title', 'User Access Control') @push('styles') @endpush @push('scripts') @endpush @section('content')

Select User

Manage users
{{ $users->total() }} users

User Access Control

Choose modules and features for one user

@if(session('status'))

{{ session('status') }}

@endif @if($selectedUser)
{{ $selectedUser->name }}

{{ $selectedUser->email }}
{{ $selectedUser->phone ?: 'Mobile not set' }}

{{ $selectedUser->is_active ? 'Active' : 'Inactive' }}{{ $selectedUser->phone_verified_at ? 'Mobile verified' : 'Verification pending' }}
@if(!$selectedUser->is_active || !$selectedUser->phone_verified_at)

You can prepare access now. The user can sign in after the account is active and mobile verification is complete.

@endif @if($errors->any())@endif @php $selectedPermissions = old('permissions', $snapshot['permissions']); $selectedPermissions = is_array($selectedPermissions) ? $selectedPermissions : $snapshot['permissions']; $formVersion = old('version', $snapshot['version']); $formVersion = is_string($formVersion) && preg_match('/^[a-f0-9]{64}$/D', $formVersion) ? $formVersion : $snapshot['version']; @endphp
@csrf @method('PATCH')

A module checkbox selects its available features. Partial selection is shown automatically.

@foreach($groups as $key => $group)
@foreach($group['features'] as $feature) @php($planned = $feature['planned'] ?? false) @endforeach
@isset($group['note'])

{{ $group['note'] }}

@endisset
@endforeach

Only selected features are allowed. A designation does not grant access; new features stay denied until assigned. Saved changes take effect on the user's next request.

Choose features above
@else

Select a user to manage access

Permissions are assigned to each user individually.

@endif
@endsection