diff --git a/frontend/src/scripts/controllers/account-controller.ts b/frontend/src/scripts/controllers/account-controller.ts index 97bfe47d2..d9f4dc0c9 100644 --- a/frontend/src/scripts/controllers/account-controller.ts +++ b/frontend/src/scripts/controllers/account-controller.ts @@ -321,6 +321,7 @@ export function signIn(): void { authListener(); $(".pageLogin .preloader").removeClass("hidden"); $(".pageLogin .button").addClass("disabled"); + $(".pageLogin input").prop("disabled", true); const email = ($(".pageLogin .login input")[0] as HTMLInputElement).value; const password = ($(".pageLogin .login input")[1] as HTMLInputElement).value; @@ -355,13 +356,14 @@ export function signIn(): void { .catch(function (error) { let message = error.message; if (error.code === "auth/wrong-password") { - message = "Incorrect password."; + message = "Incorrect password"; } else if (error.code === "auth/user-not-found") { - message = "User not found."; + message = "User not found"; } Notifications.add(message, -1); $(".pageLogin .preloader").addClass("hidden"); $(".pageLogin .button").removeClass("disabled"); + $(".pageLogin input").prop("disabled", false); }); }); } @@ -370,6 +372,7 @@ export async function signInWithGoogle(): Promise { UpdateConfig.setChangedBeforeDb(false); $(".pageLogin .preloader").removeClass("hidden"); $(".pageLogin .button").addClass("disabled"); + $(".pageLogin input").prop("disabled", true); authListener(); let signedInUser; try { @@ -426,6 +429,7 @@ export async function signInWithGoogle(): Promise { Notifications.add("Account created", 1, 3); $("#menu .text-button.account .text").text(name); $(".pageLogin .button").removeClass("disabled"); + $(".pageLogin input").prop("disabled", false); $(".pageLogin .preloader").addClass("hidden"); await loadUser(signedInUser.user); PageController.change("account"); @@ -459,6 +463,7 @@ export async function signInWithGoogle(): Promise { Notifications.add(message, -1); $(".pageLogin .preloader").addClass("hidden"); $(".pageLogin .button").removeClass("disabled"); + $(".pageLogin input").prop("disabled", false); if (signedInUser && getAdditionalUserInfo(signedInUser)?.isNewUser) { await Ape.users.delete(); await signedInUser.user.delete(); @@ -566,6 +571,7 @@ export function signOut(): void { PageController.change("login"); DB.setSnapshot(defaultSnap); $(".pageLogin .button").removeClass("disabled"); + $(".pageLogin input").prop("disabled", false); }) .catch(function (error) { Notifications.add(error.message, -1); @@ -574,6 +580,7 @@ export function signOut(): void { async function signUp(): Promise { $(".pageLogin .button").addClass("disabled"); + $(".pageLogin input").prop("disabled", true); $(".pageLogin .preloader").removeClass("hidden"); const nname = ($(".pageLogin .register input")[0] as HTMLInputElement).value; const email = ($(".pageLogin .register input")[1] as HTMLInputElement).value; @@ -589,6 +596,7 @@ async function signUp(): Promise { Notifications.add("Emails do not match", 0, 3); $(".pageLogin .preloader").addClass("hidden"); $(".pageLogin .button").removeClass("disabled"); + $(".pageLogin input").prop("disabled", false); return; } @@ -596,6 +604,7 @@ async function signUp(): Promise { Notifications.add("Passwords do not match", 0, 3); $(".pageLogin .preloader").addClass("hidden"); $(".pageLogin .button").removeClass("disabled"); + $(".pageLogin input").prop("disabled", false); return; } @@ -605,6 +614,7 @@ async function signUp(): Promise { Notifications.add(response.message, -1); $(".pageLogin .preloader").addClass("hidden"); $(".pageLogin .button").removeClass("disabled"); + $(".pageLogin input").prop("disabled", false); return; } @@ -632,6 +642,7 @@ async function signUp(): Promise { AllTimeStats.clear(); $("#menu .text-button.account .text").text(nname); $(".pageLogin .button").removeClass("disabled"); + $(".pageLogin input").prop("disabled", false); $(".pageLogin .preloader").addClass("hidden"); await loadUser(createdAuthUser.user); if (TestLogic.notSignedInLastResult !== null) { @@ -664,6 +675,7 @@ async function signUp(): Promise { Notifications.add(message, -1); $(".pageLogin .preloader").addClass("hidden"); $(".pageLogin .button").removeClass("disabled"); + $(".pageLogin input").prop("disabled", false); signOut(); return; } diff --git a/frontend/src/styles/inputs.scss b/frontend/src/styles/inputs.scss index 8229776e3..ac55a409f 100644 --- a/frontend/src/styles/inputs.scss +++ b/frontend/src/styles/inputs.scss @@ -62,6 +62,12 @@ input[type="color"] { pointer-events: none; } +input:disabled, +textarea:disabled { + // color: var(--sub-color); + opacity: 0.33; +} + ::-moz-color-swatch { border: none; } @@ -93,6 +99,7 @@ select:-webkit-autofill:focus { font-family: inherit; -webkit-text-fill-color: var(--text-color); -webkit-box-shadow: 0 0 0 1000000px var(--sub-alt-color) inset; + caret-color: var(--text-color); } .select2-dropdown {