|
|
@ -83,7 +83,7 @@ void FileSystem::writeContactsOldFormat(QString file, QList<ContactItem> contact |
|
|
|
c.push_back(item.getAvatar()); |
|
|
|
_contacts.push_back(c); |
|
|
|
} |
|
|
|
out << QString("v1") << _contacts; |
|
|
|
out << QString("v2") << _contacts; |
|
|
|
_file.close(); |
|
|
|
} |
|
|
|
|
|
|
@ -96,10 +96,6 @@ QList<ContactItem> FileSystem::readContactsOldFormat(QString file) |
|
|
|
contacts.clear(); |
|
|
|
_file.open(QIODevice::ReadOnly); |
|
|
|
QDataStream in(&_file); // read the data serialized from the file
|
|
|
|
QString version; |
|
|
|
in >> version; |
|
|
|
qDebug() << "Read " << version << " Hush contacts from disk..."; |
|
|
|
qDebug() << "Detected old addressbook format"; |
|
|
|
if(in.status() == QDataStream::ReadCorruptData) |
|
|
|
{ |
|
|
|
qDebug() << "Error reading contacts! ---> Your hush contacts from disk maybe corrupted"; |
|
|
@ -112,33 +108,53 @@ QList<ContactItem> FileSystem::readContactsOldFormat(QString file) |
|
|
|
); |
|
|
|
} |
|
|
|
else |
|
|
|
{ |
|
|
|
QString version; |
|
|
|
in >> version; |
|
|
|
if(version == "v1") |
|
|
|
{ |
|
|
|
qDebug() << "Detected old addressbook format"; |
|
|
|
// Convert old addressbook format v1 to v2
|
|
|
|
QList<QPair<QString,QString>> stuff; |
|
|
|
in >> stuff; |
|
|
|
qDebug() << "Stuff: " << stuff; |
|
|
|
for (int i=0; i < stuff.size(); i++) |
|
|
|
{ |
|
|
|
ContactItem contact = ContactItem(stuff[i].first, stuff[i].second); |
|
|
|
contacts.push_back(contact); |
|
|
|
qDebug() << "contact=" << contact.toQTString(); |
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
else |
|
|
|
{ |
|
|
|
qDebug() << "Read " << version << " Hush contacts from disk..."; |
|
|
|
QList<QList<QString>> stuff; |
|
|
|
in >> stuff; |
|
|
|
for (int i=0; i < stuff.size(); i++) |
|
|
|
qDebug() << "Dataarray size: " << stuff.size(); |
|
|
|
if(stuff.size() == 0) |
|
|
|
return contacts; |
|
|
|
|
|
|
|
for (int i= 0; i < stuff.size(); i++) |
|
|
|
{ |
|
|
|
qDebug() << stuff[i].size(); |
|
|
|
ContactItem contact; |
|
|
|
if(stuff[i].size() == 2) |
|
|
|
{ |
|
|
|
contact = ContactItem(stuff[i][0],stuff[i][1]); |
|
|
|
|
|
|
|
} |
|
|
|
else if(stuff[i].size() == 4) |
|
|
|
if(stuff[i].size() == 4) |
|
|
|
{ |
|
|
|
contact = ContactItem(stuff[i][0],stuff[i][1], stuff[i][2], stuff[i][3]); |
|
|
|
|
|
|
|
} |
|
|
|
else |
|
|
|
{ |
|
|
|
contact = ContactItem(stuff[i][0],stuff[i][1], stuff[i][2], stuff[i][3],stuff[i][4]); |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
qDebug() << contact.toQTString(); |
|
|
|
contacts.push_back(contact); |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
qDebug() << "Hush contacts readed from disk..."; |
|
|
|
} |
|
|
|
|
|
|
|