Skip to content
Snippets Groups Projects
Commit 89afdc13 authored by Fabien Zucchet's avatar Fabien Zucchet
Browse files

One shot of admin and staff middlewares - hope so

parent 4a05948a
Branches
No related tags found
No related merge requests found
......@@ -157,4 +157,13 @@ async function getUsersPerformance(req, res) {
}
}
module.exports = { getAdministrateurs, addNewAdministrateur, updateAdministrateur, deleteAdministrateur, getAdminsLogins, getUsers }
function isAdminMiddleware(req, res, next) {
const login = req.session.ids.user.login || '';
const admins = getAdminsLogins();
if (admins.includes(login)) {
return next();
}
res.status(403).send('You have no right to request this url');
}
module.exports = { getAdministrateurs, addNewAdministrateur, updateAdministrateur, deleteAdministrateur, getAdminsLogins, getUsers, isAdminMiddleware }
......@@ -72,4 +72,13 @@ function getStaffeursLogins(req, res) {
con.end();
}
module.exports = { getStaffeurs, addNewStaffeur, deleteStaffeur, getStaffeursLogins }
function isStaffMiddleware(req, res, next) {
const login = req.session.ids.user.login || '';
const staffs = getStaffLogins();
if (staffs.includes(login)) {
return next();
}
res.status(403).send('You have no right to request this url');
}
module.exports = { getStaffeurs, addNewStaffeur, deleteStaffeur, getStaffeursLogins, isStaffMiddleware }
......@@ -4,7 +4,10 @@ var cookieParser = require('cookie-parser');
var apiRouter = require('./routes/api');
var apiAdminRouter = require('./routes/apiAdmin');
var apiStaffRouter = require('./routes/apiStaff');
var oauth = require('./controllers/auth.controller');
var admin = require('./controllers/administrateur.controller');
var staff = require('./controllers/staffeurs.controller');
var app = express();
......@@ -15,7 +18,8 @@ app.use(express.json());
app.use(express.urlencoded({ extended: false }));
app.use('/api', apiRouter);
app.use('/api/admin', oauth.authMiddleware, apiAdminRouter);
app.use('/api/staff', oauth.authMiddleware, staff.isStaffMiddleware, apiStaffRouter);
app.use('/api/admin', oauth.authMiddleware, admin.isAdminMiddleware, apiAdminRouter);
app.get('/api/login', function (req, res) {
res.redirect(oauth.getRedirectURI());
......
var express = require('express');
var router = express.Router();
var controller = require('../controller')
router.post('/new_participant_with_id', controller.participant.addNewParticipantWithId);
router.post('/new_score', controller.scores.addNewScore);
module.exports = router;
......@@ -5,7 +5,7 @@ import { useForm } from 'react-hook-form';
export function AddScoreForm() {
const addScore = (props) => {
axios.post('/api/admin/new_score',
axios.post('/api/staff/new_score',
{
score: props.score,
equipe: props.equipe,
......
......@@ -5,7 +5,7 @@ import { useForm } from 'react-hook-form';
export function AddScoreForm() {
const addScore = (props) => {
axios.post('/api/admin/new_score',
axios.post('/api/staff/new_score',
{
score: props.score,
equipe: props.equipe,
......
......@@ -18,25 +18,26 @@ function Submit (props) {
function addScore() {
/*if (participants[0] === undefined) {
axios.post('/api/admin/new_participant_with_id',
axios.post('/api/staff/new_participant_with_id',
{
id: props.participant.value,
name: props.participant.label
})
}*/
axios.post('/api/admin/new_score',
axios.post('/api/staff/new_score',
{
score: Math.max(0, props.score),
equipe: props.equipe.value,
participant: props.participant.value
})
.then(() => {
axios.post('/api/admin/new_participant_with_id',
axios.post('/api/staff/new_participant_with_id',
{
id: props.participant.value,
name: props.participant.label
})})
})
})
.then(() => {
alert("Score ajouté");
window.location = '/Input';
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment