summaryrefslogtreecommitdiffabout
path: root/kabc/addressbook.cpp
Unidiff
Diffstat (limited to 'kabc/addressbook.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--kabc/addressbook.cpp15
1 files changed, 11 insertions, 4 deletions
diff --git a/kabc/addressbook.cpp b/kabc/addressbook.cpp
index 9332e21..6e8d027 100644
--- a/kabc/addressbook.cpp
+++ b/kabc/addressbook.cpp
@@ -436,201 +436,208 @@ Ticket *AddressBook::requestSaveTicket( Resource *resource )
436 for ( it = d->mManager->activeBegin(); it != d->mManager->activeEnd(); ++it ) { 436 for ( it = d->mManager->activeBegin(); it != d->mManager->activeEnd(); ++it ) {
437 if ( (*it) == resource ) { 437 if ( (*it) == resource ) {
438 if ( (*it)->readOnly() || !(*it)->isOpen() ) 438 if ( (*it)->readOnly() || !(*it)->isOpen() )
439 return 0; 439 return 0;
440 else 440 else
441 return (*it)->requestSaveTicket(); 441 return (*it)->requestSaveTicket();
442 } 442 }
443 } 443 }
444 444
445 return 0; 445 return 0;
446} 446}
447 447
448void AddressBook::insertAddressee( const Addressee &a ) 448void AddressBook::insertAddressee( const Addressee &a )
449{ 449{
450 Addressee::List::Iterator it; 450 Addressee::List::Iterator it;
451 for ( it = d->mAddressees.begin(); it != d->mAddressees.end(); ++it ) { 451 for ( it = d->mAddressees.begin(); it != d->mAddressees.end(); ++it ) {
452 if ( a.uid() == (*it).uid() ) { 452 if ( a.uid() == (*it).uid() ) {
453 bool changed = false; 453 bool changed = false;
454 Addressee addr = a; 454 Addressee addr = a;
455 if ( addr != (*it) ) 455 if ( addr != (*it) )
456 changed = true; 456 changed = true;
457 457
458 (*it) = a; 458 (*it) = a;
459 if ( (*it).resource() == 0 ) 459 if ( (*it).resource() == 0 )
460 (*it).setResource( standardResource() ); 460 (*it).setResource( standardResource() );
461 461
462 if ( changed ) { 462 if ( changed ) {
463 (*it).setRevision( QDateTime::currentDateTime() ); 463 (*it).setRevision( QDateTime::currentDateTime() );
464 (*it).setChanged( true ); 464 (*it).setChanged( true );
465 } 465 }
466 466
467 return; 467 return;
468 } 468 }
469 } 469 }
470 d->mAddressees.append( a ); 470 d->mAddressees.append( a );
471 Addressee& addr = d->mAddressees.last(); 471 Addressee& addr = d->mAddressees.last();
472 if ( addr.resource() == 0 ) 472 if ( addr.resource() == 0 )
473 addr.setResource( standardResource() ); 473 addr.setResource( standardResource() );
474 474
475 addr.setChanged( true ); 475 addr.setChanged( true );
476} 476}
477 477
478void AddressBook::removeAddressee( const Addressee &a ) 478void AddressBook::removeAddressee( const Addressee &a )
479{ 479{
480 Iterator it; 480 Iterator it;
481 for ( it = begin(); it != end(); ++it ) { 481 for ( it = begin(); it != end(); ++it ) {
482 if ( a.uid() == (*it).uid() ) { 482 if ( a.uid() == (*it).uid() ) {
483 removeAddressee( it ); 483 removeAddressee( it );
484 return; 484 return;
485 } 485 }
486 } 486 }
487} 487}
488 488
489void AddressBook::removeAddressee( const Iterator &it ) 489void AddressBook::removeAddressee( const Iterator &it )
490{ 490{
491 d->mRemovedAddressees.append( (*it) ); 491 d->mRemovedAddressees.append( (*it) );
492 d->mAddressees.remove( it.d->mIt ); 492 d->mAddressees.remove( it.d->mIt );
493} 493}
494 494
495AddressBook::Iterator AddressBook::find( const Addressee &a ) 495AddressBook::Iterator AddressBook::find( const Addressee &a )
496{ 496{
497 Iterator it; 497 Iterator it;
498 for ( it = begin(); it != end(); ++it ) { 498 for ( it = begin(); it != end(); ++it ) {
499 if ( a.uid() == (*it).uid() ) { 499 if ( a.uid() == (*it).uid() ) {
500 return it; 500 return it;
501 } 501 }
502 } 502 }
503 return end(); 503 return end();
504} 504}
505 505
506Addressee AddressBook::findByUid( const QString &uid ) 506Addressee AddressBook::findByUid( const QString &uid )
507{ 507{
508 Iterator it; 508 Iterator it;
509 for ( it = begin(); it != end(); ++it ) { 509 for ( it = begin(); it != end(); ++it ) {
510 if ( uid == (*it).uid() ) { 510 if ( uid == (*it).uid() ) {
511 return *it; 511 return *it;
512 } 512 }
513 } 513 }
514 return Addressee(); 514 return Addressee();
515} 515}
516Addressee::List AddressBook::getExternLastSyncAddressees() 516Addressee::List AddressBook::getExternLastSyncAddressees()
517{ 517{
518 Addressee::List results; 518 Addressee::List results;
519 519
520 Iterator it; 520 Iterator it;
521 for ( it = begin(); it != end(); ++it ) { 521 for ( it = begin(); it != end(); ++it ) {
522 if ( (*it).uid().left( 20 ) == "last-syncAddressee-" ) { 522 if ( (*it).uid().left( 20 ) == "last-syncAddressee-" ) {
523 if ( (*it).familyName().left(3) == "E: " ) 523 if ( (*it).familyName().left(3) == "E: " )
524 results.append( *it ); 524 results.append( *it );
525 } 525 }
526 } 526 }
527 527
528 return results; 528 return results;
529} 529}
530void AddressBook::resetTempSyncStat() 530void AddressBook::resetTempSyncStat()
531{ 531{
532 532 Iterator it;
533
534 Iterator it;
535 for ( it = begin(); it != end(); ++it ) { 533 for ( it = begin(); it != end(); ++it ) {
536 (*it).setTempSyncStat ( SYNC_TEMPSTATE_INITIAL ); 534 (*it).setTempSyncStat ( SYNC_TEMPSTATE_INITIAL );
537 } 535 }
538 536
539} 537}
540 538
539QStringList AddressBook:: uidList()
540{
541 QStringList results;
542 Iterator it;
543 for ( it = begin(); it != end(); ++it ) {
544 results.append( (*it).uid() );
545 }
546 return results;
547}
541 548
542 549
543Addressee::List AddressBook::allAddressees() 550Addressee::List AddressBook::allAddressees()
544{ 551{
545 return d->mAddressees; 552 return d->mAddressees;
546} 553}
547 554
548Addressee::List AddressBook::findByName( const QString &name ) 555Addressee::List AddressBook::findByName( const QString &name )
549{ 556{
550 Addressee::List results; 557 Addressee::List results;
551 558
552 Iterator it; 559 Iterator it;
553 for ( it = begin(); it != end(); ++it ) { 560 for ( it = begin(); it != end(); ++it ) {
554 if ( name == (*it).realName() ) { 561 if ( name == (*it).realName() ) {
555 results.append( *it ); 562 results.append( *it );
556 } 563 }
557 } 564 }
558 565
559 return results; 566 return results;
560} 567}
561 568
562Addressee::List AddressBook::findByEmail( const QString &email ) 569Addressee::List AddressBook::findByEmail( const QString &email )
563{ 570{
564 Addressee::List results; 571 Addressee::List results;
565 QStringList mailList; 572 QStringList mailList;
566 573
567 Iterator it; 574 Iterator it;
568 for ( it = begin(); it != end(); ++it ) { 575 for ( it = begin(); it != end(); ++it ) {
569 mailList = (*it).emails(); 576 mailList = (*it).emails();
570 for ( QStringList::Iterator ite = mailList.begin(); ite != mailList.end(); ++ite ) { 577 for ( QStringList::Iterator ite = mailList.begin(); ite != mailList.end(); ++ite ) {
571 if ( email == (*ite) ) { 578 if ( email == (*ite) ) {
572 results.append( *it ); 579 results.append( *it );
573 } 580 }
574 } 581 }
575 } 582 }
576 583
577 return results; 584 return results;
578} 585}
579 586
580Addressee::List AddressBook::findByCategory( const QString &category ) 587Addressee::List AddressBook::findByCategory( const QString &category )
581{ 588{
582 Addressee::List results; 589 Addressee::List results;
583 590
584 Iterator it; 591 Iterator it;
585 for ( it = begin(); it != end(); ++it ) { 592 for ( it = begin(); it != end(); ++it ) {
586 if ( (*it).hasCategory( category) ) { 593 if ( (*it).hasCategory( category) ) {
587 results.append( *it ); 594 results.append( *it );
588 } 595 }
589 } 596 }
590 597
591 return results; 598 return results;
592} 599}
593 600
594void AddressBook::dump() const 601void AddressBook::dump() const
595{ 602{
596 kdDebug(5700) << "AddressBook::dump() --- begin ---" << endl; 603 kdDebug(5700) << "AddressBook::dump() --- begin ---" << endl;
597 604
598 ConstIterator it; 605 ConstIterator it;
599 for( it = begin(); it != end(); ++it ) { 606 for( it = begin(); it != end(); ++it ) {
600 (*it).dump(); 607 (*it).dump();
601 } 608 }
602 609
603 kdDebug(5700) << "AddressBook::dump() --- end ---" << endl; 610 kdDebug(5700) << "AddressBook::dump() --- end ---" << endl;
604} 611}
605 612
606QString AddressBook::identifier() 613QString AddressBook::identifier()
607{ 614{
608 QStringList identifier; 615 QStringList identifier;
609 616
610 617
611 KRES::Manager<Resource>::ActiveIterator it; 618 KRES::Manager<Resource>::ActiveIterator it;
612 for ( it = d->mManager->activeBegin(); it != d->mManager->activeEnd(); ++it ) { 619 for ( it = d->mManager->activeBegin(); it != d->mManager->activeEnd(); ++it ) {
613 if ( !(*it)->identifier().isEmpty() ) 620 if ( !(*it)->identifier().isEmpty() )
614 identifier.append( (*it)->identifier() ); 621 identifier.append( (*it)->identifier() );
615 } 622 }
616 623
617 return identifier.join( ":" ); 624 return identifier.join( ":" );
618} 625}
619 626
620Field::List AddressBook::fields( int category ) 627Field::List AddressBook::fields( int category )
621{ 628{
622 if ( d->mAllFields.isEmpty() ) { 629 if ( d->mAllFields.isEmpty() ) {
623 d->mAllFields = Field::allFields(); 630 d->mAllFields = Field::allFields();
624 } 631 }
625 632
626 if ( category == Field::All ) return d->mAllFields; 633 if ( category == Field::All ) return d->mAllFields;
627 634
628 Field::List result; 635 Field::List result;
629 Field::List::ConstIterator it; 636 Field::List::ConstIterator it;
630 for( it = d->mAllFields.begin(); it != d->mAllFields.end(); ++it ) { 637 for( it = d->mAllFields.begin(); it != d->mAllFields.end(); ++it ) {
631 if ( (*it)->category() & category ) result.append( *it ); 638 if ( (*it)->category() & category ) result.append( *it );
632 } 639 }
633 640
634 return result; 641 return result;
635} 642}
636 643