Switched mysql from connection to pool, Replaced connect-flash with build-in code

This commit is contained in:
2026-01-09 23:41:07 +01:00
parent cc92b4653c
commit cd07bb0cbf
8 changed files with 519 additions and 486 deletions

4
app.js
View File

@@ -6,8 +6,6 @@ var logger = require('morgan');
var session = require('express-session');
var flash = require('connect-flash');
var indexRouter = require('./routes/index');
var app = express();
@@ -41,8 +39,6 @@ app.use(session({
resave : false
}));
app.use(flash());
app.use('/', indexRouter);
// catch 404 and forward to error handler

View File

@@ -58,7 +58,7 @@ function onError(error) {
throw error;
}
var bind = typeof port === 'string'
const bind = typeof port === 'string'
? 'Pipe ' + port
: 'Port ' + port;
@@ -82,9 +82,9 @@ function onError(error) {
*/
function onListening() {
var addr = server.address();
var bind = typeof addr === 'string'
const addr = server.address();
const bind = typeof addr === 'string'
? 'pipe ' + addr
: 'port ' + addr.port;
debug('Listening on ' + bind);
console.log('Listening on ' + bind);
}

View File

@@ -1,21 +1,13 @@
const mysql = require('mysql2');
var mysql = require('mysql2/promise');
var connection = mysql.createConnection({
const DBPool = mysql.createPool({
host : 'localhost',
database : 'testing',
user : 'root',
password : ''
waitForConnections: true,
connectionLimit: 10,
queueLimit: 0
});
connection.connect(function(error){
if(error)
{
throw error;
}
else
{
console.log('MySQL Database is connected Successfully');
}
});
module.exports = connection;
module.exports = DBPool;

855
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@@ -7,7 +7,6 @@
},
"dependencies": {
"@mdi/font": "latest",
"connect-flash": "latest",
"cookie-parser": "latest",
"debug": "latest",
"ejs": "latest",

View File

@@ -32,7 +32,7 @@ body {
}
.container{
padding: 1%;
padding: 1% 1% 80px 1%;
}
a {

View File

@@ -1,64 +1,54 @@
var express = require('express');
var router = express.Router();
var DBPool = require('../database');
var database = require('../database');
router.get("/", function(request, response, next){
var query = "SELECT * FROM Rides ORDER BY id DESC";
database.query(query, function(error, data){
if(error)
{
throw error;
router.get('/', async function (req, res) {
try {
const query = 'SELECT * FROM Rides ORDER BY id DESC';
const [data] = await DBPool.query(query);
let successMessages = "";
if (req.session && req.session.flashMessage) {
successMessages = req.session.flashMessage.success || "";
delete req.session.flashMessage.success;
}
else
{
response.render('index', {title:'BikeRides', action:'list', TheData:data, message:request.flash('error')});
res.render('index', {title: 'BikeRides',action: 'list',TheData: data,message:successMessages});
} catch (error) {
console.error(error);
res.status(500).send('Error');
}
});
});
router.get('/view/:id', function(request, response, next){
var id = request.params.id;
router.get('/view/:id', async (req, res) => {
try {
var id = req.params.id;
var query = `SELECT * FROM Rides WHERE id = "${id}"`;
database.query(query, function(error, data){
response.render('index', {title: 'View ride', action:'view', data:data[0]});
});
});
router.get('/delete/:id', function(request, response, next){
var id = request.params.id;
var query = `
DELETE FROM Rides WHERE id = "${id}"
`;
database.query(query, function(error, data){
if(error)
{
throw error;
}
else
{
request.flash('error', 'Ride removed');
response.redirect("/");
const [data] = await DBPool.query(query);
res.render('index', {title: 'View ride', action:'view', data:data[0]});
} catch (error) {
console.error(error); res.status(500).send("Error");
}
});
router.get('/delete/:id', async function(req, res){
try {
var id = req.params.id;
var query = `DELETE FROM Rides WHERE id = "${id}"`;
await DBPool.query(query);
req.session = req.session || {};
req.session.flashMessage = req.session.flashMessage || {};
req.session.flashMessage.success = ('Ride removed');
res.redirect("/");
} catch (error) {
console.error(error); throw error;;
}
});
module.exports = router;

View File

@@ -59,9 +59,6 @@
<th>To</th>
<th>Time taken</th>
<th>Avg. Speed</th>
<!-- Uncomment next line to add an action row (Delete and Info button) to the table
<th class="TableActions">Action</th>
-->
</tr>
</thead>
<tbody>
@@ -77,18 +74,6 @@
<td><%= data.end_point %></td>
<td><%= data.time_taken %> Min</td>
<td><%= data.average_speed %> Km/h</td>
<!-- Uncomment next lines to add an action row (Delete and Info button) to the table
<td class="TableActions">
<button class="btn btn-delete" onclick="location.href='/delete/<%= data.id %>'">
<span class="mdi mdi-delete mdi-24px"></span>
<span class="mdi mdi-delete-empty mdi-24px"></span>
</button>
<button class="btn btn-info" onclick="location.href='/view/<%= data.id %>'">
<span class="mdi mdi-information-outline mdi-24px"></span>
<span class="mdi mdi-information mdi-24px"></span>
</button>
</td>
-->
</tr>
<% }); } else { %>
<tr>
@@ -100,6 +85,7 @@
</div>
</div>
<% } %>
</body>
<footer>
<div class="left">
<p>BikeRideViewer | By brammp</p>
@@ -108,5 +94,4 @@
<p><a href="https://git.bprieshof.nl/brammp/BikeRideViewer"><span class="mdi mdi-git mdi-18px"></span>SourceCode</a></p>
</div>
</footer>
</body>
</html>