summaryrefslogtreecommitdiff
path: root/src/server.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/server.rs')
-rw-r--r--src/server.rs8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/server.rs b/src/server.rs
index bd3e8ac..4816c33 100644
--- a/src/server.rs
+++ b/src/server.rs
@@ -12,6 +12,7 @@ use serde_json::Map;
use params;
use error::LinoError;
use chrono;
+use logger::Logger;
#[derive(Debug)]
pub struct State {
@@ -80,6 +81,7 @@ fn quotes(r: &mut Request) -> IronResult<Response> {
None => data::get_quotes(&state.connection, &ordering)?,
}
};
+ let quotes = quotes.into_iter().collect::<Vec<_>>();
result.insert("quotes".to_string(), to_json(&quotes));
Ok(Response::with((
status::Ok,
@@ -95,7 +97,7 @@ fn add_get(_r: &mut Request) -> IronResult<Response> {
Ok(Response::with((
status::Ok,
Header(ContentType::html()),
- Template::new("add", result)
+ Template::new("add", result),
)))
}
@@ -204,9 +206,13 @@ pub fn serve(state: State, port: u16) {
approve: get "/approve.jsp" => approve,
vote: get "/vote" => vote,
);
+ let (logger_before, logger_after) = Logger::new(None);
+
let mut chain = Chain::new(router);
+ chain.link_before(logger_before);
chain.link_after(make_renderer());
chain.link(Write::<State>::both(state));
+ chain.link_after(logger_after);
let bind_address = format!("{}:{}", "::", port);
let _server = Iron::new(chain).http(bind_address.as_str());
info!("Serving on {}", bind_address);