refactor: move all account button related code to one file

This commit is contained in:
Miodec 2024-08-15 12:55:28 +02:00
parent e3a40b46b1
commit 8b4b24f0b1
5 changed files with 18 additions and 9 deletions

View file

@ -44,7 +44,6 @@ import {
} from "../test/test-config";
import * as ConnectionState from "../states/connection";
import { navigate } from "./route-controller";
import { getHtmlByUserFlags } from "./user-flag-controller";
import { FirebaseError } from "firebase/app";
import * as PSA from "../elements/psa";
import defaultResultFilters from "../constants/default-result-filters";
@ -124,10 +123,8 @@ async function getDataAndInit(): Promise<boolean> {
}
LoadingPage.updateText("Applying settings...");
const snapshot = DB.getSnapshot() as MonkeyTypes.Snapshot;
$("nav .textButton.account > .text").text(snapshot.name);
$("nav .textButton.account > .text").append(
getHtmlByUserFlags(snapshot, { iconsOnly: true })
);
AccountButton.updateName(snapshot.name);
AccountButton.updateFlags(snapshot);
showFavoriteQuoteLength();
ResultFilters.loadTags(snapshot.tags);
@ -589,7 +586,6 @@ async function signUp(): Promise<void> {
await updateProfile(createdAuthUser.user, { displayName: nname });
await sendVerificationEmail();
$("nav .textButton.account .text").text(nname);
LoginPage.hidePreloader();
await loadUser(createdAuthUser.user);
if (TestLogic.notSignedInLastResult !== null) {

View file

@ -21,7 +21,7 @@ const flags: UserFlag[] = [
},
];
type SupportsFlags = {
export type SupportsFlags = {
isPremium?: boolean;
banned?: boolean;
lbOptOut?: boolean;

View file

@ -4,6 +4,10 @@ import * as Misc from "../utils/misc";
import * as Levels from "../utils/levels";
import { getAll } from "./theme-colors";
import * as SlowTimer from "../states/slow-timer";
import {
getHtmlByUserFlags,
SupportsFlags,
} from "../controllers/user-flag-controller";
let usingAvatar = false;
@ -96,6 +100,16 @@ export function loading(state: boolean): void {
}
}
export function updateName(name: string): void {
$("header nav .account > .text").text(name);
}
export function updateFlags(flags: SupportsFlags): void {
$("nav .textButton.account > .text").append(
getHtmlByUserFlags(flags, { iconsOnly: true })
);
}
export async function update(
xp?: number,
discordId?: string,

View file

@ -88,7 +88,6 @@ async function apply(): Promise<void> {
await updateProfile(signedInUser.user, { displayName: name });
await sendEmailVerification(signedInUser.user);
Notifications.add("Account created", 1);
$("nav .textButton.account .text").text(name);
LoginPage.enableInputs();
LoginPage.hidePreloader();
await AccountController.loadUser(signedInUser.user);

View file

@ -904,7 +904,7 @@ list.updateName = new SimpleModal({
reloadAfter(2);
}
}
$("nav .textButton.account .text").text(newName);
AccountButton.updateName(newName);
return {
status: 1,