[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: kdepim/kresources/opengroupware
From: Till Adam <adam () kde ! org>
Date: 2004-11-01 0:32:54
Message-ID: 20041101003254.9518416C63 () office ! kde ! org
[Download RAW message or body]
CVS commit by tilladam:
Remove incidences deleted from the server.
M +21 -0 kcal_resourceopengroupware.cpp 1.20
M +1 -0 kcal_resourceopengroupware.h 1.9
--- kdepim/kresources/opengroupware/kcal_resourceopengroupware.cpp #1.19:1.20
@@ -221,4 +221,5 @@ void OpenGroupware::slotListJobResult( K
} else {
QDomDocument doc = mListEventsJob->response();
+ QStringList currentlyOnServer;
//kdDebug(7000) << " Doc: " << doc.toString() << endl;
@@ -241,4 +242,6 @@ void OpenGroupware::slotListJobResult( K
const QString &location = url.path();
const QString &newFingerprint = e.text();
+
+ currentlyOnServer << location;
/* if not locally present, download */
const QString &localId = idMapper().localId( location );
@@ -272,4 +275,6 @@ void OpenGroupware::slotListJobResult( K
}
}
+ /* Delete incidences no longer present on the server */
+ deleteIncidencesGoneFromServer( currentlyOnServer );
}
mListEventsJob = 0;
@@ -278,4 +283,20 @@ void OpenGroupware::slotListJobResult( K
}
+void OpenGroupware::deleteIncidencesGoneFromServer( const QStringList &serverlist )
+{
+ QMap<QString, QString> remoteIds( idMapper().remoteIdMap() );
+ QStringList::ConstIterator it = serverlist.begin();
+ while ( it != serverlist.end() ) {
+ remoteIds.remove( (*it) );
+ ++it;
+ }
+ disableChangeNotification();
+ QMap<QString, QString>::ConstIterator it2;
+ for (it2 = remoteIds.begin(); it2 != remoteIds.end(); ++it2) {
+ Incidence *i = mCalendar.incidence( remoteIds[ it2.key() ] );
+ if ( i ) mCalendar.deleteIncidence( i );
+ }
+ enableChangeNotification();
+}
void OpenGroupware::downloadNextIncidence()
--- kdepim/kresources/opengroupware/kcal_resourceopengroupware.h #1.8:1.9
@@ -80,4 +80,5 @@ class OpenGroupware : public ResourceCac
void listIncidences();
+ void deleteIncidencesGoneFromServer( const QStringList &serverlist );
protected slots:
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic