Skip to content
Snippets Groups Projects
Commit 9841a235 authored by Guillaume WANG's avatar Guillaume WANG
Browse files

put all admin_view in path adminview/

parent a2537a1d
No related branches found
No related tags found
No related merge requests found
......@@ -8,7 +8,7 @@ import router from './routing/admin_router';
import passport from 'passport';
// setting up l'interface admin des BDD
server.use('/',router); // catches and resolves HTTP requests to paths '/adminview/*'
server.use('/adminview',router); // catches and resolves HTTP requests to paths '/adminview/*'
// gere les requetes de login du front
server.post('/login',
......
......@@ -3,6 +3,9 @@
* Il définit la page de connexion `/`, le panneau administrateur `/admin` et l'API REST \(`/db/:table?`)
* permettant de consulter la base de donnée interne à Sigma, via des requêtes construites avec Knex.
* @author manifold
*
* Les res.redirect() sont censes supporter les paths relatifs (et donc pas besoin de repreciser /adminview/* a chaque fois)
* mais ca marche visiblement pas... Donc j'ai mis les paths absolus dans les res.redirect().
*/
import express from 'express';
import knex from '../../db/knex_router';
......@@ -20,20 +23,20 @@ let port = process.env.PORT || 3000;
*/
router.get('/', function (req, res) {
console.log("GET handler for /adminview route");
console.log('Connecting to ' + req.url);
console.log('Trying to go to admin page...');
res.redirect('/admin');
res.redirect('/adminview/admin');
});
//note that this doesn't conflict with the server.get('/login', ...) in index.js since this catches path '/adminview/login'
router.get('/login', function (req, res) {
router.get('/avlogin', function (req, res) {
console.log('Connecting to ' + req.url);
res.render('login', { title: 'Login', port: port,
errorMessage: req.flash('error') }); //lets pug render src/views/login.pug with specified attributes
});
router.get('/admin',
ensureLoggedIn('/login'),
ensureLoggedIn('/adminview/avlogin'),
function (req, res) {
console.log('Connecting to ' + req.url);
let userName;
......@@ -54,10 +57,10 @@ router.get('/admin',
}
);
router.post('/login',
router.post('/avlogin',
passport.authenticate('ldapauth', {
successRedirect: '/admin',
failureRedirect: '/login',
successRedirect: '/adminview/admin',
failureRedirect: '/adminview/avlogin',
failureFlash: true
}
// on a besoin de faire un callback apres le passport.authenticate car
......@@ -79,16 +82,18 @@ router.post('/login',
)
);
router.post('/logout', function (req, res) {
router.post('/avlogout', function (req, res) {
req.logout();
res.redirect('/');
res.redirect('/adminview');
});
// je pense qu'on ferait mieux d'utiliser ca
// https://expressjs.com/en/4x/api.html#router.route
router.get('/db?', function (req, res) {
let table_name = req.query.table;
let columns = req.query.columns;
res.redirect(`db/${table_name}?columns=${columns}`);
res.redirect(`/adminview/db/${table_name}?columns=${columns}`);
});
/**
......
......@@ -6,4 +6,4 @@ block extraStyles
block content
h1 Error #{status}
p #{error_message}
a(href="/") Go back
\ No newline at end of file
a(href="/adminview/admin") Go back
\ No newline at end of file
......@@ -5,7 +5,7 @@ block content
h2 Query the database
p Hello, world! This is server talking to you live on port #{port}!
p You can use the REST API to query the database using the form below.
form(action="/db", method="get")
form(action="/adminview/db", method="get")
div.form-group
label(for="table") Table
input.form-control(type="search", name="table")
......@@ -21,5 +21,5 @@ block content
a(class="button button-small",href="/voyager") Voyager
|
p Currently logged in as: #{userName}.
form(action="/logout", method="post")
form(action="/adminview/logout", method="post")
button.form-control(type="submit",class="button") Déconnexion/<em>Logout</em>
......@@ -6,7 +6,7 @@ block content
p Veuillez vous connecter.
p <em>Please log in.</em>
p #{errorMessage}
form(action="/login", method="post")
form(action="/adminview/avlogin", method="post")
div.form-group
label(for="username") Frankiz ID
input.form-control(type="text", placeholder="User", name="username")
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment