changes
This commit is contained in:
@@ -41,7 +41,10 @@ const QRSalt ="!SaltyMagic5392370662";
|
||||
// + Turn ticket use on/off from Settings (Admin)
|
||||
// + Turn email on/off from Settings (Admin)
|
||||
// + Magic-link Login System
|
||||
// Convert all the routes to use common.(user,superuser,
|
||||
// Display messages for all GET routes?
|
||||
// Setting to deactivate transfers globally
|
||||
// Option to "Email me my QR Code"
|
||||
// Mass-import of individual tickets
|
||||
// + Cookie based QR code functionality
|
||||
// + Create Account (User)
|
||||
@@ -120,6 +123,24 @@ function MagicLinkValid(email,hash) {
|
||||
}
|
||||
|
||||
|
||||
app.use((req, res, next) => {
|
||||
console.log("Middleware! req.session=",req.session);
|
||||
res.locals.commonData = {
|
||||
username: req.username, // Attach user info if available
|
||||
superuser: req.superuser,
|
||||
error: req.session && req.session.error || null, // Flash error messages
|
||||
success: req.session && req.session.success || null, // Flash success messages
|
||||
};
|
||||
|
||||
// Clear session-based flash messages after use
|
||||
if (req.session) {
|
||||
delete req.session.error;
|
||||
delete req.session.success;
|
||||
}
|
||||
next();
|
||||
});
|
||||
|
||||
|
||||
//
|
||||
// In-memory data structures
|
||||
//
|
||||
@@ -514,8 +535,9 @@ app.post('/login', (req, res) => {
|
||||
const redir=req.session.returnTo;
|
||||
delete req.session.returnTo;
|
||||
return res.redirect(redir || "/mytickets");
|
||||
}
|
||||
res.send('Invalid username or password. <a href="/login">Try again</a>');
|
||||
}
|
||||
req.session.error="Invalid username or password.";
|
||||
return res.redirect("/login");
|
||||
});
|
||||
|
||||
app.get('/logout', (req, res) => {
|
||||
@@ -566,7 +588,7 @@ app.get("/checkscanqr", (req,res) => {
|
||||
});
|
||||
|
||||
app.get('/changepassword', requireLogin,(req, res) => {
|
||||
return res.render("changepassword");
|
||||
return res.render("changepassword",{ username:req.session.username, superuser:req.session.superuser, settings:settings, message: "" });
|
||||
});
|
||||
|
||||
app.post('/changepassword', requireLogin,(req, res) => {
|
||||
@@ -595,7 +617,7 @@ app.post('/qrcodesu',requireSuperUser,async (req,res) => {
|
||||
|
||||
|
||||
app.get('/settings',requireSuperUser, (req,res) => {
|
||||
res.render('settings',{ username:req.session.username, superuser:req.session.superuser, message: "" })
|
||||
res.render('settings',{ username:req.session.username, superuser:req.session.superuser, settings:settings, message: "" })
|
||||
});
|
||||
|
||||
app.post('/wipedb',requireSuperUser, (req,res) => {
|
||||
@@ -621,6 +643,7 @@ app.post('/purge',requireSuperUser, (req,res) => {
|
||||
|
||||
app.post('/update-setting', requireSuperUser, (req, res) => {
|
||||
settings[req.body.name]=req.body.checked;
|
||||
console.log("setting got updated to ",settings[req.body.name]);
|
||||
res.json({ success: true, message: 'Checkbox state updated successfully' });
|
||||
});
|
||||
|
||||
|
||||
Reference in New Issue
Block a user