mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
dashboard folders acl work
This commit is contained in:
@@ -11,6 +11,7 @@ func init() {
|
||||
bus.AddHandler("sql", AddOrUpdateDashboardPermission)
|
||||
bus.AddHandler("sql", RemoveDashboardPermission)
|
||||
bus.AddHandler("sql", GetDashboardPermissions)
|
||||
bus.AddHandler("sql", GetDashboardAcl)
|
||||
}
|
||||
|
||||
func AddOrUpdateDashboardPermission(cmd *m.AddOrUpdateDashboardPermissionCommand) error {
|
||||
@@ -85,6 +86,28 @@ func RemoveDashboardPermission(cmd *m.RemoveDashboardPermissionCommand) error {
|
||||
})
|
||||
}
|
||||
|
||||
func GetDashboardAcl(query *m.GetDashboardAclQuery) error {
|
||||
rawSQL := `SELECT
|
||||
da.id,
|
||||
da.org_id,
|
||||
da.id,
|
||||
da.dashboard_id,
|
||||
da.user_id,
|
||||
da.user_group_id,
|
||||
da.permissions,
|
||||
da.created,
|
||||
da.updated,
|
||||
FROM` + dialect.Quote("dashboard_acl") + ` as da
|
||||
WHERE dashboard_id IN (
|
||||
SELECT id FROM dashboard where id = ?
|
||||
UNION
|
||||
SELECT parent_id from dashboard where id = ?
|
||||
)`
|
||||
|
||||
query.Result = make([]*m.DashboardAcl, 0)
|
||||
return x.SQL(rawSQL, query.DashboardId).Find(&query.Result)
|
||||
}
|
||||
|
||||
func GetDashboardPermissions(query *m.GetDashboardPermissionsQuery) error {
|
||||
rawSQL := `SELECT
|
||||
da.id,
|
||||
|
||||
Reference in New Issue
Block a user