aboutsummaryrefslogtreecommitdiff
path: root/src/Maintenance/prunebeacons.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/Maintenance/prunebeacons.cpp')
-rw-r--r--src/Maintenance/prunebeacons.cpp16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/Maintenance/prunebeacons.cpp b/src/Maintenance/prunebeacons.cpp
new file mode 100644
index 0000000..10e4630
--- /dev/null
+++ b/src/Maintenance/prunebeacons.cpp
@@ -0,0 +1,16 @@
+#include "maintenance.h"
+
+int Maintenance::pruneBeacons()
+{
+ QString updateString = "UPDATE serverlist "
+ "SET f_direct = 0 "
+ "WHERE f_direct = 1 AND dt_beacon < :timestamp";
+ QSqlQuery updateQuery;
+ updateQuery.prepare(updateString);
+ updateQuery.bindValue(":timestamp", QDateTime::currentDateTime().addSecs(-600).toSecsSinceEpoch());
+
+ if ( ! updateQuery.exec() )
+ return reportQuery(updateQuery);
+
+ return updateQuery.numRowsAffected();
+}