@php
$employeesGrouped = $employeesGrouped ?? collect();
$selectedEmployees = [];
// Decode selected employees if available
if (!empty($data->who_can_access_employee)) {
$selectedEmployees = is_array($data->who_can_access_employee)
? $data->who_can_access_employee
: json_decode($data->who_can_access_employee, true);
if (!is_array($selectedEmployees)) {
$selectedEmployees = explode(',', $data->who_can_access_employee);
}
}
// Normalize to array of strings
$selectedEmployees = array_map('strval', $selectedEmployees);
// $preselectAll = empty($selectedEmployees);
@endphp
@forelse($employeesGrouped as $roleName => $roleEmployees)
{{-- Role heading, disabled and non-clickable --}}
@if($roleEmployees->count())
@foreach($roleEmployees as $emp)
@php
// Skip employees with empty or whitespace-only names
$empName = trim($emp->name ?? '');
if ($empName === '') continue;
// Determine if this employee should be preselected
// $preselected = $preselectAll || in_array((string)$emp->id, $selectedEmployees);
$preselected = in_array((string)$emp->id, $selectedEmployees);
@endphp
@endforeach
@endif
@empty
@endforelse