summaryrefslogtreecommitdiffabout
path: root/korganizer/koimportoldialog.cpp
authorzautrix <zautrix>2004-07-12 13:32:09 (UTC)
committer zautrix <zautrix>2004-07-12 13:32:09 (UTC)
commit915a3b162dea2755ec1c8267a9c9f65709bce602 (patch) (side-by-side diff)
tree75b3d15a2386a4da7ab790a1f249ff811a7a7ae8 /korganizer/koimportoldialog.cpp
parentcbc789907408fa3359444c464ba5a86be892f301 (diff)
downloadkdepimpi-915a3b162dea2755ec1c8267a9c9f65709bce602.zip
kdepimpi-915a3b162dea2755ec1c8267a9c9f65709bce602.tar.gz
kdepimpi-915a3b162dea2755ec1c8267a9c9f65709bce602.tar.bz2
Another win import fix
Diffstat (limited to 'korganizer/koimportoldialog.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--korganizer/koimportoldialog.cpp21
1 files changed, 16 insertions, 5 deletions
diff --git a/korganizer/koimportoldialog.cpp b/korganizer/koimportoldialog.cpp
index 36363e5..16f2eca 100644
--- a/korganizer/koimportoldialog.cpp
+++ b/korganizer/koimportoldialog.cpp
@@ -45,8 +45,9 @@
#include <libkdepim/kinputdialog.h>
#include <libkcal/calendarlocal.h>
#include <libkcal/icalformat.h>
+#include <kabc/stdaddressbook.h>
#include "koprefs.h"
#include "koglobals.h"
@@ -439,14 +440,12 @@ void KOImportOLdialog::ol2kopiCalendar( _AppointmentItem * aItem, bool computeRe
role = KCal::Attendee::NonParticipant;
QString mail = QString::fromUcs2(pItem->GetAddress().GetBuffer());
if( mail.isEmpty() && name.find("@") > 0 )
mail = name;
- QString uid;
- if ( mail.isEmpty() )
- uid = QString::fromUcs2( pItem->GetEntryID().GetBuffer());
- else
- uid = mail;
mail = mail.stripWhiteSpace();
+
+ QString uid = getUidByEmail( mail );
+ //uid = QString::fromUcs2( pItem->GetEntryID().GetBuffer());
KCal::Attendee * a = new KCal::Attendee( name, mail,rsvp,stat,role,uid) ;
event->addAttendee( a , false );
itm->Release();
}
@@ -463,4 +462,16 @@ void KOImportOLdialog::ol2kopiCalendar( _AppointmentItem * aItem, bool computeRe
void KOImportOLdialog::slotCancel()
{
reject();
}
+
+QString KOImportOLdialog::getUidByEmail( QString email )
+{
+ KABC::StdAddressBook* AddressBook = KABC::StdAddressBook::self( true );
+ KABC::AddressBook::Iterator it;
+ for( it = AddressBook->begin(); it != AddressBook->end(); ++it ) {
+ QStringList em = (*it).emails();
+ if ( em.contains( email ))
+ return (*it).uid();
+ }
+ return "";
+}