summaryrefslogtreecommitdiff
path: root/rockworkd/platformintegration/sailfish/organizeradapter.cpp
diff options
context:
space:
mode:
authorAndrew Branson <andrew.branson@cern.ch>2016-02-18 08:59:57 +0100
committerAndrew Branson <andrew.branson@cern.ch>2016-02-18 08:59:57 +0100
commit130979401e16e3b199ebb2ededc8f2396ce81f49 (patch)
treee88493b25cec5c33ea2d71adecf4e0e4ab96a43f /rockworkd/platformintegration/sailfish/organizeradapter.cpp
parent0f3d090bd1dc9a6b912eb0b1e587602573304b4a (diff)
Attempt to integrate Fahrplan's calendar support
Diffstat (limited to 'rockworkd/platformintegration/sailfish/organizeradapter.cpp')
-rw-r--r--rockworkd/platformintegration/sailfish/organizeradapter.cpp24
1 files changed, 24 insertions, 0 deletions
diff --git a/rockworkd/platformintegration/sailfish/organizeradapter.cpp b/rockworkd/platformintegration/sailfish/organizeradapter.cpp
index 8851fa5..416aad2 100644
--- a/rockworkd/platformintegration/sailfish/organizeradapter.cpp
+++ b/rockworkd/platformintegration/sailfish/organizeradapter.cpp
@@ -4,6 +4,8 @@
#include <QDebug>
#include <QOrganizerEventOccurrence>
#include <QOrganizerItemDetail>
+# include <extendedcalendar.h>
+# include <extendedstorage.h>
QTORGANIZER_USE_NAMESPACE
@@ -21,6 +23,28 @@ OrganizerAdapter::OrganizerAdapter(QObject *parent) : QObject(parent)
m_manager = new QOrganizerManager(envManager);
m_manager->setParent(this);
connect(m_manager, &QOrganizerManager::dataChanged, this, &OrganizerAdapter::refresh);
+
+ mKCal::ExtendedCalendar::Ptr calendar = mKCal::ExtendedCalendar::Ptr ( new mKCal::ExtendedCalendar( QLatin1String( "UTC" ) ) );
+ mKCal::ExtendedStorage::Ptr storage = mKCal::ExtendedCalendar::defaultStorage( calendar );
+ if (storage->open()) {
+ mKCal::Notebook::List notebooks = storage->notebooks();
+ qDebug()<< "Notebooks: " + notebooks.count();
+ for (int ii = 0; ii < notebooks.count(); ++ii) {
+ if (!notebooks.at(ii)->isReadOnly()) {
+ m_calendars << CalendarInfo(normalizeCalendarName(notebooks.at(ii)->name()), notebooks.at(ii)->uid());
+ qDebug()<< "Notebook: " << notebooks.at(ii)->name() << notebooks.at(ii)->uid();
+ }
+ }
+ }
+}
+
+QString OrganizerAdapter::normalizeCalendarName(QString name)
+{
+ if (name == "qtn_caln_personal_caln") {
+ return tr("Personal");
+ }
+
+ return name;
}
void OrganizerAdapter::refresh()