]> ToastFreeware Gitweb - toast/confclerk.git/blobdiff - src/sql/sqlengine.h
Stale events are deleted now after reloading conference.
[toast/confclerk.git] / src / sql / sqlengine.h
index 71c7777d762b747d1a9b951d6c6281c1fc0a6bf3..097a9a6206297b7e15864126bf98000bcb0c4429 100644 (file)
@@ -1,6 +1,6 @@
 /*
  * Copyright (C) 2010 Ixonos Plc.
- * Copyright (C) 2011-2017 Philipp Spitzer, gregor herrmann, Stefan Stahl
+ * Copyright (C) 2011-2021 Philipp Spitzer, gregor herrmann, Stefan Stahl
  *
  * This file is part of ConfClerk.
  *
@@ -50,6 +50,7 @@ class SqlEngine : public QObject {
         int dbSchemaVersion();
         /// called by createOrUpdateDbSchema. Do not use directly. true for success.
         bool updateDbSchemaVersion000To001();
+        bool updateDbSchemaVersion001To002();
         /// called by createOrUpdateDbSchma. Do not use directly. true for success.
         bool createCurrentDbSchema();
         /// creates the current database schema if an empty database is found,
@@ -58,20 +59,21 @@ class SqlEngine : public QObject {
         /// Applies an SQL file
         bool applySqlFile(const QString sqlFile);
 
-        // if a conferneceId != 0 is given, the confernce is updated instead of inserted.
-        void addConferenceToDB(QHash<QString,QString> &aConference, int conferenceId);
+        // if a conferenceId != 0 is given, the conference is updated instead of inserted.
+        void addConferenceToDB(QHash<QString,QString> &aConference, int conferenceId, bool omit_display_time_shift = false);
         void addEventToDB(QHash<QString,QString> &aEvent);
         void addPersonToDB(QHash<QString,QString> &aPerson);
         void addLinkToDB(QHash<QString,QString> &aLink);
         void addRoomToDB(QHash<QString,QString> &aRoom);
         bool deleteConference(int id);
+        bool deleteStaleEvents(int conferenceId, QSet<QString> eventIdsToKeep);
 
         bool beginTransaction();
         bool commitTransaction();
         bool rollbackTransaction();
 
         /// search Events for .... returns true if success
-        bool searchEvent(int conferenceId, const QHash<QString,QString> &columns, const QString &keyword);
+        bool searchEvent(int conferenceId, const QMultiHash<QString,QString> &columns, const QString &keyword);
     private:
         static QString login(const QString &aDatabaseType, const QString &aDatabaseName);
         /// emits a possible error message as signal. Does nothing if there was not last error