Move SignedInUser to user service and RoleType and Roles to org (#53445)

* Move SignedInUser to user service and RoleType and Roles to org

* Use go naming convention for roles

* Fix some imports and leftovers

* Fix ldap debug test

* Fix lint

* Fix lint 2

* Fix lint 3

* Fix type and not needed conversion

* Clean up messages in api tests

* Clean up api tests 2
This commit is contained in:
idafurjes
2022-08-10 11:56:48 +02:00
committed by GitHub
parent 46004037e2
commit 6afad51761
278 changed files with 1758 additions and 1543 deletions
+7 -4
View File
@@ -1,6 +1,9 @@
package dtos
import "github.com/grafana/grafana/pkg/models"
import (
"github.com/grafana/grafana/pkg/models"
"github.com/grafana/grafana/pkg/services/org"
)
// swagger:model
type UpdateDashboardACLCommand struct {
@@ -9,9 +12,9 @@ type UpdateDashboardACLCommand struct {
// swagger:model
type DashboardACLUpdateItem struct {
UserID int64 `json:"userId"`
TeamID int64 `json:"teamId"`
Role *models.RoleType `json:"role,omitempty"`
UserID int64 `json:"userId"`
TeamID int64 `json:"teamId"`
Role *org.RoleType `json:"role,omitempty"`
// Permission level
// Description:
// * `1` - View
+2 -2
View File
@@ -3,8 +3,8 @@ package dtos
import (
"time"
"github.com/grafana/grafana/pkg/models"
"github.com/grafana/grafana/pkg/services/accesscontrol"
"github.com/grafana/grafana/pkg/services/org"
)
// swagger:model
@@ -20,7 +20,7 @@ type NewApiKeyResult struct {
type ApiKeyDTO struct {
Id int64 `json:"id"`
Name string `json:"name"`
Role models.RoleType `json:"role"`
Role org.RoleType `json:"role"`
Expiration *time.Time `json:"expiration,omitempty"`
AccessControl accesscontrol.Metadata `json:"accessControl,omitempty"`
}
+5 -5
View File
@@ -1,12 +1,12 @@
package dtos
import "github.com/grafana/grafana/pkg/models"
import "github.com/grafana/grafana/pkg/services/org"
type AddInviteForm struct {
LoginOrEmail string `json:"loginOrEmail" binding:"Required"`
Name string `json:"name"`
Role models.RoleType `json:"role" binding:"Required"`
SendEmail bool `json:"sendEmail"`
LoginOrEmail string `json:"loginOrEmail" binding:"Required"`
Name string `json:"name"`
Role org.RoleType `json:"role" binding:"Required"`
SendEmail bool `json:"sendEmail"`
}
type InviteInfo struct {
+5 -4
View File
@@ -9,7 +9,8 @@ import (
"github.com/grafana/grafana/pkg/components/simplejson"
"github.com/grafana/grafana/pkg/infra/log"
"github.com/grafana/grafana/pkg/models"
"github.com/grafana/grafana/pkg/services/org"
"github.com/grafana/grafana/pkg/services/user"
"github.com/grafana/grafana/pkg/setting"
)
@@ -37,13 +38,13 @@ type CurrentUser struct {
OrgCount int `json:"orgCount"`
OrgId int64 `json:"orgId"`
OrgName string `json:"orgName"`
OrgRole models.RoleType `json:"orgRole"`
OrgRole org.RoleType `json:"orgRole"`
IsGrafanaAdmin bool `json:"isGrafanaAdmin"`
GravatarUrl string `json:"gravatarUrl"`
Timezone string `json:"timezone"`
WeekStart string `json:"weekStart"`
Locale string `json:"locale"`
HelpFlags1 models.HelpFlags1 `json:"helpFlags1"`
HelpFlags1 user.HelpFlags1 `json:"helpFlags1"`
HasEditPermissionInFolders bool `json:"hasEditPermissionInFolders"`
Permissions UserPermissionsMap `json:"permissions,omitempty"`
}
@@ -120,7 +121,7 @@ func GetGravatarUrlWithDefault(text string, defaultText string) string {
return GetGravatarUrl(text)
}
func IsHiddenUser(userLogin string, signedInUser *models.SignedInUser, cfg *setting.Cfg) bool {
func IsHiddenUser(userLogin string, signedInUser *user.SignedInUser, cfg *setting.Cfg) bool {
if userLogin == "" || signedInUser.IsGrafanaAdmin || userLogin == signedInUser.Login {
return false
}
+7 -7
View File
@@ -3,7 +3,7 @@ package dtos
import (
"testing"
"github.com/grafana/grafana/pkg/models"
"github.com/grafana/grafana/pkg/services/user"
"github.com/grafana/grafana/pkg/setting"
"github.com/stretchr/testify/assert"
)
@@ -17,14 +17,14 @@ func TestIsHiddenUser(t *testing.T) {
testcases := []struct {
desc string
userLogin string
signedInUser *models.SignedInUser
signedInUser *user.SignedInUser
hiddenUsers map[string]struct{}
expected bool
}{
{
desc: "non-server admin user should see non-hidden user",
userLogin: "user",
signedInUser: &models.SignedInUser{
signedInUser: &user.SignedInUser{
IsGrafanaAdmin: false,
Login: "admin",
},
@@ -34,7 +34,7 @@ func TestIsHiddenUser(t *testing.T) {
{
desc: "non-server admin user should not see hidden user",
userLogin: "user",
signedInUser: &models.SignedInUser{
signedInUser: &user.SignedInUser{
IsGrafanaAdmin: false,
Login: "admin",
},
@@ -44,7 +44,7 @@ func TestIsHiddenUser(t *testing.T) {
{
desc: "non-server admin user should see himself, even if he's hidden",
userLogin: "admin",
signedInUser: &models.SignedInUser{
signedInUser: &user.SignedInUser{
IsGrafanaAdmin: false,
Login: "admin",
},
@@ -56,7 +56,7 @@ func TestIsHiddenUser(t *testing.T) {
{
desc: "server admin user should see hidden user",
userLogin: "user",
signedInUser: &models.SignedInUser{
signedInUser: &user.SignedInUser{
IsGrafanaAdmin: true,
Login: "admin",
},
@@ -66,7 +66,7 @@ func TestIsHiddenUser(t *testing.T) {
{
desc: "server admin user should see non-hidden user",
userLogin: "user",
signedInUser: &models.SignedInUser{
signedInUser: &user.SignedInUser{
IsGrafanaAdmin: true,
Login: "admin",
},