Rename render -> show_paste
This commit is contained in:
parent
cd3d911ca0
commit
f675f75b3b
1 changed files with 11 additions and 13 deletions
24
src/main.rs
24
src/main.rs
|
@ -55,7 +55,7 @@ struct IndexForm {
|
||||||
fn submit(input: Form<IndexForm>) -> Redirect {
|
fn submit(input: Form<IndexForm>) -> Redirect {
|
||||||
let id = generate_id();
|
let id = generate_id();
|
||||||
store_paste(id.clone(), input.into_inner().val);
|
store_paste(id.clone(), input.into_inner().val);
|
||||||
Redirect::to(uri!(render: id))
|
Redirect::to(uri!(show_paste: id))
|
||||||
}
|
}
|
||||||
|
|
||||||
#[put("/", data = "<input>")]
|
#[put("/", data = "<input>")]
|
||||||
|
@ -67,7 +67,7 @@ fn submit_raw(input: Data, host: HostHeader) -> std::io::Result<String> {
|
||||||
store_paste(id.clone(), data);
|
store_paste(id.clone(), data);
|
||||||
|
|
||||||
match *host {
|
match *host {
|
||||||
Some(host) => Ok(format!("https://{}/{}", host, id)),
|
Some(host) => Ok(format!("https://{}{}", host, uri!(show_paste: id))),
|
||||||
None => Ok(id),
|
None => Ok(id),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -78,12 +78,12 @@ fn submit_raw(input: Data, host: HostHeader) -> std::io::Result<String> {
|
||||||
|
|
||||||
#[derive(Template)]
|
#[derive(Template)]
|
||||||
#[template(path = "paste.html")]
|
#[template(path = "paste.html")]
|
||||||
struct Render {
|
struct ShowPaste {
|
||||||
content: MarkupDisplay<Html, String>,
|
content: MarkupDisplay<Html, String>,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[get("/<key>")]
|
#[get("/<key>")]
|
||||||
fn render(key: String, plaintext: IsPlaintextRequest) -> Result<Content<String>, Status> {
|
fn show_paste(key: String, plaintext: IsPlaintextRequest) -> Result<Content<String>, Status> {
|
||||||
let mut splitter = key.splitn(2, '.');
|
let mut splitter = key.splitn(2, '.');
|
||||||
let key = splitter.next().ok_or_else(|| Status::NotFound)?;
|
let key = splitter.next().ok_or_else(|| Status::NotFound)?;
|
||||||
let ext = splitter.next();
|
let ext = splitter.next();
|
||||||
|
@ -95,16 +95,14 @@ fn render(key: String, plaintext: IsPlaintextRequest) -> Result<Content<String>,
|
||||||
if *plaintext {
|
if *plaintext {
|
||||||
Ok(Content(ContentType::Plain, entry))
|
Ok(Content(ContentType::Plain, entry))
|
||||||
} else {
|
} else {
|
||||||
let template = Render {
|
let content = match ext {
|
||||||
content: match ext {
|
None => MarkupDisplay::new_unsafe(entry, Html),
|
||||||
None => MarkupDisplay::new_unsafe(entry, Html),
|
Some(extension) => highlight(&entry, extension)
|
||||||
Some(extension) => highlight(&entry, extension)
|
.map(|h| MarkupDisplay::new_safe(h, Html))
|
||||||
.map(|h| MarkupDisplay::new_safe(h, Html))
|
.ok_or_else(|| Status::NotFound)?,
|
||||||
.ok_or_else(|| Status::NotFound)?,
|
|
||||||
},
|
|
||||||
};
|
};
|
||||||
|
|
||||||
template
|
ShowPaste { content }
|
||||||
.render()
|
.render()
|
||||||
.map(|html| Content(ContentType::HTML, html))
|
.map(|html| Content(ContentType::HTML, html))
|
||||||
.map_err(|_| Status::InternalServerError)
|
.map_err(|_| Status::InternalServerError)
|
||||||
|
@ -113,6 +111,6 @@ fn render(key: String, plaintext: IsPlaintextRequest) -> Result<Content<String>,
|
||||||
|
|
||||||
fn main() {
|
fn main() {
|
||||||
rocket::ignite()
|
rocket::ignite()
|
||||||
.mount("/", routes![index, submit, submit_raw, render])
|
.mount("/", routes![index, submit, submit_raw, show_paste])
|
||||||
.launch();
|
.launch();
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue