32 lines
1.1 KiB
JavaScript
Executable file
32 lines
1.1 KiB
JavaScript
Executable file
import { login, isLoggedIn } from "./auth.js";
|
|
|
|
if (isLoggedIn()) {
|
|
location.replace("./app.html");
|
|
}
|
|
|
|
const form = document.getElementById("loginForm");
|
|
const msg = document.getElementById("msg");
|
|
|
|
function setMsg(text) {
|
|
msg.textContent = text || "";
|
|
}
|
|
|
|
form.addEventListener("submit", async (e) => {
|
|
e.preventDefault();
|
|
setMsg("Вход…");
|
|
|
|
const email = document.getElementById("email").value.trim();
|
|
const password = document.getElementById("password").value;
|
|
const remember = document.getElementById("remember").checked;
|
|
|
|
try {
|
|
await login(email, password, remember);
|
|
location.replace("./app.html");
|
|
} catch (err) {
|
|
// Сервер: 412 (не найден логин), 423 (отключён), 426 (токен) :contentReference[oaicite:6]{index=6}
|
|
const status = err?.status;
|
|
if (status === 412) return setMsg("Логин/пароль неверны.");
|
|
if (status === 423) return setMsg("Учётная запись отключена.");
|
|
setMsg("Ошибка входа.");
|
|
}
|
|
});
|