fix: Fix multiple bugs with new authentication flow

This commit is contained in:
2026-06-07 15:04:21 +02:00
parent 9fc26b1ccf
commit 83456c018c
137 changed files with 4710 additions and 281 deletions

View File

@@ -30,6 +30,9 @@ import {
} from '@ng-icons/lucide';
import { AppI18nService, APP_TRANSLATE_IMPORTS } from '../../../../core/i18n';
import { setStoredCurrentUserId } from '../../../../core/storage/current-user-storage';
import { buildLoginReturnQueryParams } from '../../../authentication/domain/logic/auth-navigation.rules';
import { AutoFocusDirective, SelectOnFocusDirective } from '../../../../shared/directives';
import { RoomsActions } from '../../../../store/rooms/rooms.actions';
import {
selectSearchResults,
@@ -93,6 +96,8 @@ export interface ServerDiscoverySection {
ConfirmDialogComponent,
LeaveServerDialogComponent,
ModalBackdropComponent,
AutoFocusDirective,
SelectOnFocusDirective,
...APP_TRANSLATE_IMPORTS
],
viewProviders: [
@@ -260,13 +265,19 @@ export class ServerBrowserComponent implements OnInit {
}
async joinServer(server: ServerInfo): Promise<void> {
const currentUserId = localStorage.getItem('metoyou_currentUserId');
const currentUser = this.currentUser();
const currentUserId = localStorage.getItem('metoyou_currentUserId') || currentUser?.id;
if (!currentUserId) {
this.router.navigate(['/login']);
this.router.navigate(['/login'], {
queryParams: buildLoginReturnQueryParams(this.router.url)
});
return;
}
setStoredCurrentUserId(currentUserId);
if (await this.isServerBanned(server)) {
this.bannedServerName.set(server.name);
this.showBannedDialog.set(true);
@@ -492,14 +503,19 @@ export class ServerBrowserComponent implements OnInit {
password?: string,
options: { acceptedRequirements?: PluginRequirementSummary[]; skipPluginConsent?: boolean } = {}
): Promise<void> {
const currentUserId = localStorage.getItem('metoyou_currentUserId');
const currentUser = this.currentUser();
const currentUserId = localStorage.getItem('metoyou_currentUserId') || currentUser?.id;
if (!currentUserId) {
this.router.navigate(['/login']);
this.router.navigate(['/login'], {
queryParams: buildLoginReturnQueryParams(this.router.url)
});
return;
}
setStoredCurrentUserId(currentUserId);
this.joinErrorMessage.set(null);
this.joinPasswordError.set(null);