diff options
author | Jan Christophersen <jan@ruken.pw> | 2015-12-19 21:59:41 (UTC) |
---|---|---|
committer | Jan Christophersen <jan@ruken.pw> | 2015-12-19 21:59:41 (UTC) |
commit | 9c96dd6a8bef0d70023d4eaee748916088707765 (patch) | |
tree | 4071fccad33568eef5ef7f9981b44fdf792db415 | |
parent | 173a7213b19665ce0bccfb0f97c1606d95f52c46 (diff) |
using the logout functionality.
-rw-r--r-- | main.go | 17 | ||||
-rw-r--r-- | views/index.html | 46 |
2 files changed, 32 insertions, 31 deletions
@@ -13,9 +13,19 @@ import ( | |||
13 | ) | 13 | ) |
14 | 14 | ||
15 | var renderer *frontend.Renderer | 15 | var renderer *frontend.Renderer |
16 | var charakterin *login.Charakterin | ||
16 | 17 | ||
17 | func index(w http.ResponseWriter, r *http.Request, _ httprouter.Params) { | 18 | func index(w http.ResponseWriter, r *http.Request, _ httprouter.Params) { |
18 | renderer.RenderPage("index", w, make(map[string]interface{})) | 19 | user, err := charakterin.GetUserFromRequest(r) |
20 | if err != nil { | ||
21 | http.Redirect(w, r, "/login", 302) | ||
22 | return | ||
23 | } | ||
24 | |||
25 | data := make(map[string]interface{}) | ||
26 | |||
27 | data["username"] = user.GetName() | ||
28 | renderer.RenderPage("index", w, data) | ||
19 | } | 29 | } |
20 | 30 | ||
21 | func main() { | 31 | func main() { |
@@ -27,16 +37,17 @@ func main() { | |||
27 | if err := db.Ping(); err != nil { | 37 | if err := db.Ping(); err != nil { |
28 | log.Fatal(err) | 38 | log.Fatal(err) |
29 | } | 39 | } |
30 | 40 | ||
31 | log.Println("database connection established") | 41 | log.Println("database connection established") |
32 | 42 | ||
33 | renderer = frontend.New("views") | 43 | renderer = frontend.New("views") |
34 | charakterin := login.New(db) | 44 | charakterin = login.New(db) |
35 | charakterin.UseRenderer(renderer) | 45 | charakterin.UseRenderer(renderer) |
36 | 46 | ||
37 | router := httprouter.New() | 47 | router := httprouter.New() |
38 | router.HandlerFunc("GET", "/login", charakterin.DisplayLogin) | 48 | router.HandlerFunc("GET", "/login", charakterin.DisplayLogin) |
39 | router.HandlerFunc("POST", "/login", charakterin.Login) | 49 | router.HandlerFunc("POST", "/login", charakterin.Login) |
50 | router.HandlerFunc("GET", "/logout", charakterin.Logout) | ||
40 | router.GET("/", index) | 51 | router.GET("/", index) |
41 | 52 | ||
42 | fs := http.FileServer(http.Dir("assets")) | 53 | fs := http.FileServer(http.Dir("assets")) |
diff --git a/views/index.html b/views/index.html index fd8c87f..81c801f 100644 --- a/views/index.html +++ b/views/index.html | |||
@@ -1,43 +1,33 @@ | |||
1 | {{ define "index" }} | 1 | {{ define "index" }} |
2 | <html> | 2 | <html> |
3 | <head> | 3 | <head> |
4 | <link href='https://fonts.googleapis.com/css?family=Roboto' rel='stylesheet' type='text/css'> | 4 | {{ template "materialize" }} |
5 | <title>grilist</title> | 5 | <title>grilist</title> |
6 | <style> | 6 | <style> |
7 | body { | 7 | body { |
8 | height: 100%; | 8 | height: 100%; |
9 | width: 100%; | ||
9 | overflow: hidden; | 10 | overflow: hidden; |
10 | } | 11 | } |
11 | 12 | ||
12 | .benis { | 13 | h1 { |
13 | height: 100%; | 14 | font-size: 100px; |
14 | width: 100%; | 15 | } |
15 | display: table; | 16 | |
16 | } | 17 | h1 >small { |
17 | 18 | margin-top: -50px; | |
18 | .uguu { | 19 | font-size: 20%; |
19 | height: 100%; | 20 | } |
20 | vertical-align: middle; | ||
21 | display: table-cell; | ||
22 | } | ||
23 | |||
24 | h1 { | ||
25 | font-family: 'Roboto', sans-serif; | ||
26 | font-size: 88px; | ||
27 | width: 100%; | ||
28 | text-align: center; | ||
29 | } | ||
30 | h1 > small { | ||
31 | font-size: 33%; | ||
32 | } | ||
33 | </style> | 21 | </style> |
34 | <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no"> | 22 | <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no"> |
35 | </head> | 23 | </head> |
36 | <body> | 24 | <body class="valign-wrapper center-align"> |
37 | <div class="benis"> | 25 | <div class="container"> |
38 | <div class="uguu"> | 26 | <div class="center-align"> |
39 | <h1>grilist<br /><small>#tamtam</small></h1> | 27 | <h1>grilist<small class="blue-grey-text lighten-1">#tamtam</small></h1> |
40 | </div> | 28 | |
29 | <a class="btn waves-effect waves-light cyan lighten-3" href="/logout">Ausloggen</a> | ||
30 | </div> | ||
41 | </div> | 31 | </div> |
42 | </body> | 32 | </body> |
43 | </html> | 33 | </html> |