#include #include #include "../vcard/vcard.h" #include "import-struct.h" std::map ImportVCard4(wxArrayString *FileListInc){ std::map FinalData; // Go through each of the file names, load them up and collect the // contact information. std::map* CardData; for (int i = 0; i < FileListInc->GetCount(); i++){ vCard ContactData; ContactData.LoadFile(FileListInc->Item(i)); CardData = ContactData.GetAllCards(); int FileIndex = 0; for(std::map::iterator iter = CardData->begin(); iter != CardData->end(); iter++){ // Check if contact really is a vCard 4.0 contact. vCard ContactCheck; ContactCheck.LoadString(iter->second); wxString ContactVer = ContactCheck.Get(wxT("VERSION")); if (ContactVer != wxT("4.0")){ continue; } // If contact is vCard 4.0 then continue otherwise // go to the next contact. ImportDataContact SelectedContact; SelectedContact.Filename = FileListInc->Item(i); SelectedContact.FilenameIndex = FileIndex; SelectedContact.ContactData = iter->second; SelectedContact.UIDValue = ContactCheck.Get(wxT("UID")); FinalData.insert(std::make_pair(FileIndex, SelectedContact)); FileIndex++; } } return FinalData; }