|
|
@@ -158,7 +158,14 @@ func PostDashboard(c *middleware.Context, cmd m.SaveDashboardCommand) Response {
|
|
|
|
|
|
dash := cmd.GetDashboardModel()
|
|
|
|
|
|
- guardian := guardian.NewDashboardGuardian(dash.Id, c.OrgId, c.SignedInUser)
|
|
|
+ dashId := dash.Id
|
|
|
+
|
|
|
+ // if new dashboard, use parent folder permissions instead
|
|
|
+ if dashId == 0 {
|
|
|
+ dashId = cmd.FolderId
|
|
|
+ }
|
|
|
+
|
|
|
+ guardian := guardian.NewDashboardGuardian(dashId, c.OrgId, c.SignedInUser)
|
|
|
if canSave, err := guardian.CanSave(); err != nil || !canSave {
|
|
|
return dashboardGuardianResponse(err)
|
|
|
}
|