Renommage du .js et utilisation du localhost, en prod

This commit is contained in:
2023-11-25 09:53:06 +01:00
parent 7e36bd4971
commit ec835905e8
4 changed files with 8 additions and 3 deletions

131
wishlist.js Normal file
View File

@@ -0,0 +1,131 @@
const express = require('express')
const mysql = require("mysql")
const dotenv = require('dotenv')
const app = express()
const path = require("path")
const publicDir = path.join(__dirname, './public')
var bodyParser = require('body-parser')
/* Connexion à la BDD MySQL */
dotenv.config({ path: './.env'})
const db = mysql.createConnection({
host: process.env.DATABASE_HOST,
port: process.env.DATABASE_PORT,
user: process.env.DATABASE_USER,
password: process.env.DATABASE_PASSWORD,
database: process.env.DATABASE
})
db.connect((error) => {
if(error) {
console.log(error)
} else {
console.log("MySQL connected!")
}
})
app.set('view engine', 'hbs');
app.use(express.static(publicDir));
/* Pour utiliser le bootstrap local */
app.use('/css', express.static(__dirname + '/node_modules/bootstrap/dist/css'));
/* configure the Express.js server to receive the form values as JSON */
app.use(bodyParser.urlencoded({extended: false}));
app.use(express.json())
app.get("/", (req, res) => {
db.query('SELECT c.id as "id", c.libelle as "libelle", c.prix, c.photo as "photo", c.lien, p.prenom as "acheteur", c.achete as "achete", c.paye as "paye", p2.prenom as "responsableAchat", c.pour_noel as "pourNoel" FROM cadeau c LEFT OUTER JOIN participations pc on pc.cadeau = c.id LEFT OUTER JOIN participant p on p.id = pc.offrant LEFT OUTER JOIN participant p2 on p2.id = pc.responsable_achat ORDER BY c.prix', async (error, resultCadeaux) => {
let message;
if(error){
console.log(error);
}
if (resultCadeaux && resultCadeaux.length == 0) {
console.log("Aucun cadeau");
message = "Aucun cadeau pour l'instant";
}
res.render('index', { message: message, cadeaux: resultCadeaux })
})
});
app.get("/choix-offrant", (req, res) => {
let cadeau = req.query.cadeau;
db.query('SELECT id, prenom FROM participant ORDER BY prenom', async (error, result) => {
if(error) {
console.log(error);
}
if (result && result.length > 0) {
res.render('offrant', { "cadeau" : cadeau, "listeOffrants": result});
}
})
})
app.get("/reservation", (req, res) => {
let reqCadeau = req.query.cadeau;
let reqOffrant = req.query.offrant;
let totalAchats;
db.query('SELECT id, libelle, prix, photo, lien, achete, paye, pour_noel as "pourNoel" FROM cadeau WHERE id = ?', [reqCadeau], async (error, infosCadeau) => {
if(error) {
console.log(error);
}
if (infosCadeau.length > 0) {
db.query('SELECT COALESCE(sum(c.prix),0) as "total" FROM cadeau c RIGHT OUTER JOIN participations pc ON pc.cadeau = c.id INNER JOIN participant p ON p.id = pc.offrant WHERE p.id=?', [reqOffrant], async (error, result) => {
if(error) {
console.log(error);
}
if (result && result.length > 0) {
totalAchats = result[0]
}
db.query('SELECT id, prenom FROM participant WHERE id=?', [reqOffrant], async (error, result) => {
if(error) {
console.log(error);
}
if (result && result.length > 0) {
offrant = result[0];
}
});
db.query('SELECT id, prenom FROM participant ORDER BY prenom', async (error, listeResponsables) => {
if(error) {
console.log(error);
}
res.render('reservation', { "infosCadeaux": infosCadeau[0],
"offrant" : offrant,
"totalAchats": totalAchats.total,
"listeResponsables" : listeResponsables} );
})
})
}
})
});
app.post("/confirm-reservation", (req, res) => {
const { cadeau, offrant, achete, paye, occasion, responsableAchat } = req.body
db.query('UPDATE cadeau SET achete=?, paye=?, pour_noel=? WHERE ID=?', [achete, paye, occasion, cadeau], function (err, result) {
if (err) throw err;
console.log("1 record updated");
});
db.query('INSERT INTO participations (offrant, cadeau, responsable_achat) VALUES (?, ?, ?)', [offrant, cadeau, responsableAchat], function (err, result) {
if (err) throw err;
console.log("1 record inserted");
});
res.redirect('/');
});
app.listen(5006, ()=> {
console.log("server started on port 5006")
});