-rw-r--r-- | kaddressbook/kabcore.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/kaddressbook/kabcore.cpp b/kaddressbook/kabcore.cpp index a8e4de5..1b17665 100644 --- a/kaddressbook/kabcore.cpp +++ b/kaddressbook/kabcore.cpp | |||
@@ -3089,97 +3089,98 @@ bool KABCore::synchronizeAddressbooks( KABC::AddressBook* local, KABC::AddressBo | |||
3089 | } else { | 3089 | } else { |
3090 | if ( ! syncManager->mWriteBackExistingOnly ) { | 3090 | if ( ! syncManager->mWriteBackExistingOnly ) { |
3091 | ++addedAddresseeR; | 3091 | ++addedAddresseeR; |
3092 | inL.setRevision( modifiedCalendar ); | 3092 | inL.setRevision( modifiedCalendar ); |
3093 | local->insertAddressee( inL, false ); | 3093 | local->insertAddressee( inL, false ); |
3094 | inR = inL; | 3094 | inR = inL; |
3095 | inR.setIDStr( ":" ); | 3095 | inR.setIDStr( ":" ); |
3096 | inR.setResource( 0 ); | 3096 | inR.setResource( 0 ); |
3097 | remote->insertAddressee( inR, false ); | 3097 | remote->insertAddressee( inR, false ); |
3098 | } | 3098 | } |
3099 | } | 3099 | } |
3100 | } | 3100 | } |
3101 | } else { | 3101 | } else { |
3102 | ++filteredOUT; | 3102 | ++filteredOUT; |
3103 | } | 3103 | } |
3104 | } | 3104 | } |
3105 | } | 3105 | } |
3106 | } | 3106 | } |
3107 | ++incCounter; | 3107 | ++incCounter; |
3108 | } | 3108 | } |
3109 | el.clear(); | 3109 | el.clear(); |
3110 | syncManager->hideProgressBar(); | 3110 | syncManager->hideProgressBar(); |
3111 | mLastAddressbookSync = QDateTime::currentDateTime().addSecs( 1 ); | 3111 | mLastAddressbookSync = QDateTime::currentDateTime().addSecs( 1 ); |
3112 | // get rid of micro seconds | 3112 | // get rid of micro seconds |
3113 | QTime t = mLastAddressbookSync.time(); | 3113 | QTime t = mLastAddressbookSync.time(); |
3114 | mLastAddressbookSync.setTime( QTime (t.hour (), t.minute (), t.second () ) ); | 3114 | mLastAddressbookSync.setTime( QTime (t.hour (), t.minute (), t.second () ) ); |
3115 | addresseeLSync.setRevision( mLastAddressbookSync ); | 3115 | addresseeLSync.setRevision( mLastAddressbookSync ); |
3116 | addresseeRSync.setRevision( mLastAddressbookSync ); | 3116 | addresseeRSync.setRevision( mLastAddressbookSync ); |
3117 | addresseeRSync.setRole( i18n("!Remote from: ")+mCurrentSyncName ) ; | 3117 | addresseeRSync.setRole( i18n("!Remote from: ")+mCurrentSyncName ) ; |
3118 | addresseeLSync.setRole(i18n("!Local from: ") + mCurrentSyncName ); | 3118 | addresseeLSync.setRole(i18n("!Local from: ") + mCurrentSyncName ); |
3119 | addresseeRSync.setGivenName( i18n("!DO NOT EDIT!") ) ; | 3119 | addresseeRSync.setGivenName( i18n("!DO NOT EDIT!") ) ; |
3120 | addresseeLSync.setGivenName(i18n("!DO NOT EDIT!") ); | 3120 | addresseeLSync.setGivenName(i18n("!DO NOT EDIT!") ); |
3121 | addresseeRSync.setOrganization( "!"+mLastAddressbookSync.toString() ) ; | 3121 | addresseeRSync.setOrganization( "!"+mLastAddressbookSync.toString() ) ; |
3122 | addresseeLSync.setOrganization("!"+ mLastAddressbookSync.toString() ); | 3122 | addresseeLSync.setOrganization("!"+ mLastAddressbookSync.toString() ); |
3123 | addresseeRSync.setNote( "" ) ; | 3123 | addresseeRSync.setNote( "" ) ; |
3124 | addresseeLSync.setNote( "" ); | 3124 | addresseeLSync.setNote( "" ); |
3125 | 3125 | ||
3126 | if ( mGlobalSyncMode == SYNC_MODE_NORMAL) | 3126 | if ( mGlobalSyncMode == SYNC_MODE_NORMAL) |
3127 | remote->insertAddressee( addresseeRSync, false ); | 3127 | remote->insertAddressee( addresseeRSync, false ); |
3128 | local->insertAddressee( addresseeLSync, false ); | 3128 | local->insertAddressee( addresseeLSync, false ); |
3129 | QString mes; | 3129 | QString mes; |
3130 | mes .sprintf( i18n("Synchronization summary:\n\n %d items added to local\n %d items added to remote\n %d items updated on local\n %d items updated on remote\n %d items deleted on local\n %d items deleted on remote\n %d incoming filtered out\n %d outgoing filtered out"),addedAddressee, addedAddresseeR, changedLocal, changedRemote, deletedAddresseeL, deletedAddresseeR, filteredIN, filteredOUT ); | 3130 | mes .sprintf( i18n("Synchronization summary:\n\n %d items added to local\n %d items added to remote\n %d items updated on local\n %d items updated on remote\n %d items deleted on local\n %d items deleted on remote\n %d incoming filtered out\n %d outgoing filtered out"),addedAddressee, addedAddresseeR, changedLocal, changedRemote, deletedAddresseeL, deletedAddresseeR, filteredIN, filteredOUT ); |
3131 | qDebug( mes ); | 3131 | qDebug( mes ); |
3132 | mes = i18n("Local addressbook changed!\n") +mes; | 3132 | mes = i18n("Local addressbook changed!\n") +mes; |
3133 | if ( syncManager->mShowSyncSummary ) { | 3133 | if ( syncManager->mShowSyncSummary ) { |
3134 | if ( KMessageBox::Cancel == KMessageBox::warningContinueCancel(this, mes, | 3134 | if ( KMessageBox::Cancel == KMessageBox::warningContinueCancel(this, mes, |
3135 | i18n("KA/Pi Synchronization"),i18n("Write back"))) { | 3135 | i18n("KA/Pi Synchronization"),i18n("Write back"))) { |
3136 | qDebug("KA: WB cancelled "); | 3136 | qDebug("KA: WB cancelled "); |
3137 | return false; | 3137 | syncManager->mWriteBackFile = false; |
3138 | return syncOK; | ||
3138 | } | 3139 | } |
3139 | } | 3140 | } |
3140 | return syncOK; | 3141 | return syncOK; |
3141 | } | 3142 | } |
3142 | 3143 | ||
3143 | 3144 | ||
3144 | //this is a overwritten callbackmethods from the syncinterface | 3145 | //this is a overwritten callbackmethods from the syncinterface |
3145 | bool KABCore::sync(KSyncManager* manager, QString filename, int mode) | 3146 | bool KABCore::sync(KSyncManager* manager, QString filename, int mode) |
3146 | { | 3147 | { |
3147 | 3148 | ||
3148 | //pending prepare addresseeview for output | 3149 | //pending prepare addresseeview for output |
3149 | //pending detect, if remote file has REV field. if not switch to external sync | 3150 | //pending detect, if remote file has REV field. if not switch to external sync |
3150 | mGlobalSyncMode = SYNC_MODE_NORMAL; | 3151 | mGlobalSyncMode = SYNC_MODE_NORMAL; |
3151 | if ( manager != syncManager ) | 3152 | if ( manager != syncManager ) |
3152 | qDebug("KABCore::sync:: ERROR! :: manager != syncManager "); | 3153 | qDebug("KABCore::sync:: ERROR! :: manager != syncManager "); |
3153 | QString mCurrentSyncDevice = manager->getCurrentSyncDevice(); | 3154 | QString mCurrentSyncDevice = manager->getCurrentSyncDevice(); |
3154 | 3155 | ||
3155 | AddressBook abLocal(filename,"syncContact"); | 3156 | AddressBook abLocal(filename,"syncContact"); |
3156 | bool syncOK = false; | 3157 | bool syncOK = false; |
3157 | if ( abLocal.load() ) { | 3158 | if ( abLocal.load() ) { |
3158 | qDebug("KA: Sync::AB loaded %s,sync mode %d",filename.latin1(), mode ); | 3159 | qDebug("KA: Sync::AB loaded %s,sync mode %d",filename.latin1(), mode ); |
3159 | bool external = false; | 3160 | bool external = false; |
3160 | bool isXML = false; | 3161 | bool isXML = false; |
3161 | if ( filename.right(4) == ".xml") { | 3162 | if ( filename.right(4) == ".xml") { |
3162 | mGlobalSyncMode = SYNC_MODE_EXTERNAL; | 3163 | mGlobalSyncMode = SYNC_MODE_EXTERNAL; |
3163 | isXML = true; | 3164 | isXML = true; |
3164 | abLocal.preExternSync( mAddressBook ,mCurrentSyncDevice, true ); | 3165 | abLocal.preExternSync( mAddressBook ,mCurrentSyncDevice, true ); |
3165 | } else { | 3166 | } else { |
3166 | external = !manager->mIsKapiFile; | 3167 | external = !manager->mIsKapiFile; |
3167 | if ( external ) { | 3168 | if ( external ) { |
3168 | qDebug("KA: Sync::Setting vcf mode to external "); | 3169 | qDebug("KA: Sync::Setting vcf mode to external "); |
3169 | mGlobalSyncMode = SYNC_MODE_EXTERNAL; | 3170 | mGlobalSyncMode = SYNC_MODE_EXTERNAL; |
3170 | AddressBook::Iterator it; | 3171 | AddressBook::Iterator it; |
3171 | for ( it = abLocal.begin(); it != abLocal.end(); ++it ) { | 3172 | for ( it = abLocal.begin(); it != abLocal.end(); ++it ) { |
3172 | (*it).setID( mCurrentSyncDevice, (*it).uid() ); | 3173 | (*it).setID( mCurrentSyncDevice, (*it).uid() ); |
3173 | (*it).computeCsum( mCurrentSyncDevice ); | 3174 | (*it).computeCsum( mCurrentSyncDevice ); |
3174 | } | 3175 | } |
3175 | } | 3176 | } |
3176 | } | 3177 | } |
3177 | //AddressBook::Iterator it; | 3178 | //AddressBook::Iterator it; |
3178 | //QStringList vcards; | 3179 | //QStringList vcards; |
3179 | //for ( it = abLocal.begin(); it != abLocal.end(); ++it ) { | 3180 | //for ( it = abLocal.begin(); it != abLocal.end(); ++it ) { |
3180 | // qDebug("Name %s ", (*it).familyName().latin1()); | 3181 | // qDebug("Name %s ", (*it).familyName().latin1()); |
3181 | //} | 3182 | //} |
3182 | syncOK = synchronizeAddressbooks( mAddressBook, &abLocal, mode ); | 3183 | syncOK = synchronizeAddressbooks( mAddressBook, &abLocal, mode ); |
3183 | if ( syncOK ) { | 3184 | if ( syncOK ) { |
3184 | if ( syncManager->mWriteBackFile ) | 3185 | if ( syncManager->mWriteBackFile ) |
3185 | { | 3186 | { |