-rw-r--r-- | korganizer/calendarview.cpp | 44 | ||||
-rw-r--r-- | libkcal/calendarlocal.cpp | 27 |
2 files changed, 41 insertions, 30 deletions
diff --git a/korganizer/calendarview.cpp b/korganizer/calendarview.cpp index 1800cf2..8385bcc 100644 --- a/korganizer/calendarview.cpp +++ b/korganizer/calendarview.cpp | |||
@@ -1733,4 +1733,3 @@ bool CalendarView::synchronizeCalendar( Calendar* local, Calendar* remote, int | |||
1733 | if ( inL ) { // maybe conflict - same uid in both calendars | 1733 | if ( inL ) { // maybe conflict - same uid in both calendars |
1734 | if ( hasCalId ) | 1734 | |
1735 | qDebug("KO: Cal id %d conflict detected: %s ", hasCalId, inL->summary().latin1()); | ||
1736 | if ( (take = takeEvent( inL, inR, mode, fullDateRange )) > 0 ) { | 1735 | if ( (take = takeEvent( inL, inR, mode, fullDateRange )) > 0 ) { |
@@ -1746,11 +1745,14 @@ bool CalendarView::synchronizeCalendar( Calendar* local, Calendar* remote, int | |||
1746 | remote->deleteIncidence( inR ); | 1745 | remote->deleteIncidence( inR ); |
1747 | inR = inL->clone(); | 1746 | if ( !hasCalId ) { |
1748 | inR->setCalID_block( calID ); | 1747 | inR = inL->clone(); |
1749 | inR->setTempSyncStat( SYNC_TEMPSTATE_INITIAL ); | 1748 | inR->setCalID_block( calID ); |
1750 | if ( mGlobalSyncMode != SYNC_MODE_EXTERNAL ) | 1749 | inR->setTempSyncStat( SYNC_TEMPSTATE_INITIAL ); |
1751 | inR->setIDStr( idS ); | 1750 | if ( mGlobalSyncMode != SYNC_MODE_EXTERNAL ) |
1752 | remote->addIncidence( inR ); | 1751 | inR->setIDStr( idS ); |
1753 | if ( mSyncManager->syncWithDesktop() ) | 1752 | remote->addIncidence( inR ); |
1754 | inR->setPilotId( 2 ); | 1753 | if ( mSyncManager->syncWithDesktop() ) |
1755 | ++changedRemote; | 1754 | inR->setPilotId( 2 ); |
1755 | ++changedRemote; | ||
1756 | } else | ||
1757 | ++deletedEventR; | ||
1756 | } else {// take remote ********************** | 1758 | } else {// take remote ********************** |
@@ -1760,4 +1762,4 @@ bool CalendarView::synchronizeCalendar( Calendar* local, Calendar* remote, int | |||
1760 | int calID = inL->calID(); | 1762 | int calID = inL->calID(); |
1761 | if ( hasCalId ) | 1763 | if ( hasCalId ) |
1762 | calID = hasCalId; | 1764 | calID = 0;// add to default calendar |
1763 | local->deleteIncidence( inL ); | 1765 | local->deleteIncidence( inL ); |
@@ -1778,6 +1780,10 @@ bool CalendarView::synchronizeCalendar( Calendar* local, Calendar* remote, int | |||
1778 | // take == 0; events equal | 1780 | // take == 0; events equal |
1779 | if ( hasCalId ) | 1781 | if ( hasCalId ) { |
1780 | qDebug("EV EQUALLLL **************************** "); | 1782 | qDebug("KO: Changing Cal id %d to %d for : %s ", hasCalId, local->defaultCalendar(),inL->summary().latin1()); |
1783 | inL->setCalID( local->defaultCalendar() ); | ||
1784 | } | ||
1781 | 1785 | ||
1782 | } | 1786 | } |
1787 | |||
1788 | |||
1783 | } else { // no conflict ********** add or delete remote | 1789 | } else { // no conflict ********** add or delete remote |
@@ -2484,4 +2490,4 @@ void CalendarView::mergeFileResource( QString fn ,QString resource ) | |||
2484 | mCalendar->setCalendarRemove( exclusiveResource ); | 2490 | mCalendar->setCalendarRemove( exclusiveResource ); |
2485 | int def = mCalendar->defaultCalendar(); | ||
2486 | mCalendar->setDefaultCalendar(exclusiveResource); | 2491 | mCalendar->setDefaultCalendar(exclusiveResource); |
2492 | mCalendar->setAllCalendarEnabled( true ); | ||
2487 | if ( !mCalendar->addCalendarFile( fn, exclusiveResource )) { | 2493 | if ( !mCalendar->addCalendarFile( fn, exclusiveResource )) { |
@@ -2489,7 +2495,3 @@ void CalendarView::mergeFileResource( QString fn ,QString resource ) | |||
2489 | } | 2495 | } |
2490 | mCalendar->setDefaultCalendar( def ); | 2496 | restoreCalendarSettings(); |
2491 | mCalendar->reInitAlarmSettings(); | ||
2492 | setSyncEventsReadOnly(); | ||
2493 | updateUnmanagedViews(); | ||
2494 | updateView(); | ||
2495 | } | 2497 | } |
diff --git a/libkcal/calendarlocal.cpp b/libkcal/calendarlocal.cpp index 980663f..8a5a76f 100644 --- a/libkcal/calendarlocal.cpp +++ b/libkcal/calendarlocal.cpp | |||
@@ -261,13 +261,13 @@ void CalendarLocal::addCalendar( Calendar* cal ) | |||
261 | setSyncEventsEnabled(); | 261 | setSyncEventsEnabled(); |
262 | QPtrList<Incidence> incList; | ||
262 | { | 263 | { |
263 | QPtrList<Event> EventList = cal->rawEvents(); | 264 | QPtrList<Event> EventList = cal->rawEvents(); |
264 | QPtrList<Event> el; | ||
265 | Event * ev = EventList.first(); | 265 | Event * ev = EventList.first(); |
266 | while ( ev ) { | 266 | while ( ev ) { |
267 | if ( ev->uid().left( 15 ) == QString("last-syncEvent-") ) { | 267 | if ( ev->uid().left( 15 ) == QString("last-syncEvent-") ) { |
268 | Event * se = event( ev->uid() ); | ||
269 | if ( se ) | ||
270 | el.append( se ); | ||
271 | ev->setCalID_block( 1 ); | 268 | ev->setCalID_block( 1 ); |
272 | } | 269 | } |
270 | Event * se = event( ev->uid() ); | ||
271 | if ( se ) | ||
272 | incList.append( se ); | ||
273 | ev->unRegisterObserver( cal ); | 273 | ev->unRegisterObserver( cal ); |
@@ -277,5 +277,3 @@ void CalendarLocal::addCalendar( Calendar* cal ) | |||
277 | } | 277 | } |
278 | for ( ev = el.first(); ev; ev = el.next() ) { | 278 | |
279 | deleteIncidence ( ev ); | ||
280 | } | ||
281 | } | 279 | } |
@@ -291,3 +289,6 @@ void CalendarLocal::addCalendar( Calendar* cal ) | |||
291 | ev = TodoList.first(); | 289 | ev = TodoList.first(); |
292 | while ( ev ) { | 290 | while ( ev ) { |
291 | Todo * se = todo( ev->uid() ); | ||
292 | if ( se ) | ||
293 | incList.append( se ); | ||
293 | ev->unRegisterObserver( cal ); | 294 | ev->unRegisterObserver( cal ); |
@@ -303,2 +304,5 @@ void CalendarLocal::addCalendar( Calendar* cal ) | |||
303 | while ( ev ) { | 304 | while ( ev ) { |
305 | Journal * se = journal( ev->uid() ); | ||
306 | if ( se ) | ||
307 | incList.append( se ); | ||
304 | ev->unRegisterObserver( cal ); | 308 | ev->unRegisterObserver( cal ); |
@@ -309,2 +313,7 @@ void CalendarLocal::addCalendar( Calendar* cal ) | |||
309 | } | 313 | } |
314 | { | ||
315 | for (Incidence * ev = incList.first(); ev; ev = incList.next() ) { | ||
316 | deleteIncidence ( ev ); | ||
317 | } | ||
318 | } | ||
310 | setModified( true ); | 319 | setModified( true ); |