diff --git a/src/lists.rs b/src/lists.rs index 1161f90..c9a8af9 100644 --- a/src/lists.rs +++ b/src/lists.rs @@ -90,13 +90,13 @@ impl Subscriber { } impl ListmonkCreateSubscriber { - fn load(subscriber: &Subscriber) -> ListmonkCreateSubscriber { + fn load(subscriber: &Subscriber, lists: Vec) -> ListmonkCreateSubscriber { ListmonkCreateSubscriber { email: subscriber.email.clone(), name: "NewsSubscriber".to_string(), status: "enabled".to_string(), attribs: serde_json::value::Value::Null, - lists: vec![], + lists, preconfirm_subscriptions: true, } } @@ -149,7 +149,10 @@ impl MailingLists { .join("/api/subscribers") .expect("invalid url"), ) - .json(&ListmonkCreateSubscriber::load(&new_subscriber)) + .json(&ListmonkCreateSubscriber::load( + &new_subscriber, + vec![desired_list], + )) .basic_auth(self.user.clone(), Some(self.password.clone())) .send() .await @@ -170,30 +173,30 @@ impl MailingLists { } }; - let mailing_list_add = client - .put( - self - .url - .clone() - .join("/api/subscribers/lists") - .expect("invalid url"), - ) - .json(&ListmonkAddSubscribers::load( - json_body.data.id, - desired_list, - )) - .basic_auth(self.user.clone(), Some(self.password.clone())) - .send() - .await - .map_err(|e| { - error!("reqwest error while to sending to listmonk {:?}", e); - MailingListsError::RequestError - })?; - - if mailing_list_add.status() != reqwest::StatusCode::OK { - Err(MailingListsError::ListmonkError) - } else { - Ok(()) - } + // let mailing_list_add = client + // .put( + // self + // .url + // .clone() + // .join("/api/subscribers/lists") + // .expect("invalid url"), + // ) + // .json(&ListmonkAddSubscribers::load( + // json_body.data.id, + // desired_list, + // )) + // .basic_auth(self.user.clone(), Some(self.password.clone())) + // .send() + // .await + // .map_err(|e| { + // error!("reqwest error while to sending to listmonk {:?}", e); + // MailingListsError::RequestError + // })?; + // + // if mailing_list_add.status() != reqwest::StatusCode::OK { + // Err(MailingListsError::ListmonkError) + // } else { + Ok(()) + // } } } diff --git a/src/main.rs b/src/main.rs index 998418f..41d4dce 100644 --- a/src/main.rs +++ b/src/main.rs @@ -10,7 +10,7 @@ use crate::args::Args; use crate::documents::Documents; use crate::lists::MailingLists; use crate::news::News; -use crate::routes::{ContentPaths, route}; +use crate::routes::{route, ContentPaths}; use crate::state::FoundationState; use crate::team::Team; use crate::text_blocks::TextBlocks; @@ -56,7 +56,7 @@ async fn main() -> anyhow::Result<()> { &args.listmonk_password_file, &args.listmonk_lists, ) - .await?, + .await?, }; let cors = CorsLayer::new() @@ -70,8 +70,8 @@ async fn main() -> anyhow::Result<()> { document: args.content_directory.join("documents/download"), team: args.content_directory.join("team/assets"), }) - .layer(cors) - .with_state(state); + .layer(cors) + .with_state(state); let listener = TcpListener::bind(&args.listen_addr).await?; info!("Listening on http://{}...", args.listen_addr);