47 lines
1.3 KiB
JavaScript
47 lines
1.3 KiB
JavaScript
import {
|
|
showError,
|
|
showSuccess,
|
|
} from './common.js';
|
|
|
|
export function val(api) {
|
|
let form = document.getElementById("login-form");
|
|
|
|
if (form.checkValidity() === false) {
|
|
this.event.preventDefault();
|
|
this.event.stopPropagation();
|
|
form.classList.add("was-validated");
|
|
return;
|
|
}
|
|
form.classList.add("was-validated");
|
|
|
|
let payload = {
|
|
email: document.getElementById("email").value,
|
|
password: document.getElementById("password").value,
|
|
};
|
|
|
|
const requestOptions = {
|
|
method: 'post',
|
|
headers: {
|
|
'Accept': 'application/json',
|
|
'Content-Type': 'application/json',
|
|
},
|
|
body: JSON.stringify(payload),
|
|
};
|
|
|
|
fetch(api + "/api/authenticate", requestOptions)
|
|
.then(response => response.json())
|
|
.then(response => {
|
|
console.log(response)
|
|
if (response.error === false) {
|
|
localStorage.setItem("token", response.authentication_token.token);
|
|
localStorage.setItem("token_expiry", response.authentication_token.expiry);
|
|
showSuccess("login-messages", "Login successful.")
|
|
location.href = "/";
|
|
} else {
|
|
showError("login-messages", response.message)
|
|
}
|
|
});
|
|
}
|
|
|
|
|