add composer-unused, comprehensive docs, and project restructure
- Add icanhazstring/composer-unused as dev dependency for dependency hygiene checks - Add German documentation (docs/) covering architecture, conventions, workflows, and developer checklists - Add API layer (ApiAuth, ApiBootstrap, ApiResponse), audit, scheduler, custom fields, and SSO services - Add Microsoft OIDC SSO, API token management, and user lifecycle features - Add swagger-ui vendor integration and OpenAPI spec - Add production Docker setup and bin/ scripts - Update composer dependencies, config, templates, and frontend assets throughout Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -79,13 +79,16 @@ class RememberMeService
|
||||
if (!empty($user['locale'])) {
|
||||
I18n::$locale = (string) $user['locale'];
|
||||
}
|
||||
$userId = (int) ($user['id'] ?? 0);
|
||||
$userId = (int) $user['id'];
|
||||
if ($userId > 0) {
|
||||
PermissionService::getUserPermissions($userId, true);
|
||||
AuthService::loadTenantDataIntoSession($userId);
|
||||
if (empty($_SESSION['no_active_tenant'])) {
|
||||
UserRepository::updateLastLogin($userId);
|
||||
if (!empty($_SESSION['no_active_tenant'])) {
|
||||
// Enforce the same tenant policy as interactive login.
|
||||
AuthService::logout();
|
||||
return false;
|
||||
}
|
||||
UserRepository::updateLastLogin($userId, 'local');
|
||||
}
|
||||
|
||||
$newToken = bin2hex(random_bytes(32));
|
||||
|
||||
Reference in New Issue
Block a user