From 6123b4802e094983b3f0bfa29e0f7cac27bb0be2 Mon Sep 17 00:00:00 2001 From: pavelpa Date: Wed, 27 Jan 2010 12:31:23 +0000 Subject: [PATCH] implemented 'links' in Event/EventDialog --- src/gui/eventdialog.cpp | 1 + src/mvc/event.cpp | 25 +++++++++++++++++++++++++ src/mvc/event.h | 2 ++ 3 files changed, 28 insertions(+) diff --git a/src/gui/eventdialog.cpp b/src/gui/eventdialog.cpp index 6707101..5f140ed 100644 --- a/src/gui/eventdialog.cpp +++ b/src/gui/eventdialog.cpp @@ -23,6 +23,7 @@ EventDialog::EventDialog(const int &aEventId, QWidget *aParent) persons->setText(event.persons().join(" and ")); abstract->setText(event.abstract()); description->setText(event.description()); + links->setText(static_cast(event.links().values()).join("\n")); connect(favouriteButton, SIGNAL(clicked()), SLOT(favouriteClicked())); connect(alarmButton, SIGNAL(clicked()), SLOT(alarmClicked())); diff --git a/src/mvc/event.cpp b/src/mvc/event.cpp index 1dc3af7..d587a36 100644 --- a/src/mvc/event.cpp +++ b/src/mvc/event.cpp @@ -124,6 +124,23 @@ QStringList Event::persons() const return persons; } +QMap Event::links() const +{ + QSqlQuery query; + query.prepare("SELECT name,url FROM link WHERE xid_event = :id AND xid_conference = :conf"); + query.bindValue(":id", id()); + query.bindValue(":conf", conferenceId()); + query.exec(); + // TODO: handle qeury error + //qDebug() << query.lastError(); + + QMap links; + while(query.next()) + links.insert(query.record().value("name").toString(), query.record().value("url").toString()); + + return links; +} + QList Event::conflicts() const { QSqlQuery query; @@ -231,6 +248,14 @@ void Event::setPersons(const QStringList &persons) // TODO: implement } +void Event::setLinks(const QMap &aLinks) +{ + Q_UNUSED(aLinks); + + qWarning("WARINING: setLinks() is NOT IMPLEMENTED YET"); + // TODO: implement +} + QList Event::getSearchResultByDate(const QDate& date, int conferenceId, QString orderBy) { diff --git a/src/mvc/event.h b/src/mvc/event.h index a96ed19..822694d 100644 --- a/src/mvc/event.h +++ b/src/mvc/event.h @@ -48,6 +48,7 @@ public: int roomId() const; QStringList persons() const; QList conflicts() const; + QMap links() const; void setId(int id) { setValue("id", id); } void setConferenceId(int conferenceId) { setValue("xid_conference", conferenceId); } @@ -66,6 +67,7 @@ public: // records from other tables associated with 'id' void setRoom(const QString& room); void setPersons(const QStringList &persons); + void setLinks(const QMap &aLinks); void updateConflicts(); friend class EventTest; -- 2.39.5