mirror of
https://scm.univ-tours.fr/22107988t/rappaurio-sae501_502.git
synced 2025-05-30 15:29:38 +02:00
64 lines
1.5 KiB
JavaScript
64 lines
1.5 KiB
JavaScript
var createError = require('http-errors');
|
|
var express = require('express');
|
|
var path = require('path');
|
|
var cookieParser = require('cookie-parser');
|
|
var logger = require('morgan');
|
|
const mysql = require('mysql');
|
|
const dotenv = require('dotenv');
|
|
|
|
var app = express();
|
|
|
|
dotenv.config({ path : './.env'})
|
|
|
|
// Create database connection
|
|
const db = mysql.createConnection({
|
|
host: process.env.DATABASE_HOST,
|
|
user: process.env.DATABASE_USER,
|
|
password: process.env.DATABASE_PASSWORD,
|
|
database: process.env.DATABASE
|
|
});
|
|
|
|
|
|
// Connecting our databse and checking everything works fine
|
|
db.connect( (error)=>{
|
|
if(error){
|
|
console.log(error)
|
|
}
|
|
else{
|
|
console.log("MySQL database connected...")
|
|
}
|
|
})
|
|
|
|
// view engine setup
|
|
app.set('views', path.join(__dirname, 'views'));
|
|
app.set('view engine', 'hbs');
|
|
|
|
app.use(logger('dev'));
|
|
app.use(express.json());
|
|
app.use(express.urlencoded({ extended: false }));
|
|
app.use(cookieParser());
|
|
app.use(express.static(path.join(__dirname, 'public')));
|
|
|
|
// Define Routes
|
|
app.use('/', require('./server/routes/index'));
|
|
app.use('/auth', require('./server/routes/auth'));
|
|
|
|
|
|
// catch 404 and forward to error handler
|
|
app.use(function(req, res, next) {
|
|
next(createError(404));
|
|
});
|
|
|
|
// error handler
|
|
app.use(function(err, req, res, next) {
|
|
// set locals, only providing error in development
|
|
res.locals.message = err.message;
|
|
res.locals.error = req.app.get('env') === 'development' ? err : {};
|
|
|
|
// render the error page
|
|
res.status(err.status || 500);
|
|
res.render('contains/404');
|
|
});
|
|
|
|
module.exports = app;
|