mirror of
https://github.com/chatmail/core.git
synced 2026-05-02 12:56:30 +03:00
show better error message for a simple 'bad credentials' error and give some more hints for other errors
This commit is contained in:
committed by
holger krekel
parent
469f8ac31d
commit
27627b4f74
20
src/imap.rs
20
src/imap.rs
@@ -16,6 +16,7 @@ use crate::login_param::{dc_build_tls, CertificateChecks, LoginParam};
|
||||
use crate::message::{self, update_msg_move_state, update_server_uid};
|
||||
use crate::oauth2::dc_get_oauth2_access_token;
|
||||
use crate::param::Params;
|
||||
use crate::stock::StockMessage;
|
||||
use crate::wrapmime;
|
||||
|
||||
const DC_IMAP_SEEN: usize = 0x0001;
|
||||
@@ -445,15 +446,14 @@ impl Imap {
|
||||
let config = self.config.read().unwrap();
|
||||
let imap_server: &str = config.imap_server.as_ref();
|
||||
let imap_port = config.imap_port;
|
||||
|
||||
emit_event!(
|
||||
context,
|
||||
Event::ErrorNetwork(format!(
|
||||
"Could not connect to IMAP-server {}:{}. ({})",
|
||||
imap_server, imap_port, err
|
||||
))
|
||||
let message = context.stock_string_repl_str2(
|
||||
StockMessage::ServerResponse,
|
||||
format!("{}:{}", imap_server, imap_port),
|
||||
format!("{}", err),
|
||||
);
|
||||
|
||||
emit_event!(context, Event::ErrorNetwork(message));
|
||||
|
||||
return false;
|
||||
}
|
||||
};
|
||||
@@ -467,9 +467,13 @@ impl Imap {
|
||||
true
|
||||
}
|
||||
Err((err, _)) => {
|
||||
let config = self.config.read().unwrap();
|
||||
let imap_user: &str = config.imap_user.as_ref();
|
||||
let message = context.stock_string_repl_str(StockMessage::CannotLogin, imap_user);
|
||||
|
||||
emit_event!(
|
||||
context,
|
||||
Event::ErrorNetwork(format!("Cannot login ({})", err))
|
||||
Event::ErrorNetwork(format!("{} ({})", message, err))
|
||||
);
|
||||
self.unsetup_handle(context);
|
||||
|
||||
|
||||
@@ -96,7 +96,7 @@ pub enum StockMessage {
|
||||
SelfTalkSubTitle = 50,
|
||||
#[strum(props(fallback = "Cannot login as %1$s."))]
|
||||
CannotLogin = 60,
|
||||
#[strum(props(fallback = "Response from %1$s: %2$s"))]
|
||||
#[strum(props(fallback = "Could not connect to %1$s: %2$s"))]
|
||||
ServerResponse = 61,
|
||||
#[strum(props(fallback = "%1$s by %2$s."))]
|
||||
MsgActionByUser = 62,
|
||||
@@ -334,7 +334,7 @@ mod tests {
|
||||
assert_eq!(
|
||||
t.ctx
|
||||
.stock_string_repl_str2(StockMessage::ServerResponse, "foo", "bar"),
|
||||
"Response from foo: bar"
|
||||
"Could not connect to foo: bar"
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user