diff options
author | Teddy Wing | 2018-11-14 02:44:19 +0100 |
---|---|---|
committer | Teddy Wing | 2018-11-14 02:44:19 +0100 |
commit | fbd90fbd1b677bf0f5f952628e995a8c7bbd1571 (patch) | |
tree | b00ad1685ef811450a824d9cef35cafc5fb6a602 | |
parent | d41bfce40cedd84445908975a4a090f3fda2e9c6 (diff) | |
download | dome-key-web-fbd90fbd1b677bf0f5f952628e995a8c7bbd1571.tar.bz2 |
license: Add thank-you page at `/license`
-rw-r--r-- | license-generator/src/bin/license.rs | 19 |
1 files changed, 15 insertions, 4 deletions
diff --git a/license-generator/src/bin/license.rs b/license-generator/src/bin/license.rs index f35407b..c68d299 100644 --- a/license-generator/src/bin/license.rs +++ b/license-generator/src/bin/license.rs @@ -39,7 +39,7 @@ struct LicenseData<'a> { } trait LicenseValidationResponse { - fn success(&mut self, name: &str, email: &str); + fn success(&mut self, name: &str, email: &str, secret: &str); fn error_400(&mut self); fn error_404(&mut self); fn error_500(&mut self, error: Option<Error>); @@ -51,7 +51,18 @@ struct HtmlResponse<'a, W: 'a> { impl<'a, W> LicenseValidationResponse for HtmlResponse<'a, W> where W: 'a + Write { - fn success(&mut self, name: &str, email: &str) { + fn success(&mut self, name: &str, email: &str, secret: &str) { + write!( + self.writer, + "Status: 200 +Content-Type: text/html\n\n{}", + format!( + include_str!("../../../thank-you.html"), + name = name, + email = email, + secret = secret, + ) + ).unwrap_or(()) } fn error_400(&mut self) { @@ -80,7 +91,7 @@ struct ZipResponse<'a, W: 'a> { impl<'a, W> LicenseValidationResponse for ZipResponse<'a, W> where W: 'a + Write { - fn success(&mut self, name: &str, email: &str) { + fn success(&mut self, name: &str, email: &str, _secret: &str) { let license_data = LicenseData { name: &name, email: &email, @@ -171,7 +182,7 @@ fn build_response<'a, R: LicenseValidationResponse>( Err(e) => return responses.error_500(Some(e.into())), }; - return responses.success(&name, &email); + return responses.success(&name, &email, &secret); } else { return responses.error_404(); } |