1 #include "alarmdialog.h"
3 #include <QApplication>
9 const int SNOOZE_TIME = 5; // in minutes
13 AlarmDialog::AlarmDialog(int argc, char *argv[], QWidget *aParent)
22 // not enough arguments passed to the dialog
23 // Usage: $ ./dialog eventId alarmId
24 // Example: $ ./dialog 521 13
26 // TODO: handle this case
30 mEventId = QString(argv[1]).toInt();
31 mAlarmId = QString(argv[2]).toInt();
34 connect(stopPB, SIGNAL(clicked()), SLOT(closeDialog()));
35 connect(appPB, SIGNAL(clicked()), SLOT(runApp()));
36 connect(snoozePB, SIGNAL(clicked()), SLOT(snooze()));
38 QSqlDatabase database = QSqlDatabase::addDatabase("QSQLITE");
39 database.setDatabaseName(QDir::homePath() + "/.fosdem/fosdem.sqlite");
42 Event event = Event::getById(mEventId,confId);
43 message->setText(QString(argv[1]).append("-").append(QString(argv[2])));
44 message->setText(event.title());
45 setWindowTitle(event.title());
48 void AlarmDialog::runApp()
50 qWarning("runApp(): NOT IMPLEMENTED YET");
53 void AlarmDialog::snooze()
55 if(mEventId==0) // not valid event ID
59 alarm.addAlarm(mEventId,QDateTime::currentDateTime().addSecs(60*SNOOZE_TIME));
63 void AlarmDialog::closeDialog()
65 // before closing the dialog, it is necessary to remove alarm flag from the DB
66 Event event = Event::getById(mEventId,confId);
67 event.setHasAlarm(false);
68 event.update("alarm");