2016-03-06 19:47:39 +08:00
|
|
|
package api
|
|
|
|
|
|
|
|
import (
|
|
|
|
"github.com/grafana/grafana/pkg/bus"
|
|
|
|
"github.com/grafana/grafana/pkg/middleware"
|
|
|
|
m "github.com/grafana/grafana/pkg/models"
|
|
|
|
)
|
|
|
|
|
|
|
|
// PUT /api/user/prefs
|
2016-03-11 22:30:05 +08:00
|
|
|
func SavePreferences(c *middleware.Context, cmd m.SavePreferencesCommand) Response {
|
2016-03-06 19:47:39 +08:00
|
|
|
|
2016-03-11 22:30:05 +08:00
|
|
|
cmd.UserId = c.UserId
|
|
|
|
cmd.OrgId = c.OrgId
|
2016-03-06 19:47:39 +08:00
|
|
|
|
|
|
|
if err := bus.Dispatch(&cmd); err != nil {
|
2016-03-11 22:30:05 +08:00
|
|
|
return ApiError(500, "Failed to saved preferences", err)
|
2016-03-06 19:47:39 +08:00
|
|
|
}
|
|
|
|
|
2016-03-11 22:30:05 +08:00
|
|
|
return ApiSuccess("Preferences saved")
|
2016-03-06 19:47:39 +08:00
|
|
|
|
|
|
|
}
|
2016-03-07 03:42:15 +08:00
|
|
|
|
2016-03-07 04:32:22 +08:00
|
|
|
// GET /api/user/prefs
|
2016-03-11 22:30:05 +08:00
|
|
|
func GetPreferences(c *middleware.Context) {
|
2016-03-07 03:42:15 +08:00
|
|
|
|
2016-03-11 22:30:05 +08:00
|
|
|
query := m.GetPreferencesQuery{UserId: c.UserId, OrgId: c.OrgId}
|
2016-03-07 03:42:15 +08:00
|
|
|
|
|
|
|
if err := bus.Dispatch(&query); err != nil {
|
2016-03-11 22:30:05 +08:00
|
|
|
c.JsonApiErr(500, "Failed to get preferences", err)
|
2016-03-07 03:42:15 +08:00
|
|
|
}
|
|
|
|
|
2016-03-07 04:32:22 +08:00
|
|
|
dto := m.PreferencesDTO{
|
2016-03-11 22:30:05 +08:00
|
|
|
Id: query.Result.Id,
|
|
|
|
UserId: query.Result.UserId,
|
|
|
|
OrgId: query.Result.OrgId,
|
|
|
|
Preference: query.Result.Preference,
|
2016-03-07 04:32:22 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
c.JSON(200, dto)
|
2016-03-07 03:42:15 +08:00
|
|
|
}
|