summaryrefslogtreecommitdiffabout
path: root/korganizer
Unidiff
Diffstat (limited to 'korganizer') (more/less context) (ignore whitespace changes)
-rw-r--r--korganizer/calendarview.cpp103
-rw-r--r--korganizer/calendarview.h5
2 files changed, 106 insertions, 2 deletions
diff --git a/korganizer/calendarview.cpp b/korganizer/calendarview.cpp
index 1de2759..b3b4cdb 100644
--- a/korganizer/calendarview.cpp
+++ b/korganizer/calendarview.cpp
@@ -85,2 +85,3 @@
85#include <libkcal/sharpformat.h> 85#include <libkcal/sharpformat.h>
86#include <externalapphandler.h>
86#endif 87#endif
@@ -464,2 +465,10 @@ void CalendarView::init()
464 mAlarmDialog->setSuspendTime( KOPrefs::instance()->mAlarmSuspendTime ); 465 mAlarmDialog->setSuspendTime( KOPrefs::instance()->mAlarmSuspendTime );
466
467
468#ifndef DESKTOP_VERSION
469//US listen for arriving address resultsets
470 connect(ExternalAppHandler::instance(), SIGNAL(receivedBirthdayListEvent(const QString&, const QStringList&, const QStringList&, const QStringList&, const QStringList&, const QStringList&, const QStringList&)),
471 this, SLOT(insertBirthdays(const QString&, const QStringList&, const QStringList&, const QStringList&, const QStringList&, const QStringList&, const QStringList&)));
472#endif
473
465} 474}
@@ -1326,3 +1335,5 @@ bool CalendarView::importBday()
1326{ 1335{
1327#if 0 1336#ifndef KORG_NOKABC
1337
1338#ifdef DESKTOP_VERSION
1328 KABC::StdAddressBook* AddressBook = KABC::StdAddressBook::self( true ); 1339 KABC::StdAddressBook* AddressBook = KABC::StdAddressBook::self( true );
@@ -1367,3 +1378,12 @@ bool CalendarView::importBday()
1367 topLevelWidget()->setCaption(QString::number( addCount )+ i18n(" birthdays/anniversaries added!")); 1378 topLevelWidget()->setCaption(QString::number( addCount )+ i18n(" birthdays/anniversaries added!"));
1368#endif 1379#else //DESKTOP_VERSION
1380
1381 ExternalAppHandler::instance()->requestBirthdayListFromKAPI("QPE/Application/kopi", this->name() /* name is here the unique uid*/);
1382 // the result should now arrive through method insertBirthdays
1383
1384#endif //DESKTOP_VERSION
1385
1386#endif //KORG_NOKABC
1387
1388
1369 return true; 1389 return true;
@@ -1371,2 +1391,81 @@ bool CalendarView::importBday()
1371 1391
1392// This method will be called from Ka/Pi as a response to requestBirthdayListFromKAPI
1393void CalendarView::insertBirthdays(const QString& uid, const QStringList& birthdayList,
1394 const QStringList& anniversaryList, const QStringList& realNameList,
1395 const QStringList& emailList, const QStringList& assembledNameList,
1396 const QStringList& uidList)
1397{
1398 qDebug("CalendarView::insertBirthdays");
1399 if (uid == this->name())
1400 {
1401 int count = birthdayList.count();
1402 int addCount = 0;
1403 KCal::Attendee* a = 0;
1404
1405 qDebug("CalView 1 %i", count);
1406
1407 QProgressBar bar(count,0 );
1408 int w = 300;
1409 if ( QApplication::desktop()->width() < 320 )
1410 w = 220;
1411 int h = bar.sizeHint().height() ;
1412 int dw = QApplication::desktop()->width();
1413 int dh = QApplication::desktop()->height();
1414 bar.setGeometry( (dw-w)/2, (dh - h )/2 ,w,h );
1415 bar.show();
1416 bar.setCaption (i18n("inserting birthdays - close to abort!") );
1417 qApp->processEvents();
1418
1419 QDate birthday;
1420 QDate anniversary;
1421 QString realName;
1422 QString email;
1423 QString assembledName;
1424 QString uid;
1425 bool ok = true;
1426 for ( int i = 0; i < count; i++)
1427 {
1428 if ( ! bar.isVisible() )
1429 return;
1430 bar.setProgress( i );
1431 qApp->processEvents();
1432
1433 qDebug("insert birthday in KO/Pi: %s,%s,%s,%s: %s, %s", realName.latin1(), email.latin1(), assembledName.latin1(), uid.latin1(), birthdayList[i].latin1(), anniversaryList[i].latin1() );
1434
1435 birthday = KGlobal::locale()->readDate(birthdayList[i], KLocale::ISODate, &ok);
1436 if (!ok)
1437 qDebug("CalendarView::insertBirthdays found invalid birthday: %s",birthdayList[i].latin1());
1438
1439 anniversary = KGlobal::locale()->readDate(anniversaryList[i], KLocale::ISODate, &ok);
1440 if (!ok)
1441 qDebug("CalendarView::insertBirthdays found invalid anniversary: %s",anniversaryList[i].latin1());
1442 realName = realNameList[i];
1443 email = emailList[i];
1444 assembledName = assembledNameList[i];
1445 uid = uidList[i];
1446
1447 if ( birthday.isValid() ){
1448 a = new KCal::Attendee( realName, email,false,KCal::Attendee::NeedsAction,
1449 KCal::Attendee::ReqParticipant,uid) ;
1450 if ( addAnniversary( birthday, assembledName, a, true ) )
1451 ++addCount;
1452 }
1453
1454 if ( anniversary.isValid() ){
1455 a = new KCal::Attendee( realName, email,false,KCal::Attendee::NeedsAction,
1456 KCal::Attendee::ReqParticipant,uid) ;
1457 if ( addAnniversary( anniversary, assembledName, a, false ) )
1458 ++addCount;
1459 }
1460 }
1461
1462 updateView();
1463 topLevelWidget()->setCaption(QString::number( addCount )+ i18n(" birthdays/anniversaries added!"));
1464
1465 }
1466
1467}
1468
1469
1470
1372bool CalendarView::addAnniversary( QDate date, QString name, KCal::Attendee* a, bool birthday) 1471bool CalendarView::addAnniversary( QDate date, QString name, KCal::Attendee* a, bool birthday)
diff --git a/korganizer/calendarview.h b/korganizer/calendarview.h
index 0f7e696..8d329a9 100644
--- a/korganizer/calendarview.h
+++ b/korganizer/calendarview.h
@@ -185,2 +185,7 @@ class CalendarView : public KOrg::CalendarViewBase, public KCal::Calendar::Obser
185 185
186 void insertBirthdays(const QString& uid, const QStringList& birthdayList,
187 const QStringList& anniversaryList, const QStringList& realNameList,
188 const QStringList& emailList, const QStringList& assembledNameList,
189 const QStringList& uidList);
190
186 /** 191 /**