Rename addressbook stuff to "contacts"

Wasn't a nice name to begin with.

Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
pull/495/head
Manos Pitsidianakis 4 weeks ago
parent 593ed22ba1
commit 8af003abd0
No known key found for this signature in database
GPG Key ID: 7729C7707F7E09D0

@ -450,7 +450,7 @@ supports three kinds of contact backends:
.Bl -enum -compact
.It
an internal format that gets saved under
.Pa $XDG_DATA_HOME/meli/account_name/addressbook Ns
.Pa $XDG_DATA_HOME/meli/account_name/contacts Ns
\&.
.It
vCard files (v3, v4) through the

@ -43,7 +43,7 @@ use melib::{
log,
thread::Threads,
utils::{fnmatch::Fnmatch, futures::sleep, random},
AddressBook, SortField, SortOrder,
Contacts, SortField, SortOrder,
};
use smallvec::SmallVec;
@ -129,7 +129,7 @@ pub struct Account {
pub mailboxes_order: Vec<MailboxHash>,
pub tree: Vec<MailboxNode>,
pub collection: Collection,
pub address_book: AddressBook,
pub contacts: Contacts,
pub settings: AccountConf,
pub backend: Arc<RwLock<Box<dyn MailBackend>>>,
@ -143,7 +143,7 @@ pub struct Account {
impl Drop for Account {
fn drop(&mut self) {
if let Ok(data_dir) = xdg::BaseDirectories::with_profile("meli", &self.name) {
if let Ok(data) = data_dir.place_data_file("addressbook") {
if let Ok(data) = data_dir.place_data_file("contacts") {
/* place result in cache directory */
let f = match fs::File::create(data) {
Ok(f) => f,
@ -158,7 +158,7 @@ impl Drop for Account {
permissions.set_mode(0o600); // Read/write for owner only.
f.set_permissions(permissions).unwrap();
let writer = io::BufWriter::new(f);
if let Err(err) = serde_json::to_writer(writer, &self.address_book) {
if let Err(err) = serde_json::to_writer(writer, &self.contacts) {
eprintln!("{}", err);
};
};
@ -218,16 +218,16 @@ impl Account {
)?;
let data_dir = xdg::BaseDirectories::with_profile("meli", &name).unwrap();
let mut address_book = AddressBook::with_account(settings.account());
let mut contacts = Contacts::with_account(settings.account());
if let Ok(data) = data_dir.place_data_file("addressbook") {
if let Ok(data) = data_dir.place_data_file("contacts") {
if data.exists() {
let reader = io::BufReader::new(fs::File::open(data).unwrap());
let result: result::Result<AddressBook, _> = serde_json::from_reader(reader);
let result: result::Result<Contacts, _> = serde_json::from_reader(reader);
if let Ok(data_t) = result {
for (id, c) in data_t.cards {
if !address_book.card_exists(id) && !c.external_resource() {
address_book.add_card(c);
if !contacts.card_exists(id) && !c.external_resource() {
contacts.add_card(c);
}
}
}
@ -313,7 +313,7 @@ impl Account {
mailbox_entries: Default::default(),
mailboxes_order: Default::default(),
tree: Default::default(),
address_book,
contacts,
collection: backend.collection(),
settings,
main_loop_handler,

@ -230,7 +230,7 @@ impl Component for ContactManager {
let mut new_card = Card::from(fields);
new_card.set_id(*self.card.id());
context.accounts[self.account_pos]
.address_book
.contacts
.add_card(new_card);
context.replies.push_back(UIEvent::StatusEvent(
StatusEvent::DisplayMessage("Saved.".into()),

@ -122,17 +122,17 @@ impl ContactList {
fn initialize(&mut self, context: &Context) {
self.data_columns.clear();
let account = &context.accounts[self.account_pos];
let book = &account.address_book;
self.length = book.len();
let contacts = &account.contacts;
self.length = contacts.len();
self.id_positions.clear();
if self.id_positions.capacity() < book.len() {
self.id_positions.reserve(book.len());
if self.id_positions.capacity() < contacts.len() {
self.id_positions.reserve(contacts.len());
}
self.dirty = true;
let mut min_width = ("Name".len(), "E-mail".len(), 0, "external".len(), 0, 0);
for c in book.values() {
for c in contacts.values() {
/* name */
let name = c.name().split_graphemes().len();
if name > 0 {
@ -164,8 +164,8 @@ impl ContactList {
);
let account = &context.accounts[self.account_pos];
let book = &account.address_book;
let mut book_values = book.values().collect::<Vec<&Card>>();
let contacts = &account.contacts;
let mut book_values = contacts.values().collect::<Vec<&Card>>();
book_values.sort_unstable_by_key(|c| c.name());
for (idx, c) in book_values.iter().enumerate() {
self.id_positions.push(*c.id());
@ -294,7 +294,7 @@ impl ContactList {
};
grid.change_theme(area, account_attrs);
let s = format!(" [{}]", context.accounts[a.index].address_book.len());
let s = format!(" [{}]", context.accounts[a.index].contacts.len());
/* Print account name */
grid.write_string(
&a.name,
@ -589,8 +589,8 @@ impl Component for ContactList {
return true;
}
let account = &mut context.accounts[self.account_pos];
let book = &mut account.address_book;
let card = book[&self.id_positions[self.cursor_pos]].clone();
let contacts = &mut account.contacts;
let card = contacts[&self.id_positions[self.cursor_pos]].clone();
let mut manager = Box::new(ContactManager::new(context));
manager.set_parent_id(self.id);
manager.card = card;
@ -612,8 +612,8 @@ impl Component for ContactList {
}
let card = {
let account = &context.accounts[self.account_pos];
let book = &account.address_book;
book[&self.id_positions[self.cursor_pos]].clone()
let contacts = &account.contacts;
contacts[&self.id_positions[self.cursor_pos]].clone()
};
super::export_to_vcard(&card, self.account_pos, context);
return true;
@ -626,8 +626,8 @@ impl Component for ContactList {
}
let account = &context.accounts[self.account_pos];
let account_hash = account.hash();
let book = &account.address_book;
let card = &book[&self.id_positions[self.cursor_pos]];
let contacts = &account.contacts;
let card = &contacts[&self.id_positions[self.cursor_pos]];
let mut draft: Draft = Draft::default();
*draft.headers_mut().get_mut("To").unwrap() =
format!("{} <{}>", &card.name(), &card.email());
@ -649,7 +649,7 @@ impl Component for ContactList {
}
// [ref:TODO]: add a confirmation dialog?
context.accounts[self.account_pos]
.address_book
.contacts
.remove_card(self.id_positions[self.cursor_pos]);
self.initialized = false;
self.set_dirty(true);
@ -936,7 +936,7 @@ impl Component for ContactList {
fn status(&self, context: &Context) -> String {
format!(
"{} entries",
context.accounts[self.account_pos].address_book.len()
context.accounts[self.account_pos].contacts.len()
)
}
}

@ -31,7 +31,7 @@ use std::{
use indexmap::IndexSet;
use melib::{
email::attachment_types::{ContentType, MultipartType},
list_management, Address, AddressBook, Draft, HeaderName, SpecialUsageMailbox, SubjectPrefix,
list_management, Address, Contacts, Draft, HeaderName, SpecialUsageMailbox, SubjectPrefix,
UnixTimestamp,
};
use nix::sys::wait::WaitStatus;
@ -637,7 +637,7 @@ To: {}
k.into(),
headers[k].to_string(),
Box::new(move |c, term| {
let book: &AddressBook = &c.accounts[&account_hash].address_book;
let book: &Contacts = &c.accounts[&account_hash].contacts;
let results: Vec<String> = book.search(term);
results
.into_iter()

@ -414,7 +414,7 @@ impl Component for MailView {
let account = &mut context.accounts[&coordinates.0];
{
for card in results.iter() {
account.address_book.add_card(card.clone());
account.contacts.add_card(card.clone());
}
}
self.contact_selector = None;

@ -23,7 +23,7 @@
use std::hash::Hasher;
use crate::{
addressbook::{Card, CardId},
contacts::{Card, CardId},
error::Result,
};

@ -1,5 +1,5 @@
/*
* meli - addressbook module
* meli - contacts module
*
* Copyright 2019 Manos Pitsidianakis
*
@ -79,7 +79,7 @@ impl From<String> for CardId {
}
#[derive(Clone, Debug, Deserialize, Eq, PartialEq, Serialize)]
pub struct AddressBook {
pub struct Contacts {
display_name: String,
created: UnixTimestamp,
last_edited: UnixTimestamp,
@ -129,7 +129,7 @@ impl Hash for Card {
}
}
impl AddressBook {
impl Contacts {
pub fn new(display_name: String) -> Self {
Self {
display_name,
@ -219,7 +219,7 @@ impl AddressBook {
}
}
impl Deref for AddressBook {
impl Deref for Contacts {
type Target = IndexMap<CardId, Card>;
fn deref(&self) -> &IndexMap<CardId, Card> {

@ -1,5 +1,5 @@
/*
* meli - addressbook module
* meli - contacts module
*
* Copyright 2019 Manos Pitsidianakis
*

@ -1,5 +1,5 @@
/*
* meli - addressbook module
* meli - contacts module
*
* Copyright 2019 Manos Pitsidianakis
*

@ -86,7 +86,7 @@
//! - Decode attachments (see module [`email::attachments`])
//! - Create new mail (see [`email::Draft`](email::compose::Draft))
//! - Send mail with an SMTP client (see module [`smtp`])
//! - Manage an `addressbook` i.e. have contacts (see module [`addressbook`])
//! - Manage contacts (see module [`contacts`])
//! - Build thread structures out of a list of mail via their `In-Reply-To` and
//! `References` header values (see module [`thread`])
//!
@ -141,8 +141,8 @@ pub use utils::{
SortField, SortOrder,
};
pub mod addressbook;
pub use addressbook::*;
pub mod contacts;
pub use contacts::*;
pub mod backends;
pub use backends::*;
mod collection;

Loading…
Cancel
Save