2015-02-02 11:32:32 +01:00
|
|
|
package api
|
|
|
|
|
|
|
|
|
|
import (
|
2015-02-05 10:37:13 +01:00
|
|
|
"github.com/grafana/grafana/pkg/bus"
|
2020-03-04 12:57:20 +01:00
|
|
|
"github.com/grafana/grafana/pkg/models"
|
2015-02-02 11:32:32 +01:00
|
|
|
)
|
|
|
|
|
|
2020-03-04 12:57:20 +01:00
|
|
|
func StarDashboard(c *models.ReqContext) Response {
|
2015-05-13 09:58:45 +02:00
|
|
|
if !c.IsSignedIn {
|
2018-03-22 22:13:46 +01:00
|
|
|
return Error(412, "You need to sign in to star dashboards", nil)
|
2015-05-13 09:58:45 +02:00
|
|
|
}
|
|
|
|
|
|
2020-03-04 12:57:20 +01:00
|
|
|
cmd := models.StarDashboardCommand{UserId: c.UserId, DashboardId: c.ParamsInt64(":id")}
|
2015-02-02 11:32:32 +01:00
|
|
|
|
|
|
|
|
if cmd.DashboardId <= 0 {
|
2018-03-22 22:13:46 +01:00
|
|
|
return Error(400, "Missing dashboard id", nil)
|
2015-02-02 11:32:32 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if err := bus.Dispatch(&cmd); err != nil {
|
2018-03-22 22:13:46 +01:00
|
|
|
return Error(500, "Failed to star dashboard", err)
|
2015-02-02 11:32:32 +01:00
|
|
|
}
|
|
|
|
|
|
2018-03-22 22:13:46 +01:00
|
|
|
return Success("Dashboard starred!")
|
2015-02-02 11:32:32 +01:00
|
|
|
}
|
|
|
|
|
|
2020-03-04 12:57:20 +01:00
|
|
|
func UnstarDashboard(c *models.ReqContext) Response {
|
|
|
|
|
cmd := models.UnstarDashboardCommand{UserId: c.UserId, DashboardId: c.ParamsInt64(":id")}
|
2015-02-02 11:32:32 +01:00
|
|
|
|
|
|
|
|
if cmd.DashboardId <= 0 {
|
2018-03-22 22:13:46 +01:00
|
|
|
return Error(400, "Missing dashboard id", nil)
|
2015-02-02 11:32:32 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if err := bus.Dispatch(&cmd); err != nil {
|
2018-03-22 22:13:46 +01:00
|
|
|
return Error(500, "Failed to unstar dashboard", err)
|
2015-02-02 11:32:32 +01:00
|
|
|
}
|
|
|
|
|
|
2018-03-22 22:13:46 +01:00
|
|
|
return Success("Dashboard unstarred")
|
2015-02-02 11:32:32 +01:00
|
|
|
}
|