]> ToastFreeware Gitweb - toast/confclerk.git/blobdiff - src/mvc/conference.cpp
Bump copyright years.
[toast/confclerk.git] / src / mvc / conference.cpp
index a0e7f9356ae79e7403ec40b0f605072e37ba4e8f..e57692a94d74becaed5564f5014d36f7e4ebf158 100644 (file)
@@ -1,5 +1,6 @@
 /*
  * Copyright (C) 2010 Ixonos Plc.
+ * Copyright (C) 2011-2024 Philipp Spitzer, gregor herrmann, Stefan Stahl
  *
  * This file is part of ConfClerk.
  *
@@ -27,12 +28,12 @@ QSqlRecord const Conference::sColumns = Conference::toRecord(QList<QSqlField>()
     << QSqlField("city", QVariant::String)
     << QSqlField("start", QVariant::DateTime)
     << QSqlField("end", QVariant::DateTime)
-    << QSqlField("days", QVariant::Int)
     << QSqlField("day_change", QVariant::Int)
     << QSqlField("timeslot_duration", QVariant::Int)
+    << QSqlField("utc_offset", QVariant::Int)
+    << QSqlField("display_time_shift", QVariant::Int)
     << QSqlField("active", QVariant::Bool)
     << QSqlField("url", QVariant::String)
-    << QSqlField("map", QVariant::String)
     );
 
 QString const Conference::sTableName = QString("conference");
@@ -52,29 +53,13 @@ QList<Conference> Conference::getAll()
     return load(query);
 }
 
-int Conference::activeConference()
-{
-    {
-        QSqlQuery query("SELECT id FROM conference WHERE active = 1");
-        query.exec();
-
-        // TODO: change it so that it will select somw existing ID
-
-        if (query.next()) {
-            return query.record().value("id").toInt();
-        }
-    }
-
-    QSqlQuery query2("SELECT id FROM conference ORDER BY id");
-    if (query2.next()) {
-        return query2.record().value("id").toInt();
-    }
-
-    return -1;
+int Conference::activeConference() {
+    QSqlQuery query("SELECT id FROM conference ORDER BY active DESC, id LIMIT 1");
+    if (!query.exec() || !query.first()) return -1;
+    return query.record().value("id").toInt();
 }
 
-void Conference::deleteConference(int id)
-{
-    SqlEngine::deleteConference(id);
-}
 
+QTime Conference::shiftTime(const QTime& value) const {
+    return value.addSecs(displayTimeShift() * 60);
+}