From 2eafde030e1477bb3b94eeb571726c03b42350fb Mon Sep 17 00:00:00 2001 From: Anders Pitman Date: Thu, 15 Oct 2020 13:20:59 -0600 Subject: [PATCH] Clean up menu stuff Also only send /users page when isAdmin is true --- ui_handler.go | 25 ------ webui/index.tmpl | 202 +++++++++++++++++++++++------------------------ 2 files changed, 100 insertions(+), 127 deletions(-) diff --git a/ui_handler.go b/ui_handler.go index d2d82d2..72be815 100644 --- a/ui_handler.go +++ b/ui_handler.go @@ -19,12 +19,10 @@ type WebUiHandler struct { tunMan *TunnelManager box *rice.Box headHtml template.HTML - menuHtml template.HTML } type IndexData struct { Head template.HTML - Menu template.HTML Tunnels map[string]Tunnel Tokens map[string]TokenData Users map[string]User @@ -33,7 +31,6 @@ type IndexData struct { type TunnelsData struct { Head template.HTML - Menu template.HTML Tunnels map[string]Tunnel } @@ -64,13 +61,11 @@ type MenuData struct { type UsersData struct { Head template.HTML - Menu template.HTML Users map[string]User } type TokensData struct { Head template.HTML - Menu template.HTML Tokens map[string]TokenData Users map[string]User } @@ -137,25 +132,6 @@ func (h *WebUiHandler) handleWebUiRequest(w http.ResponseWriter, r *http.Request h.headHtml = template.HTML(headBuilder.String()) - menuTmplStr, err := box.String("menu.tmpl") - if err != nil { - w.WriteHeader(500) - io.WriteString(w, "Error loading menu.tmpl") - return - } - - menuTmpl, err := template.New("menu").Parse(menuTmplStr) - if err != nil { - w.WriteHeader(500) - h.alertDialog(w, r, "Failed to parse menu.tmpl", "/#/tunnels") - return - } - - var menuBuilder strings.Builder - menuTmpl.Execute(&menuBuilder, MenuData{IsAdmin: user.IsAdmin}) - - h.menuHtml = template.HTML(menuBuilder.String()) - switch r.URL.Path { case "/login": h.handleLogin(w, r) @@ -214,7 +190,6 @@ func (h *WebUiHandler) handleWebUiRequest(w http.ResponseWriter, r *http.Request indexData := IndexData{ Head: h.headHtml, - Menu: h.menuHtml, Tunnels: h.api.GetTunnels(tokenData), Tokens: tokens, Users: users, diff --git a/webui/index.tmpl b/webui/index.tmpl index 4f07dd1..6ab417d 100644 --- a/webui/index.tmpl +++ b/webui/index.tmpl @@ -6,114 +6,112 @@
- - + + -
- -
-
- {{range $domain, $tunnel:= .Tunnels}} -
-
- {{$domain}}:{{$tunnel.TunnelPort}} -> {{$tunnel.ClientName}}:{{$tunnel.ClientPort}} -
- - - +
+ +
+
+ {{range $domain, $tunnel:= .Tunnels}} +
+
+ {{$domain}}:{{$tunnel.TunnelPort}} -> {{$tunnel.ClientName}}:{{$tunnel.ClientPort}}
- {{end}} -
- -
-
- - - - - - - -
+ + +
+ {{end}} +
+ +
+
+ + + + + + + +
- -
- -
-
- {{range $token, $tokenData := .Tokens}} -
- {{$token}} ({{$tokenData.Owner}}) - - - -
- {{end}} -
- -
-
- - - -
-
-
-
- -
- -
-
- {{range $username, $user := .Users}} -
- {{$username}} - - - -
- {{end}} -
-
-
- - - - - -
-
-
-
-
+ +
+ +
+
+ {{range $token, $tokenData := .Tokens}} +
+ {{$token}} ({{$tokenData.Owner}}) + + + +
+ {{end}} +
+ +
+
+ + + +
+
+
+
+ + {{if .IsAdmin}} +
+ +
+
+ {{range $username, $user := .Users}} +
+ {{$username}} + + + +
+ {{end}} +
+
+
+ + + + + +
+
+
+
+ {{end}}