Fix QR codes not rendering for admin

This commit is contained in:
Anders Pitman 2020-10-27 14:51:59 -06:00
parent 51dce1876d
commit 3a705cf252
2 changed files with 16 additions and 15 deletions

View File

@ -1,7 +1,5 @@
# 31 Oct 2020 Launch List
- [ ] Anyone can delete tokens
- [ ] QR codes for admin are broken
- [ ] General security review.
- [ ] Invalid database is wiping out tunnels
- [ ] Improve SSH key download UI.

View File

@ -211,7 +211,6 @@ func (h *WebUiHandler) handleWebUiRequest(w http.ResponseWriter, r *http.Request
var tokens map[string]TokenData
var users map[string]User
qrCodes := make(map[string]template.URL)
if user.IsAdmin {
tokens = h.db.GetTokens()
@ -224,24 +223,28 @@ func (h *WebUiHandler) handleWebUiRequest(w http.ResponseWriter, r *http.Request
tokens[token] = td
}
loginUrl := fmt.Sprintf("https://%s/login?access_token=%s", h.config.WebUiDomain, token)
var png []byte
png, err := qrcode.Encode(loginUrl, qrcode.Medium, 256)
if err != nil {
w.WriteHeader(500)
h.alertDialog(w, r, err.Error(), "/#/tokens")
return
}
data := base64.StdEncoding.EncodeToString(png)
qrCodes[token] = template.URL("data:image/png;base64," + data)
}
users = make(map[string]User)
users[tokenData.Owner] = user
}
qrCodes := make(map[string]template.URL)
for token := range tokens {
loginUrl := fmt.Sprintf("https://%s/login?access_token=%s", h.config.WebUiDomain, token)
var png []byte
png, err := qrcode.Encode(loginUrl, qrcode.Medium, 256)
if err != nil {
w.WriteHeader(500)
h.alertDialog(w, r, err.Error(), "/#/tokens")
return
}
data := base64.StdEncoding.EncodeToString(png)
qrCodes[token] = template.URL("data:image/png;base64," + data)
}
indexData := IndexData{
Head: h.headHtml,
Tunnels: tunnels,