update contacts-cache users for MessageContact

Since contacts-cache now uses MessageContact, update its users
This commit is contained in:
Dirk-Jan C. Binnema 2022-02-20 00:35:43 +02:00
parent 4b9814be25
commit 7822d2633e
3 changed files with 10 additions and 14 deletions

View File

@ -522,7 +522,7 @@ Server::Private::contacts_handler(const Parameters& params)
auto rank{0};
Sexp::List contacts;
store().contacts_cache().for_each([&](const ContactInfo& ci) {
store().contacts_cache().for_each([&](const MessageContact& ci) {
rank++;
/* since the last time we got some contacts */
@ -532,11 +532,12 @@ Server::Private::contacts_handler(const Parameters& params)
if (personal && !ci.personal)
return;
/* only include newer-than-x contacts */
if (after > ci.last_seen)
if (after > ci.message_date)
return;
Sexp::List contact;
contact.add_prop(":address", Sexp::make_string(ci.full_address));
contact.add_prop(":address",
Sexp::make_string(ci.display_name()));
contact.add_prop(":rank", Sexp::make_number(rank));
contacts.add(Sexp::make_list(std::move(contact)));

View File

@ -1007,12 +1007,7 @@ add_contacts_terms_values(Xapian::Document& doc, MuMsg *msg,
termgen.index_text_without_positions(contact.email, 1, pfx);
/* and add to the contact store.*/
contacts_cache.add(ContactInfo{
contact.display_name(),
contact.email,
contact.name,
contacts_cache.is_personal(contact.email),
contact.message_date});
contacts_cache.add(std::move(contact));
}
}

View File

@ -276,7 +276,7 @@ struct ECData {
};
static void
each_contact(const Mu::ContactInfo& ci, ECData& ecdata)
each_contact(const Mu::MessageContact& ci, ECData& ecdata)
{
if (ecdata.personal && ci.personal)
return;
@ -308,7 +308,7 @@ each_contact(const Mu::ContactInfo& ci, ECData& ecdata)
ci.name.c_str(),
ci.email.c_str());
break;
case MU_CONFIG_FORMAT_BBDB: each_contact_bbdb(ci.email, ci.name, ci.last_seen); break;
case MU_CONFIG_FORMAT_BBDB: each_contact_bbdb(ci.email, ci.name, ci.message_date); break;
case MU_CONFIG_FORMAT_CSV:
mu_util_print_encoded("%s,%s\n",
ci.name.empty() ? "" : Mu::quote(ci.name).c_str(),
@ -316,14 +316,14 @@ each_contact(const Mu::ContactInfo& ci, ECData& ecdata)
break;
case MU_CONFIG_FORMAT_DEBUG: {
char datebuf[32];
strftime(datebuf, sizeof(datebuf), "%F %T", gmtime(&ci.last_seen));
strftime(datebuf, sizeof(datebuf), "%F %T", gmtime(&ci.message_date));
g_print("%s\n\tname: %s\n\t%s\n\tpersonal: %s\n\tfreq: %zu\n"
"\tlast-seen: %s\n",
ci.email.c_str(),
ci.name.empty() ? "<none>" : ci.name.c_str(),
ci.full_address.c_str(),
ci.display_name().c_str(),
ci.personal ? "yes" : "no",
ci.freq,
ci.frequency,
datebuf);
} break;
default: print_plain(ci.email, ci.name, ecdata.color);