aboutsummaryrefslogtreecommitdiff
path: root/htmlua-parser/src/serve.rs
diff options
context:
space:
mode:
authorGrace Yoder <70408179+gyoder@users.noreply.github.com>2025-07-07 12:44:51 -0600
committerGitHub <noreply@github.com>2025-07-07 12:44:51 -0600
commit262a2e23d89d35f78d8972f5b560c7e5ee7225ee (patch)
treee8eedd8f47c8ed2a20a34b3017f9d992eefef403 /htmlua-parser/src/serve.rs
parent3d50b12df4bd1e81248256893bd9a83498a0dae9 (diff)
parent6c3f257942d2b1d88aa471f52d5b0241492730ae (diff)
Merge branch 'main' into syntect
Diffstat (limited to 'htmlua-parser/src/serve.rs')
-rw-r--r--htmlua-parser/src/serve.rs14
1 files changed, 7 insertions, 7 deletions
diff --git a/htmlua-parser/src/serve.rs b/htmlua-parser/src/serve.rs
index 5b63e3d..06de0ea 100644
--- a/htmlua-parser/src/serve.rs
+++ b/htmlua-parser/src/serve.rs
@@ -1,10 +1,9 @@
+use crate::helpers::read_doc_from_file;
+
use super::render::{execute_lua, expand_template, process_markdown, process_syntax_highlighting};
use anyhow::Result;
-use kuchikiki::traits::TendrilSink;
-use std::{
- fs::read_to_string,
- path::{Path, PathBuf},
-};
+use std::path::{Path, PathBuf}
+;
pub fn serve_content(request_uri: &str) -> Result<String> {
// TODO: read from config
@@ -12,8 +11,9 @@ pub fn serve_content(request_uri: &str) -> Result<String> {
let components = PathBuf::from("/var/www/htmlua/components");
let safe_path = Path::new(request_uri).strip_prefix("/")?;
let page_path = pages.join(safe_path);
- let page_string = read_to_string(&page_path)?;
- let doc = kuchikiki::parse_html().one(page_string);
+
+ let doc = read_doc_from_file(page_path)?;
+
let full_doc = expand_template(doc, &components, None)?;
let markdown_doc = process_markdown(full_doc)?;
let highlighted_doc = process_syntax_highlighting(markdown_doc)?;