|
|
@ -17,6 +17,7 @@ cfg_if! { if #[cfg(feature = "ssr")] {
|
|
|
|
use lettre::{AsyncSmtpTransport, AsyncFileTransport, AsyncTransport, Tokio1Executor};
|
|
|
|
use lettre::{AsyncSmtpTransport, AsyncFileTransport, AsyncTransport, Tokio1Executor};
|
|
|
|
use lettre::transport::smtp::client::{Tls, TlsParameters};
|
|
|
|
use lettre::transport::smtp::client::{Tls, TlsParameters};
|
|
|
|
use lettre::transport::smtp::authentication::Credentials;
|
|
|
|
use lettre::transport::smtp::authentication::Credentials;
|
|
|
|
|
|
|
|
use lettre::transport::smtp::extension::ClientId;
|
|
|
|
use std::ops::Add;
|
|
|
|
use std::ops::Add;
|
|
|
|
|
|
|
|
|
|
|
|
pub async fn message_for_type(msg_type: &MessageType, pool: &PgPool) -> Result<Message, Error> {
|
|
|
|
pub async fn message_for_type(msg_type: &MessageType, pool: &PgPool) -> Result<Message, Error> {
|
|
|
@ -137,6 +138,11 @@ cfg_if! { if #[cfg(feature = "ssr")] {
|
|
|
|
} else {
|
|
|
|
} else {
|
|
|
|
transport
|
|
|
|
transport
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
let transport = if let Some(hello) = self.hello_name() {
|
|
|
|
|
|
|
|
transport.hello_name(ClientId::Domain(hello.to_string()))
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
transport
|
|
|
|
|
|
|
|
};
|
|
|
|
if self.user().is_some() && self.password().is_some() {
|
|
|
|
if self.user().is_some() && self.password().is_some() {
|
|
|
|
let cred = Credentials::new(self.user().clone().unwrap(), self.password().clone().unwrap());
|
|
|
|
let cred = Credentials::new(self.user().clone().unwrap(), self.password().clone().unwrap());
|
|
|
|
transport.credentials(cred).build().send(msg.build_mail(self.from().to_string())?).await?;
|
|
|
|
transport.credentials(cred).build().send(msg.build_mail(self.from().to_string())?).await?;
|
|
|
|