From 7e1c907be3612b77f66f93b4dcfa388aad201430 Mon Sep 17 00:00:00 2001 From: Fuwn Date: Thu, 30 Mar 2023 02:02:57 -0700 Subject: feat(router): add translation engine --- src/modules/router.rs | 69 +++------------------------------------------------ 1 file changed, 3 insertions(+), 66 deletions(-) (limited to 'src/modules/router.rs') diff --git a/src/modules/router.rs b/src/modules/router.rs index ade7d33..8f24a9b 100644 --- a/src/modules/router.rs +++ b/src/modules/router.rs @@ -16,70 +16,7 @@ // Copyright (C) 2022-2022 Fuwn // SPDX-License-Identifier: GPL-3.0-only -use crate::DATABASE; +mod deepl; +mod module; -pub fn module(router: &mut windmark::Router) { - router.set_pre_route_callback(Box::new(|context| { - info!( - "accepted connection from {} to {}", - context.tcp.peer_addr().unwrap().ip(), - context.url.to_string(), - ); - - let url_path = if context.url.path().is_empty() { - "/" - } else { - context.url.path() - }; - - let previous_database = (*DATABASE.lock().unwrap()).get::(url_path); - - match previous_database { - None => { - (*DATABASE.lock().unwrap()) - .set::(url_path, &0) - .unwrap(); - } - Some(_) => {} - } - - let new_database = (*DATABASE.lock().unwrap()).get::(url_path); - - (*DATABASE.lock().unwrap()) - .set(url_path, &(new_database.unwrap() + 1)) - .unwrap(); - })); - - router.set_post_route_callback(Box::new(|context, content| { - info!( - "closed connection from {} to {}", - context.tcp.peer_addr().unwrap().ip(), - context.url.to_string(), - ); - - // Just a simple demo for now. - if let Some(uwu) = - windmark::utilities::queries_from_url(context.url).get("uwu") - { - if uwu.to_lowercase() == "true" || uwu == "1" { - let mut lines = content - .lines() - .map(ToString::to_string) - .collect::>(); - - for line in &mut lines { - if !line.starts_with("=>") { - *line = line - .replace('l', "w") - .replace('r', "w") - .replace('L', "W") - .replace('R', "W") - .replace('!', "! >w<"); - } - } - - *content = lines.join("\n"); - } - } - })); -} +pub use module::module; -- cgit v1.2.3