use super::html_escape;
pub(super) fn cover(
target_name: &str,
session_id: &str,
date_short: &str,
target_url: &str,
requester_name: &str,
requester_email: &str,
app_screenshot_b64: Option<&str>,
) -> String {
let screenshot_html = app_screenshot_b64
.filter(|s| !s.is_empty())
.map(|b64| {
format!(
r#"
"#
)
})
.unwrap_or_default();
format!(
r##"
CONFIDENTIAL
Penetration Test Report
{target_name}
Report ID: {session_id}
Date: {date_short}
Target: {target_url}
Prepared for: {requester_name} ({requester_email})
{screenshot_html}
"##,
target_name = html_escape(target_name),
session_id = html_escape(session_id),
date_short = date_short,
target_url = html_escape(target_url),
requester_name = html_escape(requester_name),
requester_email = html_escape(requester_email),
)
}