Merge branch 'preferences' of github.com:grafana/grafana into preferences

This commit is contained in:
Torkel Ödegaard
2016-03-15 22:15:27 +01:00
7 changed files with 86 additions and 38 deletions
+2 -1
View File
@@ -96,7 +96,6 @@ func Register(r *macaron.Macaron) {
r.Delete("/stars/dashboard/:id", wrap(UnstarDashboard))
r.Put("/password", bind(m.ChangeUserPasswordCommand{}), wrap(ChangeUserPassword))
r.Get("/quotas", wrap(GetUserQuotas))
r.Combo("/prefs").Get(GetUserPreferences).Put(bind(m.SavePreferencesCommand{}), wrap(SaveUserPreferences))
})
// users (admin permission required)
@@ -161,6 +160,8 @@ func Register(r *macaron.Macaron) {
r.Delete("/:id", wrap(DeleteApiKey))
}, reqOrgAdmin)
r.Combo("/preferences").Get(GetPreferences).Put(bind(m.SavePreferencesCommand{}), wrap(SavePreferences))
// Data sources
r.Group("/datasources", func() {
r.Get("/", GetDataSources)
+12 -11
View File
@@ -7,32 +7,33 @@ import (
)
// PUT /api/user/prefs
func SaveUserPreferences(c *middleware.Context, cmd m.SavePreferencesCommand) Response {
func SavePreferences(c *middleware.Context, cmd m.SavePreferencesCommand) Response {
cmd.PrefId = c.UserId
cmd.PrefType = `user`
cmd.UserId = c.UserId
cmd.OrgId = c.OrgId
if err := bus.Dispatch(&cmd); err != nil {
return ApiError(500, "Failed to saved user preferences", err)
return ApiError(500, "Failed to save preferences", err)
}
return ApiSuccess("User preferences saved")
return ApiSuccess("Preferences saved")
}
// GET /api/user/prefs
func GetUserPreferences(c *middleware.Context) {
func GetPreferences(c *middleware.Context) {
query := m.GetPreferencesQuery{PrefId: c.UserId, PrefType: `user`}
query := m.GetPreferencesQuery{UserId: c.UserId, OrgId: c.OrgId}
if err := bus.Dispatch(&query); err != nil {
c.JsonApiErr(500, "Failed to get preferences for user", err)
c.JsonApiErr(500, "Failed to get preferences", err)
}
dto := m.PreferencesDTO{
PrefId: query.Result.PrefId,
PrefType: query.Result.PrefType,
PrefData: query.Result.PrefData,
Id: query.Result.Id,
UserId: query.Result.UserId,
OrgId: query.Result.OrgId,
Preference: query.Result.Preference,
}
c.JSON(200, dto)