source: src/mvc/conference.cpp @ 4147e08

qt5
Last change on this file since 4147e08 was 4147e08, checked in by gregor herrmann <gregoa@…>, 10 years ago

Add Stefan as a copyright holder to source files, too.

  • Property mode set to 100644
File size: 2.3 KB
Line 
1/*
2 * Copyright (C) 2010 Ixonos Plc.
3 * Copyright (C) 2011-2012 Philipp Spitzer, gregor herrmann, Stefan Stahl
4 *
5 * This file is part of ConfClerk.
6 *
7 * ConfClerk is free software: you can redistribute it and/or modify it
8 * under the terms of the GNU General Public License as published by the Free
9 * Software Foundation, either version 2 of the License, or (at your option)
10 * any later version.
11 *
12 * ConfClerk is distributed in the hope that it will be useful, but
13 * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
14 * or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
15 * more details.
16 *
17 * You should have received a copy of the GNU General Public License along with
18 * ConfClerk.  If not, see <http://www.gnu.org/licenses/>.
19 */
20#include "conference.h"
21#include "../sql/sqlengine.h"
22
23QSqlRecord const Conference::sColumns = Conference::toRecord(QList<QSqlField>()
24    << QSqlField("id", QVariant::Int)
25    << QSqlField("title", QVariant::String)
26    << QSqlField("subtitle", QVariant::String)
27    << QSqlField("venue", QVariant::String)
28    << QSqlField("city", QVariant::String)
29    << QSqlField("start", QVariant::DateTime)
30    << QSqlField("end", QVariant::DateTime)
31    << QSqlField("days", QVariant::Int)
32    << QSqlField("day_change", QVariant::Int)
33    << QSqlField("timeslot_duration", QVariant::Int)
34    << QSqlField("active", QVariant::Bool)
35    << QSqlField("url", QVariant::String)
36    );
37
38QString const Conference::sTableName = QString("conference");
39
40Conference Conference::getById(int id)
41{
42    QSqlQuery query;
43    query.prepare(selectQuery() + "WHERE id = :id");
44    query.bindValue(":id", id);
45    return loadOne(query);
46}
47
48QList<Conference> Conference::getAll()
49{
50    QSqlQuery query;
51    query.prepare(selectQuery());
52    return load(query);
53}
54
55int Conference::activeConference()
56{
57    {
58        QSqlQuery query("SELECT id FROM conference WHERE active = 1");
59        query.exec();
60
61        // TODO: change it so that it will select somw existing ID
62
63        if (query.next()) {
64            return query.record().value("id").toInt();
65        }
66    }
67
68    QSqlQuery query2("SELECT id FROM conference ORDER BY id");
69    if (query2.next()) {
70        return query2.record().value("id").toInt();
71    }
72
73    return -1;
74}
75
76void Conference::deleteConference(int id)
77{
78    SqlEngine::deleteConference(id);
79}
80
Note: See TracBrowser for help on using the repository browser.