aboutsummaryrefslogtreecommitdiff
path: root/src/response.rs
diff options
context:
space:
mode:
authorFuwn <[email protected]>2024-07-24 00:38:05 +0000
committerFuwn <[email protected]>2024-07-24 00:38:05 +0000
commitcaeddebbb83e0ea0f495d1ce598f7daa288591e4 (patch)
tree7c1cd50dc598f17f0a6b006c6ff8f858cf18b39c /src/response.rs
parentchore: remove semi-outdated technical information (diff)
downloadseptember-caeddebbb83e0ea0f495d1ce598f7daa288591e4.tar.xz
september-caeddebbb83e0ea0f495d1ce598f7daa288591e4.zip
refactor(response): move configuration into struct
Diffstat (limited to 'src/response.rs')
-rw-r--r--src/response.rs20
1 files changed, 9 insertions, 11 deletions
diff --git a/src/response.rs b/src/response.rs
index eceaa30..7b9a1d3 100644
--- a/src/response.rs
+++ b/src/response.rs
@@ -1,3 +1,5 @@
+pub mod configuration;
+
use {
crate::url::from_path as url_from_path,
actix_web::{Error, HttpResponse},
@@ -22,9 +24,7 @@ For example: to proxy "gemini://fuwn.me/uptime", visit "/proxy/fuwn.me/uptime".<
);
}
- let mut is_proxy = false;
- let mut is_raw = false;
- let mut is_nocss = false;
+ let mut configuration = configuration::Configuration::new();
let url = match url_from_path(
&format!("{}{}", req.path(), {
if !req.query_string().is_empty() || req.uri().to_string().ends_with('?')
@@ -35,9 +35,7 @@ For example: to proxy "gemini://fuwn.me/uptime", visit "/proxy/fuwn.me/uptime".<
}
}),
false,
- &mut is_proxy,
- &mut is_raw,
- &mut is_nocss,
+ &mut configuration,
) {
Ok(url) => url,
Err(e) => {
@@ -94,7 +92,7 @@ For example: to proxy "gemini://fuwn.me/uptime", visit "/proxy/fuwn.me/uptime".<
timer = Instant::now();
- let mut html_context = if is_raw {
+ let mut html_context = if configuration.is_raw() {
String::new()
} else {
format!(
@@ -107,11 +105,11 @@ For example: to proxy "gemini://fuwn.me/uptime", visit "/proxy/fuwn.me/uptime".<
)
};
let gemini_html =
- crate::html::from_gemini(&response, &url, is_proxy).unwrap();
+ crate::html::from_gemini(&response, &url, &configuration).unwrap();
let gemini_title = gemini_html.0;
let convert_time_taken = timer.elapsed();
- if is_raw {
+ if configuration.is_raw() {
html_context.push_str(
&response.content().as_ref().map_or_else(String::default, String::clone),
);
@@ -123,7 +121,7 @@ For example: to proxy "gemini://fuwn.me/uptime", visit "/proxy/fuwn.me/uptime".<
);
}
- if is_nocss {
+ if configuration.is_no_css() {
html_context.push_str(&gemini_html.1);
return Ok(
@@ -142,7 +140,7 @@ For example: to proxy "gemini://fuwn.me/uptime", visit "/proxy/fuwn.me/uptime".<
"<link rel=\"stylesheet\" type=\"text/css\" href=\"{stylesheet}\">",
));
}
- } else if !is_nocss {
+ } else if !configuration.is_no_css() {
html_context.push_str(&format!(r#"<link rel="stylesheet" href="https://latex.vercel.app/style.css"><style>{CSS}</style>"#));
if let Ok(primary) = var("PRIMARY_COLOUR") {