diff --git a/src/config.rs b/src/config.rs index f9b23c5..1916f90 100644 --- a/src/config.rs +++ b/src/config.rs @@ -169,12 +169,12 @@ impl Config { .unwrap_or_default(), form_prompt: env::var("BOOK_FORM_PROMPT").unwrap_or_default(), button_text: env::var("BOOK_BUTTON_TEXT") - .unwrap_or_else(|_| "sign".into()), + .unwrap_or_else(|_| "Submit".into()), label_name: env::var("BOOK_LABEL_NAME").unwrap_or_else(|_| "name".into()), label_website: env::var("BOOK_LABEL_WEBSITE") .unwrap_or_else(|_| "website (optional)".into()), label_message: env::var("BOOK_LABEL_MESSAGE") - .unwrap_or_else(|_| "message".into()), + .unwrap_or_else(|_| "message (optional)".into()), textarea_width: env::var("BOOK_TEXTAREA_WIDTH") .unwrap_or_else(|_| "320".into()) .parse() diff --git a/src/render.rs b/src/render.rs index 8c00226..d209d7a 100644 --- a/src/render.rs +++ b/src/render.rs @@ -32,7 +32,7 @@ pub fn render_page(template: &str, config: &Config, entries: &[Entry], form_html pub fn render_form(config: &Config) -> String { let website_section = if config.enable_website_links { format!( - "\n\n\n", + "\n\n", label = config.label_website ) } else { @@ -41,7 +41,7 @@ pub fn render_form(config: &Config) -> String { let captcha_section = if config.enable_captcha { format!( - "\n\n\n", + "\n\n", label = config.captcha_question ) } else { @@ -50,9 +50,9 @@ pub fn render_form(config: &Config) -> String { let drawing_section = if config.enable_drawings { format!( - r##"add a drawing -"##, w = config.canvas_width, h = config.canvas_height, @@ -121,9 +111,10 @@ pub fn render_form(config: &Config) -> String { let voice_note_section = if config.enable_voice_notes { format!( - r##"add a voice note "##, max_dur = config.voice_note_max_duration, ) @@ -184,23 +176,24 @@ pub fn render_form(config: &Config) -> String { }; format!( - r#"
+"#, label_name = config.label_name, website_section = website_section, label_message = config.label_message, tw = config.textarea_width, th = config.textarea_height, - captcha_section = captcha_section, drawing_section = drawing_section, voice_note_section = voice_note_section, + captcha_section = captcha_section, button = config.button_text, ) } @@ -357,9 +350,9 @@ mod tests { style: String::new(), form_prompt: "Thanks for visiting. Sign the guestbook!".into(), button_text: "sign".into(), - label_name: "Your name:".into(), - label_website: "Your website (optional):".into(), - label_message: "Your message:".into(), + label_name: "name".into(), + label_website: "website (optional)".into(), + label_message: "message (optional)".into(), textarea_width: 400, textarea_height: 150, } @@ -521,7 +514,7 @@ mod tests { let html = render_page(DEFAULT_TEMPLATE, &config, &[entry], &form); assert!(html.contains("<b>hacker</b>")); assert!(html.contains("<script>alert('xss')</script>")); - assert!(!html.contains("