summaryrefslogtreecommitdiffabout
Side-by-side diff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--kabc/converter/opie/opieconverter.cpp45
1 files changed, 29 insertions, 16 deletions
diff --git a/kabc/converter/opie/opieconverter.cpp b/kabc/converter/opie/opieconverter.cpp
index cfbe5c0..d785fbc 100644
--- a/kabc/converter/opie/opieconverter.cpp
+++ b/kabc/converter/opie/opieconverter.cpp
@@ -156,35 +156,45 @@ bool OpieConverter::opieToAddressee( OContact &contact, Addressee &addr )
addr.insertCustom( "KADDRESSBOOK", "X-ManagersName", contact.manager() );
addr.insertCustom( "KADDRESSBOOK", "X-Office", contact.office() );
-//???
-//US QString businessWebpage() const { return find( Qtopia::BusinessWebPage ); }
-
//personal
addr.insertCustom( "KADDRESSBOOK", "X-SpousesName", contact.spouse() );
addr.insertCustom( "KADDRESSBOOK", "X-Gender", contact.gender() );
- int orgformat = KGlobal::locale()->getIntDateFormat();
- KGlobal::locale()->setIntDateFormat( 2 ); // = Qt::ISODate
- QString dt = KGlobal::locale()->formatDate(contact.anniversary(), true);
- KGlobal::locale()->setIntDateFormat(orgformat );
- addr.insertCustom( "KADDRESSBOOK", "X-Anniversary", dt);
+ if (contact.anniversary().isValid()) {
+ int orgformat = KGlobal::locale()->getIntDateFormat();
+ KGlobal::locale()->setIntDateFormat( 2 ); // = Qt::ISODate
+ QString dt = KGlobal::locale()->formatDate(contact.anniversary(), true);
+//US
+ qDebug("OpieConverter::opieToAddressee found:%s", dt.latin1());
+ KGlobal::locale()->setIntDateFormat(orgformat );
+ addr.insertCustom( "KADDRESSBOOK", "X-Anniversary", dt);
+ }
addr.insertCustom( "KADDRESSBOOK", "X-Children", contact.children() );
- addr.setBirthday( contact.birthday() );
+ if (contact.birthday().isValid())
+ addr.setBirthday( contact.birthday() );
+
addr.setNickName( contact.nickname() );
- // other
+ // others
+ //US I put opies BusinessWebPage into Ka/Pi's notes block, because no other native field is available.
+ QString notes = contact.notes();
+ notes += "\nBusinessWebPage: " + contact.businessWebpage() + "\n";
+
addr.setNote( contact.notes() );
+
+
//US QString groups() const { return find( Qtopia::Groups ); }
//US QStringList groupList() const;
-/*US
+
QStringList cats = contact.categoryNames("Contacts");
for ( QStringList::Iterator it = cats.begin(); it != cats.end(); ++it ) {
qDebug("Cat: %s", (*it).latin1());
}
-*/
+
+
addr.setCategories( contact.categoryNames("Contacts") );
// qDebug("Groups: %s", contact.groups().latin1());
// addr.setCategories( contact.groupList() );
@@ -311,15 +321,18 @@ bool OpieConverter::addresseeToOpie( const Addressee &addr, OContact &contact )
contact.setCategories( cat );
*/
-/*US
+
Categories catDB;
- catDB.load( contact.categoryFileName() );
+ catDB.dump();
+//US catDB.load( contact.categoryFileName() );
+ catDB.load( "contact" );
QStringList cats = addr.categories();
for ( QStringList::Iterator it = cats.begin(); it != cats.end(); ++it ) {
- contact.setCategories(catDB.id(*it));
+ qDebug("categories: %s", (*it).latin1());
+// contact.setCategories(catDB.id(*it));
}
-*/
+
return true;
}