preferences.go 884 B

12345678910111213141516171819202122232425262728293031323334353637383940
  1. package api
  2. import (
  3. "github.com/grafana/grafana/pkg/bus"
  4. "github.com/grafana/grafana/pkg/middleware"
  5. m "github.com/grafana/grafana/pkg/models"
  6. )
  7. // PUT /api/user/prefs
  8. func SavePreferences(c *middleware.Context, cmd m.SavePreferencesCommand) Response {
  9. cmd.UserId = c.UserId
  10. cmd.OrgId = c.OrgId
  11. if err := bus.Dispatch(&cmd); err != nil {
  12. return ApiError(500, "Failed to save preferences", err)
  13. }
  14. return ApiSuccess("Preferences saved")
  15. }
  16. // GET /api/user/prefs
  17. func GetPreferences(c *middleware.Context) {
  18. query := m.GetPreferencesQuery{UserId: c.UserId, OrgId: c.OrgId}
  19. if err := bus.Dispatch(&query); err != nil {
  20. c.JsonApiErr(500, "Failed to get preferences", err)
  21. }
  22. dto := m.PreferencesDTO{
  23. Id: query.Result.Id,
  24. UserId: query.Result.UserId,
  25. OrgId: query.Result.OrgId,
  26. Preference: query.Result.Preference,
  27. }
  28. c.JSON(200, dto)
  29. }