From 8e7557a36e5c61cdeed6c2f8482a565969e68651 Mon Sep 17 00:00:00 2001 From: Anton Livaja Date: Fri, 31 May 2024 00:06:01 -0400 Subject: [PATCH] remove bkp --- src/bkp | 81 --------------------------------------------------------- 1 file changed, 81 deletions(-) delete mode 100644 src/bkp diff --git a/src/bkp b/src/bkp deleted file mode 100644 index d68bece..0000000 --- a/src/bkp +++ /dev/null @@ -1,81 +0,0 @@ -use axum::{ - extract::Form, - handler::post, - response::Html, - Router, -}; -use axum_server; - -use lettre::message::Message; -use lettre::transport::smtp::SmtpTransport; -use lettre::{AsyncSmtpTransport, AsyncTransport, Tokio1Executor}; -use serde::Deserialize; -use std::net::SocketAddr; - -#[derive(Deserialize)] -struct FormData { - name: String, - email: String, - message: String, -} - -#[tokio::main] -async fn main() { - let app = Router::new().route("/submit-email", post(handle_form)); - - let addr = SocketAddr::from(([127, 0, 0, 1], 6900)); - println!("Listening on {}", addr); - axum_server::Server::bind(&addr) - .serve(app.into_make_service()) - .await - .unwrap() -} - -async fn handle_form(Form(form): Form) -> Html { - match send_email(form).await { - Ok(_) => Html("Form submitted successfully.".to_string()), - Err(e) => Html(format!("Error sending email.")), - } -} - -async fn send_email(form: FormData) -> Result<(), Box> { - let email = Message::builder() - .from(form.email.parse()?) - .to("sales@distrust.co".parse()?) - .subject("New Website Form Inquiry") - .body(format!("Name {}\nEmail: {}\nMessage: {}", form.name, form.email, form.message))?; - - let mailer: AsyncSmtpTransport = SmtpTransport::builder_dangerous.build(); - mailer.send(email).await { - Ok(_) -> Ok(()); - Err(e) -> { - println!("Failed to send email: {}", e); - Err(Box::new(e) as Box) - } - } -} - -#[cfg(test)] -mod tests { - use super::*; - use axum::body::Body; - use axum::http::{Request, StatusCode}; - use axum::Router; - use tower::ServiceExt; - - #[tokio::test] - async fn test_handle_form() { - let app = Router::new().route("/submit-email", post(handle_form)); - - let response = app - .oneshot( - Request::post("submit-email") - .header("content-type", "application/x-www-form-urlencoded") - .body(Body::from("name=Lisan Al Ghaib&email=paul@atreides.com&message=The spice must flow.")) - .unwrap(), - ) - .await - .unwrap(); - assert_eq(response.status(), StatusCode::OK); - } -}