author | zautrix <zautrix> | 2004-09-18 08:25:05 (UTC) |
---|---|---|
committer | zautrix <zautrix> | 2004-09-18 08:25:05 (UTC) |
commit | 983b010853dfadfec3638e2afd90e522985f67fb (patch) (unidiff) | |
tree | b691b7664b9f6f23d0d92a0e05bf3e8cbcf2df67 /kaddressbook/kabcore.cpp | |
parent | df03bd8c7ff6a738dd386001679542ae4b493a07 (diff) | |
download | kdepimpi-983b010853dfadfec3638e2afd90e522985f67fb.zip kdepimpi-983b010853dfadfec3638e2afd90e522985f67fb.tar.gz kdepimpi-983b010853dfadfec3638e2afd90e522985f67fb.tar.bz2 |
more AB syncing
-rw-r--r-- | kaddressbook/kabcore.cpp | 95 |
1 files changed, 82 insertions, 13 deletions
diff --git a/kaddressbook/kabcore.cpp b/kaddressbook/kabcore.cpp index 49c3b19..e912941 100644 --- a/kaddressbook/kabcore.cpp +++ b/kaddressbook/kabcore.cpp | |||
@@ -149,4 +149,5 @@ $Id$ | |||
149 | // sync includes | 149 | // sync includes |
150 | #include <libkdepim/ksyncprofile.h> | 150 | #include <libkdepim/ksyncprofile.h> |
151 | #include <libkdepim/ksyncprefsdialog.h> | ||
151 | 152 | ||
152 | 153 | ||
@@ -180,4 +181,6 @@ KABCore::KABCore( KXMLGUIClient *client, bool readWrite, QWidget *parent, const | |||
180 | SLOT( addressBookChanged() ) ); | 181 | SLOT( addressBookChanged() ) ); |
181 | 182 | ||
183 | #if 0 | ||
184 | // LP moved to addressbook init method | ||
182 | mAddressBook->addCustomField( i18n( "Department" ), KABC::Field::Organization, | 185 | mAddressBook->addCustomField( i18n( "Department" ), KABC::Field::Organization, |
183 | "X-Department", "KADDRESSBOOK" ); | 186 | "X-Department", "KADDRESSBOOK" ); |
@@ -205,5 +208,5 @@ KABCore::KABCore( KXMLGUIClient *client, bool readWrite, QWidget *parent, const | |||
205 | mAddressBook->addCustomField( i18n( "FreeBusyUrl" ), KABC::Field::Personal, | 208 | mAddressBook->addCustomField( i18n( "FreeBusyUrl" ), KABC::Field::Personal, |
206 | "X-FreeBusyUrl", "KADDRESSBOOK" ); | 209 | "X-FreeBusyUrl", "KADDRESSBOOK" ); |
207 | 210 | #endif | |
208 | initGUI(); | 211 | initGUI(); |
209 | 212 | ||
@@ -2196,6 +2199,6 @@ void KABCore::slotSyncMenu( int action ) | |||
2196 | } else if ( action >= 1003 ) { | 2199 | } else if ( action >= 1003 ) { |
2197 | if ( temp->getIsLocalFileSync() ) { | 2200 | if ( temp->getIsLocalFileSync() ) { |
2198 | if ( syncWithFile( temp->getRemoteFileName( ), false ) ) | 2201 | if ( syncWithFile( temp->getRemoteFileNameAB( ), false ) ) |
2199 | KABPrefs::instance()->mLastSyncedLocalFile = temp->getRemoteFileName(); | 2202 | KABPrefs::instance()->mLastSyncedLocalFile = temp->getRemoteFileNameAB(); |
2200 | } else { | 2203 | } else { |
2201 | if ( temp->getIsPhoneSync() ) { | 2204 | if ( temp->getIsPhoneSync() ) { |
@@ -2318,5 +2321,5 @@ int KABCore::ringSync() | |||
2318 | temp->setName(syncProfileNames[mCurrentSyncProfile]); | 2321 | temp->setName(syncProfileNames[mCurrentSyncProfile]); |
2319 | temp->readConfig(&config); | 2322 | temp->readConfig(&config); |
2320 | if ( temp->getIncludeInRingSync() && ( i < 1 || i > 2 )) { | 2323 | if ( temp->getIncludeInRingSyncAB() && ( i < 1 || i > 2 )) { |
2321 | setCaption(i18n("Profile ")+syncProfileNames[mCurrentSyncProfile]+ i18n(" is synced ... ")); | 2324 | setCaption(i18n("Profile ")+syncProfileNames[mCurrentSyncProfile]+ i18n(" is synced ... ")); |
2322 | ++syncedProfiles; | 2325 | ++syncedProfiles; |
@@ -2334,6 +2337,6 @@ int KABCore::ringSync() | |||
2334 | } else { | 2337 | } else { |
2335 | if ( temp->getIsLocalFileSync() ) { | 2338 | if ( temp->getIsLocalFileSync() ) { |
2336 | if ( syncWithFile( temp->getRemoteFileName( ), true ) ) | 2339 | if ( syncWithFile( temp->getRemoteFileNameAB( ), true ) ) |
2337 | KABPrefs::instance()->mLastSyncedLocalFile = temp->getRemoteFileName(); | 2340 | KABPrefs::instance()->mLastSyncedLocalFile = temp->getRemoteFileNameAB(); |
2338 | } else { | 2341 | } else { |
2339 | if ( temp->getIsPhoneSync() ) { | 2342 | if ( temp->getIsPhoneSync() ) { |
@@ -2374,5 +2377,5 @@ void KABCore::syncRemote( KSyncProfile* prof, bool ask) | |||
2374 | return; | 2377 | return; |
2375 | } | 2378 | } |
2376 | QString command = prof->getPreSyncCommand(); | 2379 | QString command = prof->getPreSyncCommandAB(); |
2377 | int fi; | 2380 | int fi; |
2378 | if ( (fi = command.find("$PWD$")) > 0 ) { | 2381 | if ( (fi = command.find("$PWD$")) > 0 ) { |
@@ -2406,5 +2409,5 @@ void KABCore::syncRemote( KSyncProfile* prof, bool ask) | |||
2406 | setCaption ( i18n( "Copying succeed." ) ); | 2409 | setCaption ( i18n( "Copying succeed." ) ); |
2407 | //qDebug(" file **%s** ",prof->getLocalTempFile().latin1() ); | 2410 | //qDebug(" file **%s** ",prof->getLocalTempFile().latin1() ); |
2408 | if ( syncWithFile( prof->getLocalTempFile(), true ) ) { | 2411 | if ( syncWithFile( prof->getLocalTempFileAB(), true ) ) { |
2409 | // Event* e = mView->getLastSyncEvent(); | 2412 | // Event* e = mView->getLastSyncEvent(); |
2410 | // e->setReadOnly( false ); | 2413 | // e->setReadOnly( false ); |
@@ -2412,5 +2415,5 @@ void KABCore::syncRemote( KSyncProfile* prof, bool ask) | |||
2412 | // e->setReadOnly( true ); | 2415 | // e->setReadOnly( true ); |
2413 | if ( KABPrefs::instance()->mWriteBackFile ) { | 2416 | if ( KABPrefs::instance()->mWriteBackFile ) { |
2414 | command = prof->getPostSyncCommand(); | 2417 | command = prof->getPostSyncCommandAB(); |
2415 | int fi; | 2418 | int fi; |
2416 | if ( (fi = command.find("$PWD$")) > 0 ) { | 2419 | if ( (fi = command.find("$PWD$")) > 0 ) { |
@@ -2511,15 +2514,81 @@ QString KABCore::getPassword( ) | |||
2511 | 2514 | ||
2512 | } | 2515 | } |
2516 | bool KABCore::synchronizeAddressbooks( KABC::AddressBook* local, KABC::AddressBook* remote,int mode) | ||
2517 | { | ||
2513 | 2518 | ||
2519 | } | ||
2514 | bool KABCore::syncAB(QString filename, int mode) | 2520 | bool KABCore::syncAB(QString filename, int mode) |
2515 | { | 2521 | { |
2516 | 2522 | ||
2523 | |||
2524 | |||
2525 | mGlobalSyncMode = SYNC_MODE_NORMAL; | ||
2526 | AddressBook abLocal(filename,"syncContact"); | ||
2527 | bool syncOK = false; | ||
2528 | if ( abLocal.load() ) { | ||
2529 | qDebug("AB loaded %s mode %d",filename.latin1(), mode ); | ||
2530 | AddressBook::Iterator it; | ||
2531 | QStringList vcards; | ||
2532 | for ( it = abLocal.begin(); it != abLocal.end(); ++it ) { | ||
2533 | qDebug("Name %s ", (*it).familyName().latin1()); | ||
2534 | } | ||
2535 | syncOK = synchronizeAddressbooks( mAddressBook, &abLocal, mode ); | ||
2536 | if ( syncOK ) { | ||
2537 | if ( KABPrefs::instance()->mWriteBackFile ) | ||
2538 | { | ||
2539 | abLocal.saveAB(); | ||
2540 | } | ||
2541 | } | ||
2542 | setModified(); | ||
2543 | |||
2544 | } | ||
2545 | if ( syncOK ) | ||
2546 | ;//updateView(); | ||
2547 | return syncOK; | ||
2548 | #if 0 | ||
2549 | mGlobalSyncMode = SYNC_MODE_NORMAL; | ||
2550 | CalendarLocal* calendar = new CalendarLocal(); | ||
2551 | calendar->setTimeZoneId(KOPrefs::instance()->mTimeZoneId); | ||
2552 | FileStorage* storage = new FileStorage( calendar ); | ||
2553 | bool syncOK = false; | ||
2554 | storage->setFileName( filename ); | ||
2555 | // qDebug("loading ... "); | ||
2556 | if ( storage->load(KOPrefs::instance()->mUseQuicksave) ) { | ||
2557 | getEventViewerDialog()->setSyncMode( true ); | ||
2558 | syncOK = synchronizeCalendar( mCalendar, calendar, mode ); | ||
2559 | getEventViewerDialog()->setSyncMode( false ); | ||
2560 | if ( syncOK ) { | ||
2561 | if ( KOPrefs::instance()->mWriteBackFile ) | ||
2562 | { | ||
2563 | storage->setSaveFormat( new ICalFormat( KOPrefs::instance()->mUseQuicksave) ); | ||
2564 | storage->save(); | ||
2565 | } | ||
2566 | } | ||
2567 | setModified(); | ||
2568 | } | ||
2569 | delete storage; | ||
2570 | delete calendar; | ||
2571 | if ( syncOK ) | ||
2572 | updateView(); | ||
2573 | return syncOK; | ||
2574 | #endif | ||
2517 | } | 2575 | } |
2518 | 2576 | ||
2519 | 2577 | ||
2520 | void KABCore::confSync() | 2578 | void KABCore::confSync() |
2521 | { | 2579 | { |
2522 | //mView->confSync(); | 2580 | static KSyncPrefsDialog* sp = 0; |
2523 | qDebug("pending KABCore::confSync() "); | 2581 | if ( ! sp ) { |
2582 | sp = new KSyncPrefsDialog( this, "syncprefs", true ); | ||
2583 | } | ||
2584 | sp->usrReadConfig(); | ||
2585 | #ifndef DESKTOP_VERSION | ||
2586 | sp->showMaximized(); | ||
2587 | #else | ||
2588 | sp->show(); | ||
2589 | #endif | ||
2590 | sp->exec(); | ||
2591 | KABPrefs::instance()->mSyncProfileNames = sp->getSyncProfileNames(); | ||
2592 | KABPrefs::instance()->mLocalMachineName = sp->getLocalMachineName (); | ||
2524 | fillSyncMenu(); | 2593 | fillSyncMenu(); |
2525 | } | 2594 | } |
@@ -2530,5 +2599,5 @@ void KABCore::syncSharp() | |||
2530 | qDebug("pending syncSharp() "); | 2599 | qDebug("pending syncSharp() "); |
2531 | //mView->syncSharp(); | 2600 | //mView->syncSharp(); |
2532 | mModified = true ; | 2601 | setModified(); |
2533 | 2602 | ||
2534 | } | 2603 | } |