add: Abstract class to simplifie the code,
AbstractRedirectView, AbstractAuthentificateView AbstractUnAuthentificateView
This commit is contained in:
18
frontend/static/js/views/AbstractAuthentificateView.js
Normal file
18
frontend/static/js/views/AbstractAuthentificateView.js
Normal file
@ -0,0 +1,18 @@
|
||||
import { client, navigateTo } from "../index.js";
|
||||
import AbstractRedirectView from "./AbstractRedirectView.js";
|
||||
|
||||
export default class extends AbstractRedirectView{
|
||||
constructor(params) {
|
||||
super(params, "/login");
|
||||
}
|
||||
|
||||
async redirect()
|
||||
{
|
||||
if (await client.isAuthentificate() === false)
|
||||
{
|
||||
navigateTo(this.redirect_url);
|
||||
return 1;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
}
|
15
frontend/static/js/views/AbstractRedirectView.js
Normal file
15
frontend/static/js/views/AbstractRedirectView.js
Normal file
@ -0,0 +1,15 @@
|
||||
import { navigateTo } from "../index.js";
|
||||
import AbstractView from "./AbstractView.js";
|
||||
|
||||
export default class extends AbstractView{
|
||||
constructor(params, url)
|
||||
{
|
||||
super(params);
|
||||
this.redirect_url = url;
|
||||
}
|
||||
|
||||
async redirect()
|
||||
{
|
||||
navigateTo(url);
|
||||
}
|
||||
}
|
16
frontend/static/js/views/AbstractUnAuthentificateView.js
Normal file
16
frontend/static/js/views/AbstractUnAuthentificateView.js
Normal file
@ -0,0 +1,16 @@
|
||||
import { client, navigateTo } from "../index.js";
|
||||
import AbstractRedirectView from "./AbstractRedirectView.js";
|
||||
|
||||
export default class extends AbstractRedirectView{
|
||||
constructor(params, url) {
|
||||
super(params, url);
|
||||
}
|
||||
|
||||
async redirect()
|
||||
{
|
||||
if (await client.isAuthentificate() === false)
|
||||
return 0;
|
||||
navigateTo(this.redirect_url);
|
||||
return 1;
|
||||
}
|
||||
}
|
@ -1,18 +1,13 @@
|
||||
import AbstractView from "./AbstractView.js";
|
||||
import { client, navigateTo } from "../index.js";
|
||||
import AbstractAuthentificateView from "./AbstractAuthentificateView.js";
|
||||
|
||||
export default class extends AbstractView {
|
||||
export default class extends AbstractAuthentificateView {
|
||||
constructor(params) {
|
||||
super(params);
|
||||
this.setTitle("Home");
|
||||
this.redirect_url = "/login"
|
||||
}
|
||||
|
||||
async getHtml() {
|
||||
if (await client.isAuthentificate() === false)
|
||||
{
|
||||
navigateTo("/login");
|
||||
return;
|
||||
}
|
||||
return `
|
||||
<h1>HOME</h1>
|
||||
<a href="/logout" class="nav__link" data-link>Logout</a>
|
||||
|
@ -1,5 +1,5 @@
|
||||
import AbstractView from "../AbstractView.js";
|
||||
import { client, navigateTo } from "../../index.js";
|
||||
import AbstractUnAuthentificateView from "../AbstractUnAuthentificateView.js";
|
||||
|
||||
async function login()
|
||||
{
|
||||
@ -27,9 +27,9 @@ async function login()
|
||||
});
|
||||
}
|
||||
|
||||
export default class extends AbstractView {
|
||||
export default class extends AbstractUnAuthentificateView {
|
||||
constructor(params) {
|
||||
super(params);
|
||||
super(params, "/home");
|
||||
}
|
||||
|
||||
async postInit()
|
||||
@ -39,11 +39,6 @@ export default class extends AbstractView {
|
||||
}
|
||||
|
||||
async getHtml() {
|
||||
if (await client.isAuthentificate())
|
||||
{
|
||||
navigateTo("/home")
|
||||
return;
|
||||
}
|
||||
return `
|
||||
<div class=form>
|
||||
<label>Login</label>
|
||||
|
@ -1,13 +1,12 @@
|
||||
import { client, navigateTo } from "../../index.js";
|
||||
import AbstractView from "../AbstractView.js";
|
||||
import AbstractAuthentificateView from "../AbstractAuthentificateView.js";
|
||||
|
||||
export default class extends AbstractView
|
||||
export default class extends AbstractAuthentificateView
|
||||
{
|
||||
constructor(params) {
|
||||
super(params);
|
||||
this.setTitle("Logout");
|
||||
if (client.logged)
|
||||
client.logout();
|
||||
client.logout();
|
||||
navigateTo("/login")
|
||||
}
|
||||
}
|
@ -1,5 +1,5 @@
|
||||
import AbstractView from "../AbstractView.js";
|
||||
import { client, navigateTo } from "../../index.js";
|
||||
import AbstractUnAuthentificateView from "../AbstractUnAuthentificateView.js";
|
||||
|
||||
async function register()
|
||||
{
|
||||
@ -22,9 +22,9 @@ async function register()
|
||||
});
|
||||
}
|
||||
|
||||
export default class extends AbstractView {
|
||||
export default class extends AbstractUnAuthentificateView {
|
||||
constructor(params) {
|
||||
super(params);
|
||||
super(params, "/home");
|
||||
}
|
||||
|
||||
async postInit()
|
||||
@ -34,11 +34,6 @@ export default class extends AbstractView {
|
||||
}
|
||||
|
||||
async getHtml() {
|
||||
if (await client.isAuthentificate())
|
||||
{
|
||||
navigateTo("/home")
|
||||
return;
|
||||
}
|
||||
return `
|
||||
<div class=form>
|
||||
<label>Register</label>
|
||||
|
Reference in New Issue
Block a user