summaryrefslogtreecommitdiffabout
path: root/kabc/addressee.cpp
Side-by-side diff
Diffstat (limited to 'kabc/addressee.cpp') (more/less context) (show whitespace changes)
-rw-r--r--kabc/addressee.cpp39
1 files changed, 39 insertions, 0 deletions
diff --git a/kabc/addressee.cpp b/kabc/addressee.cpp
index c34f671..711c261 100644
--- a/kabc/addressee.cpp
+++ b/kabc/addressee.cpp
@@ -63,12 +63,13 @@ struct Addressee::AddresseeData : public KShared
QString role;
QString organization;
QString note;
QString productId;
QDateTime revision;
QString sortString;
+ QString externalUID;
KURL url;
Secrecy secrecy;
Picture logo;
Picture photo;
Sound sound;
Agent agent;
@@ -268,12 +269,38 @@ void Addressee::computeCsum(const QString &dev)
l.append( t[iii] );
}
uint cs = getCsum4List(l);
// qDebug("CSUM computed %d %s %s", cs,QString::number (cs ).latin1(), uid().latin1() );
setCsum( dev, QString::number (cs ));
}
+
+void Addressee::mergeContact( Addressee ad )
+{
+#if 0
+ if ( !mData->name.isEmpty() ) l.append(mData->name);
+ if ( !mData->formattedName.isEmpty() ) l.append(mData->formattedName );
+ if ( !mData->familyName.isEmpty() ) l.append( mData->familyName );
+ if ( !mData->givenName.isEmpty() ) l.append(mData->givenName );
+ if ( !mData->additionalName ) l.append( mData->additionalName );
+ if ( !mData->prefix.isEmpty() ) l.append( mData->prefix );
+ if ( !mData->suffix.isEmpty() ) l.append( mData->suffix );
+ if ( !mData->nickName.isEmpty() ) l.append( mData->nickName );
+ if ( mData->birthday.isValid() ) l.append( mData->birthday.toString() );
+ if ( !mData->mailer.isEmpty() ) l.append( mData->mailer );
+ if ( mData->timeZone.isValid() ) l.append( mData->timeZone.asString() );
+ if ( mData->geo.isValid() ) l.append( mData->geo.asString() );
+ if ( !mData->title .isEmpty() ) l.append( mData->title );
+ if ( !mData->role.isEmpty() ) l.append( mData->role );
+ if ( !mData->organization.isEmpty() ) l.append( mData->organization );
+ if ( !mData->note.isEmpty() ) l.append( mData->note );
+ if ( !mData->productId.isEmpty() ) l.append(mData->productId );
+ if ( !mData->sortString.isEmpty() ) l.append( mData->sortString );
+ if ( mData->secrecy.isValid() ) l.append( mData->secrecy.asString());
+#endif
+}
+
void Addressee::removeID(const QString &prof)
{
detach();
mData->mExternalId = KIdManager::removeId ( mData->mExternalId, prof);
}
@@ -320,12 +347,24 @@ void Addressee::setIDStr( const QString & s )
QString Addressee::IDStr() const
{
return mData->mExternalId;
}
+void Addressee::setExternalUID( const QString &id )
+{
+ if ( id == mData->externalUID ) return;
+ detach();
+ mData->empty = false;
+ mData->externalUID = id;
+}
+
+QString Addressee::externalUID() const
+{
+ return mData->externalUID;
+}
void Addressee::setUid( const QString &id )
{
if ( id == mData->uid ) return;
detach();
mData->empty = false;