source: src/sql/sqlengine.h @ cec47c6

qt5
Last change on this file since cec47c6 was cec47c6, checked in by kirilma <kirilma@…>, 12 years ago

store path to conference map in database

path stored as additional field in conference table
if it's null or empty, "Show map" button is not shown
if existing database does not have the field, it will be automatically added

  • Property mode set to 100644
File size: 2.0 KB
Line 
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#ifndef SQLENGINE_H
20#define SQLENGINE_H
21
22#include <QObject>
23#include <QHash>
24
25class QSqlDatabase;
26
27class SqlEngine : public QObject
28{
29    Q_OBJECT
30    public:
31        SqlEngine(QObject *aParent = NULL);
32        ~SqlEngine();
33        static void initialize();
34        static void addConferenceToDB(QHash<QString,QString> &aConference);
35        static void addEventToDB(QHash<QString,QString> &aEvent);
36        static void addPersonToDB(QHash<QString,QString> &aPerson);
37        static void addLinkToDB(QHash<QString,QString> &aLink);
38        static void addRoomToDB(QHash<QString,QString> &aRoom);
39        static void deleteConference(int id);
40
41        static bool beginTransaction();
42        static bool commitTransaction();
43
44        // search Events for ....
45        static int searchEvent(int conferenceId, const QHash<QString,QString> &columns, const QString &keyword);
46    private:
47        static QString login(const QString &aDatabaseType, const QString &aDatabaseName);
48        static bool execQuery(QSqlDatabase &aDatabase, const QString &aQuery);
49        static bool execQueryWithParameter(QSqlDatabase &aDatabase, const QString &aQuery, const QHash<QString, QVariant>& params);
50
51        static void checkConferenceMap(QSqlDatabase &aDatabase);
52};
53
54#endif /* SQLENGINE_H */
55
Note: See TracBrowser for help on using the repository browser.