$errors * @var array $form * @var array $user */ use MintyPHP\Service\User\UserServicesFactory; use MintyPHP\Session; $values = $form ?? $user ?? []; $avatarUuid = (string) ($values['uuid'] ?? ''); $userAvatarService = (new UserServicesFactory())->createUserAvatarService(); $hasAvatar = $avatarUuid !== '' && $userAvatarService->hasAvatar($avatarUuid); $currentUserId = (int) ($_SESSION['user']['id'] ?? 0); $isOwnAccount = $currentUserId > 0 && $currentUserId === (int) ($values['id'] ?? 0); $titleText = $isOwnAccount ? t('My account') : t('Edit user'); $canViewUsers = can('users.view'); $canViewAddressBook = can('address_book.view'); $canViewUserMeta = can('users.view_meta'); $canViewUserAudit = can('users.view_audit'); $canAccessPdf = can('users.access_pdf'); $canEditUser = !empty($canEditUser); $canDeleteUser = can('users.delete') && !$isOwnAccount; $hideNavigation = $isOwnAccount && !$canViewUsers; $lastLoginProvider = strtolower((string) ($values['last_login_provider'] ?? ($user['last_login_provider'] ?? ''))); $lastLoginAt = (string) ($values['last_login_at'] ?? ($user['last_login_at'] ?? '')); $lastLoginProviderLabel = '-'; $lastLoginProviderVariant = 'neutral'; if ($lastLoginAt !== '') { if ($lastLoginProvider === 'microsoft') { $lastLoginProviderLabel = t('Microsoft'); $lastLoginProviderVariant = 'primary'; } elseif ($lastLoginProvider === 'local') { $lastLoginProviderLabel = t('Local'); $lastLoginProviderVariant = 'secondary'; } else { $lastLoginProviderLabel = t('Unknown'); $lastLoginProviderVariant = 'warning'; } } ?>