Move handlebars helper to its own file

This commit is contained in:
2020-10-28 01:15:58 +01:00
parent e8edaa9acb
commit fe5cd04506
2 changed files with 15 additions and 11 deletions

13
src/handlebars_util.rs Normal file
View File

@ -0,0 +1,13 @@
use rocket_contrib::templates::Engines;
use handlebars::handlebars_helper;
pub fn register_helpers(engines: &mut Engines) {
handlebars_helper!(pretty_datetime: |dt: str| {
let date = dt.trim_end_matches(|c| c != 'T').trim_end_matches('T');
let time = dt.trim_start_matches(|c| c != 'T').trim_start_matches('T')
.trim_end_matches(|c| c != ':').trim_end_matches(':');
format!("{} {}", date, time)
});
engines.handlebars.register_helper("pretty_datetime", Box::new(pretty_datetime));
}

View File

@ -2,12 +2,12 @@
mod database; mod database;
mod routes; mod routes;
mod status_json; mod status_json;
mod handlebars_util;
use std::{io, env}; use std::{io, env};
use dotenv::dotenv; use dotenv::dotenv;
use rocket_contrib::templates::Template; use rocket_contrib::templates::Template;
use rocket_contrib::serve::StaticFiles; use rocket_contrib::serve::StaticFiles;
use handlebars::handlebars_helper;
fn main() -> io::Result<()> { fn main() -> io::Result<()> {
dotenv().ok(); dotenv().ok();
@ -16,17 +16,8 @@ fn main() -> io::Result<()> {
let sled = sled::open(db_path)?; let sled = sled::open(db_path)?;
handlebars_helper!(pretty_datetime: |dt: str| {
let date = dt.trim_end_matches(|c| c != 'T').trim_end_matches('T');
let time = dt.trim_start_matches(|c| c != 'T').trim_start_matches('T')
.trim_end_matches(|c| c != ':').trim_end_matches(':');
format!("{} {}", date, time)
});
let rocket = rocket::ignite() let rocket = rocket::ignite()
.attach(Template::custom(|engines| { .attach(Template::custom(|engines| handlebars_util::register_helpers(engines)))
engines.handlebars.register_helper("pretty_datetime", Box::new(pretty_datetime));
}))
.manage(sled) .manage(sled)
.mount("/static", StaticFiles::from("static")) .mount("/static", StaticFiles::from("static"))
.mount( .mount(