QString const Event::sTable2Name = QString("virtual_event");
int const Event::sTable1ColCount = 9; // see 'toRecord()' for more details
int const Event::sTable2ColCount = 5; // see 'toRecord()' for more details
+const QString Event::XID_ACTIVITY = "xid_activity";
+const QString Event::START = "start";
+
+
QSqlRecord const Event::sColumns = Event::toRecord(QList<QSqlField>()
/* 'columns from Table 1 */
return loadOne(query);
}
-QList<Event> Event::getByDate(const QDate& date, int conferenceId)
+QList<Event> Event::getByDate(const QDate& date, int conferenceId, QString orderBy)
{
QSqlQuery query;
query.prepare(
selectQueryJoin2T("id")
- + QString("WHERE %1.xid_conference = :conf AND %1.start >= :start AND %1.start < :end ORDER BY %1.start").arg(sTable1Name));
+ + QString("WHERE %1.xid_conference = :conf AND %1.start >= :start AND %1.start < :end ORDER BY %1.%2").arg(sTable1Name).arg(orderBy));
query.bindValue(":conf", conferenceId);
query.bindValue(":start", convertToDb(date, QVariant::DateTime));
query.bindValue(":end", convertToDb(date.addDays(1), QVariant::DateTime));
class Event : public OrmRecord<Event>
{
public:
- static QSqlRecord const sColumns;
+ static const QSqlRecord sColumns;
//static QString const sTableName;
- static QString const sTable1Name;
- static QString const sTable2Name;
- static int const sTable1ColCount;
- static int const sTable2ColCount;
-
+ static const QString sTable1Name;
+ static const QString sTable2Name;
+ static const int sTable1ColCount;
+ static const int sTable2ColCount;
+ static const QString XID_ACTIVITY;
+ static const QString START;
public:
static Event getById(int id, int conferenceId);
- static QList<Event> getByDate(const QDate& date, int conferenceId);
- static QList<Event> getFavByDate(const QDate& date, int conferenceId); // get Favourities by Date
-
+ static QList<Event> getByDate(const QDate & date, int conferenceId, QString orderBy);
+ static QList<Event> getFavByDate(const QDate & date, int conferenceId); // get Favourities by Date
public:
// Table 1
- int id() const { return value("id").toInt(); }
- int conferenceId() const { return value("xid_conference").toInt(); }
- QDateTime start() const { return value("start").toDateTime(); }
- int duration() const { return value("duration").toInt(); }
- int activityId() const { return value("xid_activity").toInt(); }
- QString type() const { return value("type").toString(); }
- QString language() const { return value("language").toString(); }
- bool isFavourite() const { return value("favourite").toBool(); }
- bool hasAlarm() const { return value("alarm").toBool(); }
+ int id() const
+ {
+ return value("id").toInt();
+ }
+
+ int conferenceId() const
+ {
+ return value("xid_conference").toInt();
+ }
+
+ QDateTime start() const
+ {
+ return value(START).toDateTime();
+ }
+
+ int duration() const
+ {
+ return value("duration").toInt();
+ }
+
+ int activityId() const
+ {
+ return value(XID_ACTIVITY).toInt();
+ }
+
+ QString type() const
+ {
+ return value("type").toString();
+ }
+
+ QString language() const
+ {
+ return value("language").toString();
+ }
+
+ bool isFavourite() const
+ {
+ return value("favourite").toBool();
+ }
+
+ bool hasAlarm() const
+ {
+ return value("alarm").toBool();
+ }
+
// Table 2 : virtual table for FTS (Full Text Search)
- QString tag() const { return value("tag").toString(); }
- QString title() const { return value("title").toString(); }
- QString subtitle() const { return value("subtitle").toString(); }
- QString abstract() const { return value("abstract").toString(); }
- QString description() const { return value("description").toString(); }
+ QString tag() const
+ {
+ return value("tag").toString();
+ }
+
+ QString title() const
+ {
+ return value("title").toString();
+ }
+
+ QString subtitle() const
+ {
+ return value("subtitle").toString();
+ }
+
+ QString abstract() const
+ {
+ return value("abstract").toString();
+ }
+
+ QString description() const
+ {
+ return value("description").toString();
+ }
// Table 1
- void setId(int id) { setValue("id", id); }
- void setConferenceId(int conferenceId) { setValue("xid_conference", conferenceId); }
- void setStart(const QDateTime& start) { setValue("start", start); }
- void setDuration(int duration) { setValue("duration", duration); }
- void setActivityId(int activityId) { setValue("xid_activity", activityId); }
- void setType(const QString& type) { setValue("type", type); }
- void setLanguage(const QString& language) { setValue("language", language); }
- void setFavourite(bool favourite) { setValue("favourite", (int)favourite); }
- void setHasAlarm(bool alarm) { setValue("alarm", (int)alarm); }
+ void setId(int id)
+ {
+ setValue("id", id);
+ }
+
+ void setConferenceId(int conferenceId)
+ {
+ setValue("xid_conference", conferenceId);
+ }
+
+ void setStart(const QDateTime & start)
+ {
+ setValue(START, start);
+ }
+
+ void setDuration(int duration)
+ {
+ setValue("duration", duration);
+ }
+
+ void setActivityId(int activityId)
+ {
+ setValue(XID_ACTIVITY, activityId);
+ }
+
+ void setType(const QString & type)
+ {
+ setValue("type", type);
+ }
+
+ void setLanguage(const QString & language)
+ {
+ setValue("language", language);
+ }
+
+ void setFavourite(bool favourite)
+ {
+ setValue("favourite", (int)((favourite)));
+ }
+
+ void setHasAlarm(bool alarm)
+ {
+ setValue("alarm", (int)((alarm))); }
// Table 2 : virtual table for FTS (Full Text Search)
void setTag(const QString& tag) { setValue("tag", tag); }
void setTitle(const QString& title) { setValue("title", title); }