import AbstractView from "../AbstractView.js"; import { client, navigateTo } from "../../index.js"; async function login() { let username = document.getElementById("username").value; let password = document.getElementById("password").value; let response_data = await client.login(username, password); if (response_data == null) { navigateTo("/home"); return; } ["username", "user", "password"].forEach(error_field => { let error_display = document.getElementById(`error_${error_field}`); if (error_display != null) error_display.innerHTML = ""; }); Object.keys(response_data).forEach(error_field => { let error_display = document.getElementById(`error_${error_field}`); if (error_display != null) error_display.innerHTML = response_data[error_field]; }); } export default class extends AbstractView { constructor(params) { super(params); } async postInit() { this.setTitle("Login"); document.getElementById("button").onclick = login; } async getHtml() { if (await client.isAuthentificate()) { navigateTo("/home") return; } return `
`; } }