From d8b90721b35de087b7c4e9d71193f3e3c0b6d78e Mon Sep 17 00:00:00 2001 From: utkarshcmu Date: Fri, 18 Dec 2015 03:38:49 -0800 Subject: [PATCH] Able to display login Id of the user in Last Updated By --- pkg/api/dashboard.go | 24 +++++++++++++++++++++--- 1 file changed, 21 insertions(+), 3 deletions(-) diff --git a/pkg/api/dashboard.go b/pkg/api/dashboard.go index d95f1c71f3e..79485fa8cca 100644 --- a/pkg/api/dashboard.go +++ b/pkg/api/dashboard.go @@ -4,7 +4,6 @@ import ( "encoding/json" "os" "path" - "strconv" "strings" "github.com/grafana/grafana/pkg/api/dtos" @@ -49,6 +48,20 @@ func GetDashboard(c *middleware.Context) { } dash := query.Result + + // Finding the last updater of the dashboard + updater := "Anonymous" + if dash.UpdatedBy != 0 { + userQuery := m.GetUserByIdQuery{Id: dash.UpdatedBy} + userErr := bus.Dispatch(&userQuery) + if userErr != nil { + updater = "Unknown" + } else { + user := userQuery.Result + updater = user.Login + } + } + dto := dtos.DashboardFullWithMeta{ Dashboard: dash.Data, Meta: dtos.DashboardMeta{ @@ -60,7 +73,7 @@ func GetDashboard(c *middleware.Context) { CanEdit: canEditDashboard(c.OrgRole), Created: dash.Created, Updated: dash.Updated, - UpdatedBy: strconv.FormatInt(dash.UpdatedBy, 10), + UpdatedBy: updater, }, } @@ -89,7 +102,12 @@ func DeleteDashboard(c *middleware.Context) { func PostDashboard(c *middleware.Context, cmd m.SaveDashboardCommand) { cmd.OrgId = c.OrgId - cmd.UpdatedBy = c.UserId + + if !c.IsSignedIn { + cmd.UpdatedBy = 0 + } else { + cmd.UpdatedBy = c.UserId + } dash := cmd.GetDashboardModel() if dash.Id == 0 {