diff --git a/private/admin.mustache b/private/admin.mustache deleted file mode 100644 index 9b282238d429cc334de2c7e125b1b80d87da1097..0000000000000000000000000000000000000000 --- a/private/admin.mustache +++ /dev/null @@ -1,6 +0,0 @@ -<body> - <!--Utilisation du mécanimes des "partials" de Mustache pour importer le header qui sera commun à toutes les pages --> - {{>header}} - {{>produit}} - {{>footer}} -</body> \ No newline at end of file diff --git a/public/js/main.js b/public/js/main.js index 848217cd0e68b5dbd404b1e5ef3fceb13e3d7fb1..4a7d0ed7cb2173907198c957b5144ca833997c1d 100644 --- a/public/js/main.js +++ b/public/js/main.js @@ -74,22 +74,11 @@ const loadPartials = (() => { } })(); -// Route pour la page d'admin -page('/admin', async function () { - // Si on n'est pas authentifé, on affiche la page de login +page('/listecourse', async function () { if (!context.logged) { page('/login'); + return; } - else { - // Sinon on charge le template d'admin - // Si on n'est pas authentifié (ex: un petit malin a changé la valeur de 'logged') - // le serveur ne renverra tout de même pas le template puisqu'il est dans la partie 'private' - renderTemplate(templates('private/admin.mustache'), { ...context, ariane: [{ text: 'Home', url: '/' }, { text: 'Admin' }] }); - } -}); - -// Route pour la page d'admin -page('/listecourse', async function () { updateHeaderContext(context, 'listecourse') @@ -136,8 +125,8 @@ page('/listecourse', async function () { // route pour la page d'authentification des utilisateurs page('/login', async function () { - // pas besoin de faire de await sur cet appel puisqu'il n'y a pas d'autre - // traitement ensuite + + renderLoginPage(context); // fonction interne d'affichage de la page @@ -177,9 +166,8 @@ page('/login', async function () { result = await result.json(); // Et que l'authentification s'est bien passée if (result.success) { - // on passe à la page d'administration context.logged = true; - page('/admin'); + page('/'); } else { // Sinon on réaffiche la page avec quelques infos pour expliquer ce qui n'a pas marché @@ -196,6 +184,12 @@ page('/login', async function () { }); page('/inventaire', async function (request) { + if (!context.logged) { + page('/login'); + return; + } + + updateHeaderContext(context, "inventaire"); let response = await fetch('api/inventaire'); @@ -244,9 +238,14 @@ page('/inventaire', async function (request) { }); }); -// Route pour la page principale (index.html) + page('/fournisseurs', async function (request) { - let response; + + if (!context.logged) { + page('/login'); + return; + } + updateHeaderContext(context, "fournisseurs"); // fonction interne de chargement et d'affichage des albums d'un artiste context.fournisseurs = await (await fetch('api/fournique')).json(); @@ -282,13 +281,21 @@ page('/fournisseurs', async function (request) { }); page('/options', async function () { + if (!context.logged) { + page('/login'); + return; + } + updateHeaderContext(context, "options"); await renderTemplate(templates('public/page/options.mustache'), context); }); // Route pour la page principale (index.html) page('/', async function () { - + if (!context.logged) { + page('/login'); + return; + } let response = await fetch('api/inventaire'); const produits = await response.json(); diff --git a/public/page/fournisseurs.mustache b/public/page/fournisseurs.mustache index 15f98a76a6665923c8c36dfa4b2707e2960a604d..d2c0b6ec3e14654b03c42d2cda0e3ab892a62fc7 100644 --- a/public/page/fournisseurs.mustache +++ b/public/page/fournisseurs.mustache @@ -1,11 +1,6 @@ <body> <main class="d-flex flex-column h-100 vh-100"> {{>header}} - <div class="container"> - <div class="d-flex justify-content-center"> - <a name="" id="" class="btn btn-primary" href="/login" role="button">Connexion</a> - </div> - </div> <div class="container text-center"> {{#fournisseurs}} <div class="row align-items-center"> diff --git a/public/page/inventaire.mustache b/public/page/inventaire.mustache index a074e09366c4b4400fcfff1b7265a5c134a45001..8b2b8e3f8a19e7e385d7a9c7537c01f3fa237acc 100644 --- a/public/page/inventaire.mustache +++ b/public/page/inventaire.mustache @@ -3,11 +3,6 @@ <main class="d-flex flex-column h-100 vh-100"> {{>header}} - <div class="container"> - <div class="d-flex justify-content-center"> - <a name="" id="" class="btn btn-primary" href="/login" role="button">Connexion</a> - </div> - </div> <div class="container text-center"> {{#produits}} <div class="row align-items-center">