author | zautrix <zautrix> | 2004-08-20 04:28:28 (UTC) |
---|---|---|
committer | zautrix <zautrix> | 2004-08-20 04:28:28 (UTC) |
commit | 93decd4185adc7197008e8397cf753a5ab674d99 (patch) (unidiff) | |
tree | 0d701d0a687c22cfe2894121f8540d60a5fbe7a9 /korganizer | |
parent | f7a401f03c18ef96eb40dc5540b31cd10880e845 (diff) | |
download | kdepimpi-93decd4185adc7197008e8397cf753a5ab674d99.zip kdepimpi-93decd4185adc7197008e8397cf753a5ab674d99.tar.gz kdepimpi-93decd4185adc7197008e8397cf753a5ab674d99.tar.bz2 |
Bugfixes for syncing
-rw-r--r-- | korganizer/calendarview.cpp | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/korganizer/calendarview.cpp b/korganizer/calendarview.cpp index 547d02b..7eca69d 100644 --- a/korganizer/calendarview.cpp +++ b/korganizer/calendarview.cpp | |||
@@ -894,96 +894,97 @@ void CalendarView::checkExternSyncEvent( QPtrList<Event> lastSync , Incidence* t | |||
894 | } | 894 | } |
895 | if ( toDelete->type() == "Journal" ) | 895 | if ( toDelete->type() == "Journal" ) |
896 | return; | 896 | return; |
897 | 897 | ||
898 | Event* eve = lastSync.first(); | 898 | Event* eve = lastSync.first(); |
899 | 899 | ||
900 | while ( eve ) { | 900 | while ( eve ) { |
901 | QString id = toDelete->getID( eve->uid().mid( 15 ) ); // this is the sync profile name | 901 | QString id = toDelete->getID( eve->uid().mid( 15 ) ); // this is the sync profile name |
902 | if ( !id.isEmpty() ) { | 902 | if ( !id.isEmpty() ) { |
903 | QString des = eve->description(); | 903 | QString des = eve->description(); |
904 | QString pref = "e"; | 904 | QString pref = "e"; |
905 | if ( toDelete->type() == "Todo" ) | 905 | if ( toDelete->type() == "Todo" ) |
906 | pref = "t"; | 906 | pref = "t"; |
907 | des += pref+ id + ","; | 907 | des += pref+ id + ","; |
908 | eve->setReadOnly( false ); | 908 | eve->setReadOnly( false ); |
909 | eve->setDescription( des ); | 909 | eve->setDescription( des ); |
910 | //qDebug("setdes %s ", des.latin1()); | 910 | //qDebug("setdes %s ", des.latin1()); |
911 | eve->setReadOnly( true ); | 911 | eve->setReadOnly( true ); |
912 | } | 912 | } |
913 | eve = lastSync.next(); | 913 | eve = lastSync.next(); |
914 | } | 914 | } |
915 | 915 | ||
916 | } | 916 | } |
917 | void CalendarView::checkExternalId( Incidence * inc ) | 917 | void CalendarView::checkExternalId( Incidence * inc ) |
918 | { | 918 | { |
919 | QPtrList<Event> lastSync = mCalendar->getExternLastSyncEvents() ; | 919 | QPtrList<Event> lastSync = mCalendar->getExternLastSyncEvents() ; |
920 | checkExternSyncEvent( lastSync, inc ); | 920 | checkExternSyncEvent( lastSync, inc ); |
921 | 921 | ||
922 | } | 922 | } |
923 | bool CalendarView::synchronizeCalendar( Calendar* local, Calendar* remote, int mode ) | 923 | bool CalendarView::synchronizeCalendar( Calendar* local, Calendar* remote, int mode ) |
924 | { | 924 | { |
925 | bool syncOK = true; | 925 | bool syncOK = true; |
926 | int addedEvent = 0; | 926 | int addedEvent = 0; |
927 | int addedEventR = 0; | 927 | int addedEventR = 0; |
928 | int deletedEventR = 0; | 928 | int deletedEventR = 0; |
929 | int deletedEventL = 0; | 929 | int deletedEventL = 0; |
930 | int changedLocal = 0; | 930 | int changedLocal = 0; |
931 | int changedRemote = 0; | 931 | int changedRemote = 0; |
932 | //QPtrList<Event> el = local->rawEvents(); | 932 | //QPtrList<Event> el = local->rawEvents(); |
933 | Event* eventR; | 933 | Event* eventR; |
934 | QString uid; | 934 | QString uid; |
935 | int take; | 935 | int take; |
936 | Event* eventL; | 936 | Event* eventL; |
937 | Event* eventRSync; | 937 | Event* eventRSync; |
938 | Event* eventLSync; | 938 | Event* eventLSync; |
939 | QPtrList<Event> eventRSyncSharp = remote->getExternLastSyncEvents(); | 939 | QPtrList<Event> eventRSyncSharp = remote->getExternLastSyncEvents(); |
940 | QPtrList<Event> eventLSyncSharp = local->getExternLastSyncEvents(); | 940 | QPtrList<Event> eventLSyncSharp = local->getExternLastSyncEvents(); |
941 | bool fullDateRange = false; | 941 | bool fullDateRange = false; |
942 | local->resetTempSyncStat(); | ||
942 | mLastCalendarSync = QDateTime::currentDateTime(); | 943 | mLastCalendarSync = QDateTime::currentDateTime(); |
943 | QDateTime modifiedCalendar = mLastCalendarSync;; | 944 | QDateTime modifiedCalendar = mLastCalendarSync;; |
944 | eventR = remote->event("last-syncEvent-"+mCurrentSyncName ); | 945 | eventR = remote->event("last-syncEvent-"+mCurrentSyncName ); |
945 | if ( eventR ) { | 946 | if ( eventR ) { |
946 | eventRSync = (Event*) eventR->clone(); | 947 | eventRSync = (Event*) eventR->clone(); |
947 | remote->deleteEvent(eventR ); | 948 | remote->deleteEvent(eventR ); |
948 | 949 | ||
949 | } else { | 950 | } else { |
950 | fullDateRange = true; | 951 | fullDateRange = true; |
951 | eventRSync = new Event(); | 952 | eventRSync = new Event(); |
952 | eventRSync->setSummary(mCurrentSyncName + i18n(" - sync event")); | 953 | eventRSync->setSummary(mCurrentSyncName + i18n(" - sync event")); |
953 | eventRSync->setUid("last-syncEvent-"+mCurrentSyncName ); | 954 | eventRSync->setUid("last-syncEvent-"+mCurrentSyncName ); |
954 | eventRSync->setDtStart( mLastCalendarSync ); | 955 | eventRSync->setDtStart( mLastCalendarSync ); |
955 | eventRSync->setDtEnd( mLastCalendarSync.addSecs( 7200 ) ); | 956 | eventRSync->setDtEnd( mLastCalendarSync.addSecs( 7200 ) ); |
956 | eventRSync->setCategories( i18n("SyncEvent") ); | 957 | eventRSync->setCategories( i18n("SyncEvent") ); |
957 | } | 958 | } |
958 | eventLSync = getLastSyncEvent(); | 959 | eventLSync = getLastSyncEvent(); |
959 | if ( eventLSync->dtStart() == mLastCalendarSync ) | 960 | if ( eventLSync->dtStart() == mLastCalendarSync ) |
960 | fullDateRange = true; | 961 | fullDateRange = true; |
961 | 962 | ||
962 | if ( ! fullDateRange ) { | 963 | if ( ! fullDateRange ) { |
963 | if ( eventLSync->dtStart() != eventRSync->dtStart() ) { | 964 | if ( eventLSync->dtStart() != eventRSync->dtStart() ) { |
964 | 965 | ||
965 | // qDebug("set fulldate to true %s %s" ,eventLSync->dtStart().toString().latin1(), eventRSync->dtStart().toString().latin1() ); | 966 | // qDebug("set fulldate to true %s %s" ,eventLSync->dtStart().toString().latin1(), eventRSync->dtStart().toString().latin1() ); |
966 | //qDebug("%d %d %d %d ", eventLSync->dtStart().time().second(), eventLSync->dtStart().time().msec() , eventRSync->dtStart().time().second(), eventRSync->dtStart().time().msec()); | 967 | //qDebug("%d %d %d %d ", eventLSync->dtStart().time().second(), eventLSync->dtStart().time().msec() , eventRSync->dtStart().time().second(), eventRSync->dtStart().time().msec()); |
967 | fullDateRange = true; | 968 | fullDateRange = true; |
968 | } | 969 | } |
969 | } | 970 | } |
970 | if ( fullDateRange ) | 971 | if ( fullDateRange ) |
971 | mLastCalendarSync = QDateTime::currentDateTime().addDays( -100*365); | 972 | mLastCalendarSync = QDateTime::currentDateTime().addDays( -100*365); |
972 | else | 973 | else |
973 | mLastCalendarSync = eventLSync->dtStart(); | 974 | mLastCalendarSync = eventLSync->dtStart(); |
974 | // for resyncing if own file has changed | 975 | // for resyncing if own file has changed |
975 | if ( mCurrentSyncDevice == "deleteaftersync" ) { | 976 | if ( mCurrentSyncDevice == "deleteaftersync" ) { |
976 | mLastCalendarSync = loadedFileVersion; | 977 | mLastCalendarSync = loadedFileVersion; |
977 | qDebug("setting mLastCalendarSync "); | 978 | qDebug("setting mLastCalendarSync "); |
978 | } | 979 | } |
979 | //qDebug("*************************** "); | 980 | //qDebug("*************************** "); |
980 | qDebug("mLastCalendarSync %s ",mLastCalendarSync.toString().latin1() ); | 981 | qDebug("mLastCalendarSync %s ",mLastCalendarSync.toString().latin1() ); |
981 | QPtrList<Incidence> er = remote->rawIncidences(); | 982 | QPtrList<Incidence> er = remote->rawIncidences(); |
982 | Incidence* inR = er.first(); | 983 | Incidence* inR = er.first(); |
983 | Incidence* inL; | 984 | Incidence* inL; |
984 | QProgressBar bar( er.count(),0 ); | 985 | QProgressBar bar( er.count(),0 ); |
985 | bar.setCaption (i18n("Syncing - close to abort!") ); | 986 | bar.setCaption (i18n("Syncing - close to abort!") ); |
986 | 987 | ||
987 | int w = 300; | 988 | int w = 300; |
988 | if ( QApplication::desktop()->width() < 320 ) | 989 | if ( QApplication::desktop()->width() < 320 ) |
989 | w = 220; | 990 | w = 220; |