mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
Chore move Filter to user service (#53588)
This commit is contained in:
@@ -2,26 +2,26 @@ package filters
|
||||
|
||||
import (
|
||||
"github.com/grafana/grafana/pkg/infra/log"
|
||||
"github.com/grafana/grafana/pkg/models"
|
||||
"github.com/grafana/grafana/pkg/services/user"
|
||||
)
|
||||
|
||||
const activeLast30Days = "activeLast30Days"
|
||||
|
||||
type OSSSearchUserFilter struct {
|
||||
filters map[string]models.FilterHandler
|
||||
filters map[string]user.FilterHandler
|
||||
}
|
||||
|
||||
var fltlog = log.New("filters")
|
||||
|
||||
func ProvideOSSSearchUserFilter() *OSSSearchUserFilter {
|
||||
filters := make(map[string]models.FilterHandler)
|
||||
filters := make(map[string]user.FilterHandler)
|
||||
filters[activeLast30Days] = NewActiveLast30DaysFilter
|
||||
return &OSSSearchUserFilter{
|
||||
filters: filters,
|
||||
}
|
||||
}
|
||||
|
||||
func (o *OSSSearchUserFilter) GetFilter(filterName string, params []string) models.Filter {
|
||||
func (o *OSSSearchUserFilter) GetFilter(filterName string, params []string) user.Filter {
|
||||
f, ok := o.filters[filterName]
|
||||
if !ok || len(params) == 0 {
|
||||
return nil
|
||||
@@ -34,6 +34,6 @@ func (o *OSSSearchUserFilter) GetFilter(filterName string, params []string) mode
|
||||
return filter
|
||||
}
|
||||
|
||||
func (o *OSSSearchUserFilter) GetFilterList() map[string]models.FilterHandler {
|
||||
func (o *OSSSearchUserFilter) GetFilterList() map[string]user.FilterHandler {
|
||||
return o.filters
|
||||
}
|
||||
|
@@ -4,14 +4,14 @@ import (
|
||||
"strconv"
|
||||
"time"
|
||||
|
||||
"github.com/grafana/grafana/pkg/models"
|
||||
"github.com/grafana/grafana/pkg/services/user"
|
||||
)
|
||||
|
||||
type ActiveLast30DaysFilter struct {
|
||||
active bool
|
||||
}
|
||||
|
||||
func NewActiveLast30DaysFilter(params []string) (models.Filter, error) {
|
||||
func NewActiveLast30DaysFilter(params []string) (user.Filter, error) {
|
||||
active, err := strconv.ParseBool(params[0])
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@@ -19,21 +19,21 @@ func NewActiveLast30DaysFilter(params []string) (models.Filter, error) {
|
||||
return &ActiveLast30DaysFilter{active: active}, nil
|
||||
}
|
||||
|
||||
func (a *ActiveLast30DaysFilter) WhereCondition() *models.WhereCondition {
|
||||
func (a *ActiveLast30DaysFilter) WhereCondition() *user.WhereCondition {
|
||||
if !a.active {
|
||||
return nil
|
||||
}
|
||||
return &models.WhereCondition{
|
||||
return &user.WhereCondition{
|
||||
Condition: "last_seen_at > ?",
|
||||
Params: a.whereParams(),
|
||||
}
|
||||
}
|
||||
|
||||
func (a *ActiveLast30DaysFilter) JoinCondition() *models.JoinCondition {
|
||||
func (a *ActiveLast30DaysFilter) JoinCondition() *user.JoinCondition {
|
||||
return nil
|
||||
}
|
||||
|
||||
func (a *ActiveLast30DaysFilter) InCondition() *models.InCondition {
|
||||
func (a *ActiveLast30DaysFilter) InCondition() *user.InCondition {
|
||||
return nil
|
||||
}
|
||||
|
||||
|
@@ -8,6 +8,7 @@ import (
|
||||
"github.com/grafana/grafana/pkg/models"
|
||||
"github.com/grafana/grafana/pkg/services/login"
|
||||
"github.com/grafana/grafana/pkg/services/sqlstore"
|
||||
"github.com/grafana/grafana/pkg/services/user"
|
||||
)
|
||||
|
||||
type Service interface {
|
||||
@@ -17,10 +18,10 @@ type Service interface {
|
||||
|
||||
type OSSService struct {
|
||||
sqlStore sqlstore.Store
|
||||
searchUserFilter models.SearchUserFilter
|
||||
searchUserFilter user.SearchUserFilter
|
||||
}
|
||||
|
||||
func ProvideUsersService(sqlStore sqlstore.Store, searchUserFilter models.SearchUserFilter) *OSSService {
|
||||
func ProvideUsersService(sqlStore sqlstore.Store, searchUserFilter user.SearchUserFilter) *OSSService {
|
||||
return &OSSService{sqlStore: sqlStore, searchUserFilter: searchUserFilter}
|
||||
}
|
||||
|
||||
@@ -75,7 +76,7 @@ func (s *OSSService) SearchUser(c *models.ReqContext) (*models.SearchUsersQuery,
|
||||
}
|
||||
|
||||
searchQuery := c.Query("query")
|
||||
filters := make([]models.Filter, 0)
|
||||
filters := make([]user.Filter, 0)
|
||||
for filterName := range s.searchUserFilter.GetFilterList() {
|
||||
filter := s.searchUserFilter.GetFilter(filterName, c.QueryStrings(filterName))
|
||||
if filter != nil {
|
||||
|
Reference in New Issue
Block a user