Some udpates to tracking user inputs. Still not happy with it but functional so moving on

This commit is contained in:
2025-07-24 17:09:34 -06:00
parent 37632d1dfc
commit c6a3ebbff3
5 changed files with 71 additions and 48 deletions

View File

@@ -69,11 +69,15 @@ class AuthController {
// Set session
req.session.authenticated = true;
req.session.userEmail = email;
req.session.userName = user.Name || user.name || email;
req.session.isAdmin = user.Admin === true || user.Admin === 1 ||
user.admin === true || user.admin === 1;
req.session.userId = extractId(user);
req.session.userId = user.id || user.Id;
req.session.userEmail = user.email || user.Email; // Make sure this is set
req.session.userName = user.name || user.Name;
req.session.isAdmin = user.admin || false;
logger.info('User logged in:', {
email: req.session.userEmail,
admin: req.session.isAdmin
});
// Force session save
req.session.save((err) => {

View File

@@ -97,6 +97,14 @@ class LocationsController {
async create(req, res) {
try {
// Add debugging logs
logger.info('Session data:', {
authenticated: req.session.authenticated,
userId: req.session.userId,
userEmail: req.session.userEmail,
isAdmin: req.session.isAdmin
});
let locationData = { ...req.body };
locationData = syncGeoFields(locationData);
@@ -113,10 +121,11 @@ class LocationsController {
// Check bounds if configured
if (config.map.bounds) {
if (!checkBounds(validation.latitude, validation.longitude, config.map.bounds)) {
const boundsCheck = checkBounds(validation.latitude, validation.longitude);
if (!boundsCheck.valid) {
return res.status(400).json({
success: false,
error: 'Location is outside allowed bounds'
error: boundsCheck.error
});
}
}
@@ -131,13 +140,15 @@ class LocationsController {
latitude: validation.latitude,
longitude: validation.longitude,
...additionalData,
created_at: new Date().toISOString(),
created_by: req.session.userEmail
created_by_user: req.session.userEmail || 'anonymous' // Add fallback
};
logger.info('Final data being sent to NocoDB:', finalData);
logger.info('Creating new location:', {
lat: validation.latitude,
lng: validation.longitude
lng: validation.longitude,
user: req.session.userEmail
});
const response = await nocodbService.create(
@@ -193,10 +204,12 @@ class LocationsController {
// Sync geo fields
updateData = syncGeoFields(updateData);
updateData.last_updated_at = new Date().toISOString();
updateData.last_updated_by = req.session.userEmail;
// Add update tracking
updateData.last_updated_by_user = req.session.userEmail; // Changed from last_updated_by
logger.info(`Updating location ${locationId} by ${req.session.userEmail}`);
logger.info(`Updating location ${locationId}`, {
user: req.session.userEmail
});
const response = await nocodbService.update(
config.nocodb.tableId,
@@ -204,6 +217,8 @@ class LocationsController {
updateData
);
logger.info('Location updated successfully:', locationId);
res.json({
success: true,
location: response