partial rollback #1119

This commit is contained in:
jokob-sk
2025-07-24 22:13:19 +10:00
parent a53b410713
commit 0265c41612
2 changed files with 25 additions and 41 deletions

View File

@@ -117,7 +117,8 @@ require 'php/templates/header.php';
var guid = data.split(":")[1].trim(); var guid = data.split(":")[1].trim();
return `<a href="report.php?guid=${guid}">Go to Report</a>`; return `<a href="report.php?guid=${guid}">Go to Report</a>`;
} else { } else {
return data; // clear quotes (") if wrapped in them
return (data.startsWith('"') && data.endsWith('"')) ? data.slice(1, -1) : data;
} }
} }
}, },
@@ -208,6 +209,7 @@ require 'php/templates/header.php';
}); });
</script> </script>
<?php <?php

View File

@@ -354,50 +354,32 @@ def create_new_devices (db):
sql = db.sql # TO-DO sql = db.sql # TO-DO
startTime = timeNowTZ() startTime = timeNowTZ()
# Insert events for new devices from CurrentScan (not yet in Devices) # Insert events for new devices from CurrentScan
mylog('debug', '[New Devices] Insert "New Device" Events') mylog('debug','[New Devices] New devices - 1 Events')
query_new_device_events = f""" query = f"""INSERT INTO Events (eve_MAC, eve_IP, eve_DateTime,
INSERT INTO Events (
eve_MAC, eve_IP, eve_DateTime,
eve_EventType, eve_AdditionalInfo, eve_EventType, eve_AdditionalInfo,
eve_PendingAlertEmail eve_PendingAlertEmail)
)
SELECT cur_MAC, cur_IP, '{startTime}', 'New Device', cur_Vendor, 1 SELECT cur_MAC, cur_IP, '{startTime}', 'New Device', cur_Vendor, 1
FROM CurrentScan FROM CurrentScan
WHERE NOT EXISTS ( WHERE NOT EXISTS (SELECT 1 FROM Devices
SELECT 1 FROM Devices WHERE devMac = cur_MAC)
WHERE devMac = cur_MAC
)
""" """
mylog('debug', f'[New Devices] Log Events Query: {query_new_device_events}')
sql.execute(query_new_device_events)
mylog('debug',f'[New Devices] Log Events Query: {query}')
# Insert session rows for known devices that are now (re)connected sql.execute(query)
mylog('debug', '[New Devices] Insert "Connected" Sessions (only for known devices)')
query_connected_sessions = f""" mylog('debug',f'[New Devices] Insert Connection into session table')
INSERT INTO Sessions (
ses_MAC, ses_IP, ses_EventTypeConnection, ses_DateTimeConnection, sql.execute (f"""INSERT INTO Sessions (ses_MAC, ses_IP, ses_EventTypeConnection, ses_DateTimeConnection,
ses_EventTypeDisconnection, ses_DateTimeDisconnection, ses_EventTypeDisconnection, ses_DateTimeDisconnection, ses_StillConnected, ses_AdditionalInfo)
ses_StillConnected, ses_AdditionalInfo SELECT cur_MAC, cur_IP,'Connected','{startTime}', NULL , NULL ,1, cur_Vendor
)
SELECT cur_MAC, cur_IP, 'Connected', '{startTime}', NULL, NULL, 1, cur_Vendor
FROM CurrentScan FROM CurrentScan
WHERE EXISTS ( WHERE NOT EXISTS (SELECT 1 FROM Sessions
SELECT 1 FROM Devices WHERE ses_MAC = cur_MAC)
WHERE devMac = cur_MAC """)
)
AND NOT EXISTS (
SELECT 1 FROM Sessions
WHERE ses_MAC = cur_MAC AND ses_StillConnected = 1
)
"""
mylog('debug', f'[New Devices] Log Sessions Query: {query_connected_sessions}')
sql.execute(query_connected_sessions)
# Create new devices from CurrentScan # Create new devices from CurrentScan
mylog('debug','[New Devices] 2 Create devices') mylog('debug','[New Devices] 2 Create devices')