summaryrefslogtreecommitdiffabout
path: root/kabc
Side-by-side diff
Diffstat (limited to 'kabc') (more/less context) (show whitespace changes)
-rw-r--r--kabc/addressbook.cpp27
-rw-r--r--kabc/addressbook.h5
-rw-r--r--kabc/addressee.cpp54
-rw-r--r--kabc/addressee.h12
4 files changed, 96 insertions, 2 deletions
diff --git a/kabc/addressbook.cpp b/kabc/addressbook.cpp
index 70eda1b..9332e21 100644
--- a/kabc/addressbook.cpp
+++ b/kabc/addressbook.cpp
@@ -43,4 +43,5 @@ $Id$
#include <klocale.h>
#include <kdebug.h>
+#include <libkcal/syncdefines.h>
#include "addressbook.h"
#include "resource.h"
@@ -513,4 +514,30 @@ Addressee AddressBook::findByUid( const QString &uid )
return Addressee();
}
+Addressee::List AddressBook::getExternLastSyncAddressees()
+{
+ Addressee::List results;
+
+ Iterator it;
+ for ( it = begin(); it != end(); ++it ) {
+ if ( (*it).uid().left( 20 ) == "last-syncAddressee-" ) {
+ if ( (*it).familyName().left(3) == "E: " )
+ results.append( *it );
+ }
+ }
+
+ return results;
+}
+void AddressBook::resetTempSyncStat()
+{
+
+
+ Iterator it;
+ for ( it = begin(); it != end(); ++it ) {
+ (*it).setTempSyncStat ( SYNC_TEMPSTATE_INITIAL );
+ }
+
+}
+
+
Addressee::List AddressBook::allAddressees()
diff --git a/kabc/addressbook.h b/kabc/addressbook.h
index e43de31..05225f9 100644
--- a/kabc/addressbook.h
+++ b/kabc/addressbook.h
@@ -289,4 +289,9 @@ class AddressBook : public QObject
void cleanUp();
+ // sync stuff
+ Addressee::List getExternLastSyncAddressees();
+ void resetTempSyncStat();
+
+
signals:
/**
diff --git a/kabc/addressee.cpp b/kabc/addressee.cpp
index 4cdd5e5..fb32f6e 100644
--- a/kabc/addressee.cpp
+++ b/kabc/addressee.cpp
@@ -33,6 +33,8 @@ $Id$
#include <kapplication.h>
#include <klocale.h>
+#include <kidmanager.h>
//US
#include <kstandarddirs.h>
+#include <libkcal/syncdefines.h>
//US #include "resource.h"
@@ -71,5 +73,5 @@ struct Addressee::AddresseeData : public KShared
Sound sound;
Agent agent;
-
+ QString mExternalId;
PhoneNumber::List phoneNumbers;
Address::List addresses;
@@ -91,4 +93,6 @@ Addressee::Addressee()
mData->changed = false;
mData->resource = 0;
+ mData->mExternalId = ":";
+ mTempSyncStat = SYNC_TEMPSTATE_INITIAL;
}
@@ -100,4 +104,5 @@ Addressee::Addressee( const Addressee &a )
{
mData = a.mData;
+ mTempSyncStat = SYNC_TEMPSTATE_INITIAL;
}
@@ -169,4 +174,51 @@ bool Addressee::isEmpty() const
return mData->empty;
}
+void Addressee::removeID(const QString &prof)
+{
+ detach();
+ mData->mExternalId = KIdManager::removeId ( mData->mExternalId, prof);
+
+}
+void Addressee::setID( const QString & prof , const QString & id )
+{
+ detach();
+ mData->mExternalId = KIdManager::setId ( mData->mExternalId, prof, id );
+}
+void Addressee::setTempSyncStat( int id )
+{
+ mTempSyncStat = id;
+}
+int Addressee::tempSyncStat() const
+{
+ return mTempSyncStat;
+}
+
+QString Addressee::getID( const QString & prof)
+{
+ return KIdManager::getId ( mData->mExternalId, prof );
+}
+
+void Addressee::setCsum( const QString & prof , const QString & id )
+{
+ detach();
+ mData->mExternalId = KIdManager::setCsum ( mData->mExternalId, prof, id );
+}
+
+QString Addressee::getCsum( const QString & prof)
+{
+ return KIdManager::getCsum ( mData->mExternalId, prof );
+}
+
+void Addressee::setIDStr( const QString & s )
+{
+ detach();
+ mData->mExternalId = s;
+}
+
+QString Addressee::IDStr() const
+{
+ return mData->mExternalId;
+}
+
void Addressee::setUid( const QString &id )
diff --git a/kabc/addressee.h b/kabc/addressee.h
index 27782f9..f098371 100644
--- a/kabc/addressee.h
+++ b/kabc/addressee.h
@@ -97,5 +97,14 @@ class Addressee
bool operator==( const Addressee & ) const;
bool operator!=( const Addressee & ) const;
-
+ // sync stuff
+ void setTempSyncStat(int id);
+ int tempSyncStat() const;
+ void setIDStr( const QString & );
+ QString IDStr() const;
+ void setID( const QString &, const QString & );
+ QString getID( const QString & );
+ void setCsum( const QString &, const QString & );
+ QString getCsum( const QString & );
+ void removeID(const QString &);
/**
Return, if the address book entry is empty.
@@ -816,4 +825,5 @@ class Addressee
Addressee copy();
void detach();
+ int mTempSyncStat;
struct AddresseeData;