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

modified admin_router routing

parent aa5441f9
No related branches found
No related tags found
No related merge requests found
/** /**
* @file Ce fichier définit le routage d'URL au sein de l'interface du _backend_. * @file Ce fichier définit le routage d'URL au sein de l'interface du _backend_.
* * Il définit la page de connexion `/`, le panneau administrateur `/admin` et l'API REST \(`/db/:table?`)
* 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. * permettant de consulter la base de donnée interne à Sigma, via des requêtes construites avec Knex.
* @author manifold * @author manifold
*/ */
...@@ -14,21 +13,24 @@ const router = express.Router(); ...@@ -14,21 +13,24 @@ const router = express.Router();
let port = process.env.PORT || 3000; let port = process.env.PORT || 3000;
/**
* @description Le login se fait en POST. Faire un GET à la racine / renvoie sur
* /login ou sur /admin selon que l'utilisateur est connecté ou non.
*/
router.get('/', function (req, res) { router.get('/', function (req, res) {
console.log('Redirecting to admin page...');
res.redirect('/admin');
});
router.get('/login', function (req, res) {
console.log('Connecting to ' + req.url); console.log('Connecting to ' + req.url);
req.flash('failureFlash', 'Invalid username or password.'); req.flash('failureFlash', 'Invalid username or password.');
res.render('login', { title: 'Login', port: port, res.render('login', { title: 'Login', port: port,
errorMessage: req.flash('error') }); errorMessage: req.flash('error') });
}); });
/**
* @description Le login se fait en POST. Faire un GET à /login renvoie à la racine /
*/
router.get('/login', function(req,res) {
console.log('Redirecting to home...');
res.redirect('/');
});
router.get('/admin', router.get('/admin',
ensureLoggedIn('/login'), ensureLoggedIn('/login'),
function (req, res) { function (req, res) {
...@@ -52,8 +54,9 @@ router.get('/admin', ...@@ -52,8 +54,9 @@ router.get('/admin',
router.post('/login', router.post('/login',
passport.authenticate('ldapauth', { passport.authenticate('ldapauth', {
successRedirect: '/admin', successRedirect: '/admin',
failureRedirect: '/', failureRedirect: '/login',
failureFlash: true failureFlash: true
}
// on a besoin de faire un callback apres le passport.authenticate car // on a besoin de faire un callback apres le passport.authenticate car
// on souhaite garde l'information user.dn et body.password qq part. // on souhaite garde l'information user.dn et body.password qq part.
// TODO: essayer de garder ces informations plus proprement... // TODO: essayer de garder ces informations plus proprement...
...@@ -70,7 +73,8 @@ router.post('/login', ...@@ -70,7 +73,8 @@ router.post('/login',
} }
} }
*/ */
})); )
);
router.post('/logout', function (req, res) { router.post('/logout', function (req, res) {
req.logout(); req.logout();
......
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