aboutsummaryrefslogtreecommitdiffstats
path: root/src/renderer.rs
diff options
context:
space:
mode:
authorSven-Hendrik Haase <svenstaro@gmail.com>2020-02-27 16:06:39 +0000
committerGitHub <noreply@github.com>2020-02-27 16:06:39 +0000
commit09f2d24a236924472e7f3297cdc69a60cb47f531 (patch)
treec260547c4493a3400217209706dc2a949ecba187 /src/renderer.rs
parentMerge pull request #262 from svenstaro/dependabot/cargo/alphanumeric-sort-1.0.12 (diff)
parentadded missing head tag (diff)
downloadminiserve-09f2d24a236924472e7f3297cdc69a60cb47f531.tar.gz
miniserve-09f2d24a236924472e7f3297cdc69a60cb47f531.zip
Merge pull request #177 from ghost/fix-#173
Fix #173
Diffstat (limited to 'src/renderer.rs')
-rw-r--r--src/renderer.rs117
1 files changed, 61 insertions, 56 deletions
diff --git a/src/renderer.rs b/src/renderer.rs
index cbad557..1821c48 100644
--- a/src/renderer.rs
+++ b/src/renderer.rs
@@ -33,61 +33,64 @@ pub fn page(
);
html! {
- (page_header(serve_path, color_scheme, file_upload, false))
- body#drop-container {
- @if file_upload {
- div.drag-form {
- div.drag-title {
- h1 { "Drop your file here to upload it" }
+ (DOCTYPE)
+ html {
+ (page_header(serve_path, color_scheme, file_upload, false))
+ body#drop-container {
+ @if file_upload {
+ div.drag-form {
+ div.drag-title {
+ h1 { "Drop your file here to upload it" }
+ }
}
}
- }
- (color_scheme_selector(sort_method, sort_order, color_scheme, default_color_scheme, serve_path))
- div.container {
- span#top { }
- h1.title { "Index of " (serve_path) }
- div.toolbar {
- div.download {
- @for compression_method in CompressionMethod::iter() {
- (archive_button(compression_method, sort_method, sort_order, color_scheme, default_color_scheme))
+ (color_scheme_selector(sort_method, sort_order, color_scheme, default_color_scheme, serve_path))
+ div.container {
+ span#top { }
+ h1.title { "Index of " (serve_path) }
+ div.toolbar {
+ div.download {
+ @for compression_method in CompressionMethod::iter() {
+ (archive_button(compression_method, sort_method, sort_order, color_scheme, default_color_scheme))
+ }
}
- }
- @if file_upload {
- div.upload {
- form id="file_submit" action=(upload_action) method="POST" enctype="multipart/form-data" {
- p { "Select a file to upload or drag it anywhere into the window" }
- div {
- input#file-input type="file" name="file_to_upload" required="" {}
- button type="submit" { "Upload file" }
+ @if file_upload {
+ div.upload {
+ form id="file_submit" action=(upload_action) method="POST" enctype="multipart/form-data" {
+ p { "Select a file to upload or drag it anywhere into the window" }
+ div {
+ input#file-input type="file" name="file_to_upload" required="" {}
+ button type="submit" { "Upload file" }
+ }
}
}
}
}
- }
- table {
- thead {
- th { (build_link("name", "Name", sort_method, sort_order, color_scheme, default_color_scheme)) }
- th { (build_link("size", "Size", sort_method, sort_order, color_scheme, default_color_scheme)) }
- th { (build_link("date", "Last modification", sort_method, sort_order, color_scheme, default_color_scheme)) }
- }
- tbody {
- @if !is_root {
- tr {
- td colspan="3" {
- span.root-chevron { (chevron_left()) }
- a.root href=(parametrized_link("../", sort_method, sort_order, color_scheme, default_color_scheme)) {
- "Parent directory"
+ table {
+ thead {
+ th { (build_link("name", "Name", sort_method, sort_order, color_scheme, default_color_scheme)) }
+ th { (build_link("size", "Size", sort_method, sort_order, color_scheme, default_color_scheme)) }
+ th { (build_link("date", "Last modification", sort_method, sort_order, color_scheme, default_color_scheme)) }
+ }
+ tbody {
+ @if !is_root {
+ tr {
+ td colspan="3" {
+ span.root-chevron { (chevron_left()) }
+ a.root href=(parametrized_link("../", sort_method, sort_order, color_scheme, default_color_scheme)) {
+ "Parent directory"
+ }
}
}
}
- }
- @for entry in entries {
- (entry_row(entry, sort_method, sort_order, color_scheme, default_color_scheme))
+ @for entry in entries {
+ (entry_row(entry, sort_method, sort_order, color_scheme, default_color_scheme))
+ }
}
}
- }
- a.back href="#top" {
- (arrow_up())
+ a.back href="#top" {
+ (arrow_up())
+ }
}
}
}
@@ -803,14 +806,13 @@ fn page_header(
is_error: bool,
) -> Markup {
html! {
- (DOCTYPE)
- html {
+ head {
meta charset="utf-8";
meta http-equiv="X-UA-Compatible" content="IE=edge";
meta name="viewport" content="width=device-width, initial-scale=1";
@if is_error {
title { (serve_path) }
- } else {
+ } @else {
title { "Index of " (serve_path) }
}
style { (css(color_scheme)) }
@@ -905,17 +907,20 @@ pub fn render_error(
};
html! {
- body {
+ (DOCTYPE)
+ html {
(page_header(&error_code.to_string(), color_scheme, false, true))
- div.error {
- p { (error_code.to_string()) }
- @for error in error_description.lines() {
- p { (error) }
- }
- @if display_back_link {
- div.error-nav {
- a.error-back href=(link) {
- "Go back to file listing"
+ body {
+ div.error {
+ p { (error_code.to_string()) }
+ @for error in error_description.lines() {
+ p { (error) }
+ }
+ @if display_back_link {
+ div.error-nav {
+ a.error-back href=(link) {
+ "Go back to file listing"
+ }
}
}
}