mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
Working on login user name state
This commit is contained in:
2
grafana
2
grafana
Submodule grafana updated: 4b382e0faf...4f798cfe56
@@ -58,7 +58,13 @@ func (self *HttpServer) ListenAndServe() {
|
||||
}
|
||||
|
||||
func (self *HttpServer) index(c *gin.Context) {
|
||||
c.HTML(200, "index.html", &indexViewModel{title: "hello from go"})
|
||||
viewModel := &IndexDto{}
|
||||
login, _ := c.Get("login")
|
||||
if login != nil {
|
||||
viewModel.User.Login = login.(string)
|
||||
}
|
||||
|
||||
c.HTML(200, "index.html", viewModel)
|
||||
}
|
||||
|
||||
func CacheHeadersMiddleware() gin.HandlerFunc {
|
||||
|
||||
@@ -35,12 +35,15 @@ func (self *HttpServer) loginPost(c *gin.Context) {
|
||||
}
|
||||
|
||||
session, _ := sessionStore.Get(c.Request, "grafana-session")
|
||||
session.Values["login"] = true
|
||||
session.Values["login"] = loginModel.Email
|
||||
session.Values["accountId"] = account.DatabaseId
|
||||
|
||||
session.Save(c.Request, c.Writer)
|
||||
|
||||
c.JSON(200, gin.H{"status": "you are logged in"})
|
||||
var resp = &LoginResultDto{}
|
||||
resp.Status = "Logged in"
|
||||
resp.User.Login = account.Login
|
||||
|
||||
c.JSON(200, resp)
|
||||
}
|
||||
|
||||
func (self *HttpServer) logoutPost(c *gin.Context) {
|
||||
@@ -73,6 +76,7 @@ func (self *HttpServer) auth() gin.HandlerFunc {
|
||||
}
|
||||
|
||||
c.Set("accountId", session.Values["accountId"])
|
||||
c.Set("login", session.Values["login"])
|
||||
|
||||
session.Save(c.Request, c.Writer)
|
||||
}
|
||||
|
||||
@@ -10,8 +10,17 @@ type errorResponse struct {
|
||||
Message string `json:"message"`
|
||||
}
|
||||
|
||||
type indexViewModel struct {
|
||||
title string
|
||||
type IndexDto struct {
|
||||
User CurrentUserDto
|
||||
}
|
||||
|
||||
type CurrentUserDto struct {
|
||||
Login string `json:"login"`
|
||||
}
|
||||
|
||||
type LoginResultDto struct {
|
||||
Status string `json:"status"`
|
||||
User CurrentUserDto `json:"user"`
|
||||
}
|
||||
|
||||
func newErrorResponse(message string) *errorResponse {
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
<!DOCTYPE html>
|
||||
<!--[if IE 8]> <html class="no-js lt-ie9" lang="en"> <![endif]-->
|
||||
<!--[if gt IE 8]><!--> <html class="no-js" lang="en"> <!--<![endif]-->
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
|
||||
@@ -8,6 +7,7 @@
|
||||
|
||||
<title>Grafana</title>
|
||||
<link rel="stylesheet" href="/public/css/grafana.dark.min.css" title="Dark">
|
||||
<link rel="icon" type="image/png" href="img/fav32.png">
|
||||
<base href="/">
|
||||
|
||||
<!-- build:js app/app.js -->
|
||||
@@ -20,12 +20,11 @@
|
||||
</head>
|
||||
|
||||
<body ng-cloak ng-controller="GrafanaCtrl">
|
||||
|
||||
<link rel="stylesheet" href="/public/css/grafana.light.min.css" ng-if="grafana.style === 'light'">
|
||||
|
||||
<div class="pro-container" ng-class="{'pro-sidemenu-open': showProSideMenu}">
|
||||
<div class="pro-container" ng-class="{'pro-sidemenu-open': grafana.sidemenu}">
|
||||
|
||||
<aside class="pro-sidemenu" ng-if="showProSideMenu">
|
||||
<aside class="pro-sidemenu" ng-if="grafana.sidemenu">
|
||||
<div ng-include="'app/partials/pro/sidemenu.html'"></div>
|
||||
</aside>
|
||||
|
||||
@@ -39,4 +38,12 @@
|
||||
</div>
|
||||
|
||||
</body>
|
||||
|
||||
<script>
|
||||
window.grafanaBootData = {
|
||||
user: {
|
||||
login: [[.User.Login]]
|
||||
}
|
||||
};
|
||||
</script>
|
||||
</html>
|
||||
|
||||
Reference in New Issue
Block a user