implemented 'links' in Event/EventDialog
authorpavelpa <pavelpa@localhost>
Wed, 27 Jan 2010 12:31:23 +0000 (12:31 +0000)
committerpavelpa <pavelpa@localhost>
Wed, 27 Jan 2010 12:31:23 +0000 (12:31 +0000)
src/gui/eventdialog.cpp
src/mvc/event.cpp
src/mvc/event.h

index 6707101..5f140ed 100644 (file)
@@ -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<QStringList>(event.links().values()).join("\n"));
 
     connect(favouriteButton, SIGNAL(clicked()), SLOT(favouriteClicked()));
     connect(alarmButton, SIGNAL(clicked()), SLOT(alarmClicked()));
index 1dc3af7..d587a36 100644 (file)
@@ -124,6 +124,23 @@ QStringList Event::persons() const
     return persons;
 }
 
+QMap<QString,QString> 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<QString,QString> links;
+    while(query.next())
+        links.insert(query.record().value("name").toString(), query.record().value("url").toString());
+
+    return links;
+}
+
 QList<int> Event::conflicts() const
 {
     QSqlQuery query;
@@ -231,6 +248,14 @@ void Event::setPersons(const QStringList &persons)
     // TODO: implement
 }
 
+void Event::setLinks(const QMap<QString,QString> &aLinks)
+{
+    Q_UNUSED(aLinks);
+
+    qWarning("WARINING: setLinks() is NOT IMPLEMENTED YET");
+    // TODO: implement
+}
+
 QList<Event> Event::getSearchResultByDate(const QDate& date, int conferenceId, QString orderBy)
 {
 
index a96ed19..822694d 100644 (file)
@@ -48,6 +48,7 @@ public:
     int roomId() const;
     QStringList persons() const;
     QList<int> conflicts() const;
+    QMap<QString,QString> 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<QString,QString> &aLinks);
     void updateConflicts();
 
 friend class EventTest;