added gravatar

This commit is contained in:
Torkel Ödegaard
2014-09-22 10:46:56 +02:00
parent ed8f5dbd22
commit b0b77d667c
15 changed files with 212 additions and 23 deletions
+20 -5
View File
@@ -1,10 +1,15 @@
package api
import "github.com/gin-gonic/gin"
import (
"github.com/gin-gonic/gin"
"github.com/torkelo/grafana-pro/pkg/models"
log "github.com/alecthomas/log4go"
)
func init() {
addRoutes(func(self *HttpServer) {
self.router.GET("/login/*_", self.index)
self.router.GET("/login", self.index)
self.router.POST("/login", self.loginPost)
self.router.POST("/logout", self.logoutPost)
})
@@ -35,9 +40,7 @@ func (self *HttpServer) loginPost(c *gin.Context) {
return
}
session, _ := sessionStore.Get(c.Request, "grafana-session")
session.Values["accountId"] = account.Id
session.Save(c.Request, c.Writer)
loginUserWithAccount(account, c)
var resp = &LoginResultDto{}
resp.Status = "Logged in"
@@ -46,6 +49,18 @@ func (self *HttpServer) loginPost(c *gin.Context) {
c.JSON(200, resp)
}
func loginUserWithAccount(account *models.Account, c *gin.Context) {
if account == nil {
log.Error("Account login with nil account")
}
session, err := sessionStore.Get(c.Request, "grafana-session")
if err != nil {
log.Error("Failed to get session %v", err)
}
session.Values["accountId"] = account.Id
session.Save(c.Request, c.Writer)
}
func (self *HttpServer) logoutPost(c *gin.Context) {
session, _ := sessionStore.Get(c.Request, "grafana-session")
session.Values = nil