Just adapted the page size to be rectangular.
[toast/confclerk.git] / src / mvc / room.cpp
1 /*
2  * Copyright (C) 2010 Ixonos Plc.
3  *
4  * This file is part of fosdem-schedule.
5  *
6  * fosdem-schedule is free software: you can redistribute it and/or modify it
7  * under the terms of the GNU General Public License as published by the Free
8  * Software Foundation, either version 2 of the License, or (at your option)
9  * any later version.
10  *
11  * fosdem-schedule is distributed in the hope that it will be useful, but
12  * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
13  * or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
14  * more details.
15  *
16  * You should have received a copy of the GNU General Public License along with
17  * fosdem-schedule.  If not, see <http://www.gnu.org/licenses/>.
18  */
19
20 #include "room.h"
21
22 QString const Room::sTableName = QString("room");
23 int const Room::sTableColCount = 3;
24 const QString Room::NAME = "name";
25
26 QSqlRecord const Room::sColumns = Room::toRecord(QList<QSqlField>()
27     << QSqlField("id", QVariant::Int)
28     << QSqlField(NAME, QVariant::String)
29     << QSqlField("picture", QVariant::String));
30
31 Room Room::retrieveByName(QString name)
32 {
33     QSqlQuery query;
34     query.prepare(
35             selectQuery()
36             + QString("WHERE %1.name = :name").arg(sTableName));
37     query.bindValue(":name", name);
38     return loadOne(query);
39 }
40
41 QList<Room> Room::getAll()
42 {
43     QSqlQuery query;
44     query.prepare(selectQuery());
45     return load(query);
46 }
47
48 Room Room::retrieve(int id)
49 {
50     QSqlQuery query;
51     query.prepare(selectQuery()
52             + QString("WHERE %1.id = :id").arg(sTableName));
53     query.bindValue(":id", id);
54     return loadOne(query);
55 }
56
57 QString Room::retrieveRoomName(int id)
58 {
59     Room room = retrieve(id);
60     return room.name();
61 }
62