stars.go 990 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. func StarDashboard(c *middleware.Context) Response {
  8. if !c.IsSignedIn {
  9. return ApiError(412, "You need to sign in to star dashboards", nil)
  10. }
  11. cmd := m.StarDashboardCommand{UserId: c.UserId, DashboardId: c.ParamsInt64(":id")}
  12. if cmd.DashboardId <= 0 {
  13. return ApiError(400, "Missing dashboard id", nil)
  14. }
  15. if err := bus.Dispatch(&cmd); err != nil {
  16. return ApiError(500, "Failed to star dashboard", err)
  17. }
  18. return ApiSuccess("Dashboard starred!")
  19. }
  20. func UnstarDashboard(c *middleware.Context) Response {
  21. cmd := m.UnstarDashboardCommand{UserId: c.UserId, DashboardId: c.ParamsInt64(":id")}
  22. if cmd.DashboardId <= 0 {
  23. return ApiError(400, "Missing dashboard id", nil)
  24. }
  25. if err := bus.Dispatch(&cmd); err != nil {
  26. return ApiError(500, "Failed to unstar dashboard", err)
  27. }
  28. return ApiSuccess("Dashboard unstarred")
  29. }