X-Git-Url: http://git.maemo.org/git/?a=blobdiff_plain;f=src%2Fcommon%2Fcontactmanager.cpp;h=974c7a5304f73a3b92fb8e5b8e6c07e62d2e92c2;hb=71122b1057b6c12b250b37f6693ed8259f20b34c;hp=e674a4b9140b3b01888bda8d02a5d84a1dc06e9a;hpb=9127dc5e47aee7fa6659f45ae60a9394612f27b1;p=jenirok diff --git a/src/common/contactmanager.cpp b/src/common/contactmanager.cpp index e674a4b..974c7a5 100644 --- a/src/common/contactmanager.cpp +++ b/src/common/contactmanager.cpp @@ -19,11 +19,6 @@ #include #include "contactmanager.h" -namespace -{ - const int COUNTRY_CODES[] = {358, 45, 46, 47}; - const int NUM_OF_CODES = 4; -} ContactManager::ContactManager(): book_(0) { @@ -31,6 +26,10 @@ ContactManager::ContactManager(): book_(0) ContactManager::~ContactManager() { + if(book_) + { + g_object_unref(book_); + } } bool ContactManager::numberExists(QString const& number) @@ -43,8 +42,8 @@ bool ContactManager::numberExists(QString const& number) EBookQuery* query; GList *g_contacts; - QString copy(number); - QString clean = removeCountryCode(copy); + // Just check the last 7 digits + QString clean = number.right(7); query = e_book_query_any_field_contains(clean.toLatin1()); @@ -58,7 +57,6 @@ bool ContactManager::numberExists(QString const& number) if (g_contacts == 0) { - qDebug() << "no contacts"; return false; } @@ -137,43 +135,3 @@ bool ContactManager::load() } -QString& ContactManager::removeCountryCode(QString& number) -{ - if(number.isEmpty()) - { - return number; - } - - if(number.at(0) == '0') - { - return number.remove(0, 1); - } - else if(number.at(0) != '+') - { - return number; - } - - static QRegExp countryCodeCleaner; - static bool countryCodeCleanerLoaded = false; - - if(!countryCodeCleanerLoaded) - { - QString match = ""; - - for(int i = 0; i < NUM_OF_CODES; i++) - { - if(i > 0) - { - match += "|"; - } - - match += "\\+" + QString::number(COUNTRY_CODES[i]); - } - - countryCodeCleaner = QRegExp("^(" + match + ")"); - countryCodeCleanerLoaded = true; - } - - return number.replace(countryCodeCleaner, ""); -} -