diff options
author | Kjetil Orbekk <kjetil.orbekk@gmail.com> | 2017-06-17 16:22:05 -0400 |
---|---|---|
committer | Kjetil Orbekk <kjetil.orbekk@gmail.com> | 2017-06-17 16:22:05 -0400 |
commit | 72844ca385bf7c503826cf6b684c8fa724973064 (patch) | |
tree | e539367acdd7f43539a4894e6df786e42712d85b | |
parent | 1ef1e9c309a187aaee3e736aef621b272cc805d8 (diff) |
ui: Add navigation bar (for login details).
-rw-r--r-- | src/render/mod.rs | 16 | ||||
-rw-r--r-- | src/server.rs | 17 | ||||
-rw-r--r-- | static/main.css | 27 |
3 files changed, 50 insertions, 10 deletions
diff --git a/src/render/mod.rs b/src/render/mod.rs index 75fd9b5..3b63a68 100644 --- a/src/render/mod.rs +++ b/src/render/mod.rs @@ -12,7 +12,21 @@ fn render_in_page<'a>(content: Box<RenderBox + 'a>) -> String { link(rel="stylesheet", type="text/css", href="/static/main.css"); } body { - : content + nav { + ul { + li { + p { : "SystemHttpd" } + } + } + ul(class="right") { + li { + p { : "Login" } + } + } + } + main { + : content + } } } }).into_string().unwrap() diff --git a/src/server.rs b/src/server.rs index dad728e..9e63cb3 100644 --- a/src/server.rs +++ b/src/server.rs @@ -14,25 +14,24 @@ use render; use staticfile::Static; use regex::Regex; -struct Aaa(String); +struct Login { + user: String, +} -impl iron_sessionstorage::Value for Aaa { +impl iron_sessionstorage::Value for Login { fn get_key() -> &'static str { - "aaa" + "login" } fn into_raw(self) -> String { - self.0 + self.user } fn from_raw(v: String) -> Option<Self> { - Some(Aaa(v)) + Some(Login{ user: v }) } } fn overview(r: &mut Request) -> IronResult<Response> { - let mut _value = match try!(r.session().get::<Aaa>()) { - Some(aaa) => aaa, - None => Aaa("".to_owned()), - }; + let mut _value = try!(r.session().get::<Login>()); let name = r.extensions .get::<Router>() diff --git a/static/main.css b/static/main.css index abfa185..db30eb5 100644 --- a/static/main.css +++ b/static/main.css @@ -3,12 +3,39 @@ h1 { color: red; } body { font-family: "Arial"; font-size: 1em; + margin: 0; + padding: 0; } table, th, td, tr { padding: 0; margin: 0; border-collapse: collapse; } +.right { + position: relative; + float: right; +} +nav { + background: lightblue; + overflow: hidden; + font-weight: bold; +} +nav ul { + margin: 0; + padding: 0; + display: inline-block; +} +nav ul li { + display: inline-block; + list-style-type: none; + margin: 0; + padding-left: 0.5em; + padding-right: 0.5em; + font-size: 1em; +} +main { + margin: 1em; +} th { text-align: left; background: lightgray; |