Enable the "limit" param in /api/search

This commit is contained in:
Thibault Chataigner 2016-06-06 13:47:45 +00:00
parent 25899b72d2
commit 3d77685108
3 changed files with 9 additions and 1 deletions

View File

@ -44,6 +44,7 @@ func searchHandler(query *Query) error {
IsStarred: query.IsStarred, IsStarred: query.IsStarred,
OrgId: query.OrgId, OrgId: query.OrgId,
DashboardIds: query.DashboardIds, DashboardIds: query.DashboardIds,
Limit: query.Limit,
} }
if err := bus.Dispatch(&dashQuery); err != nil { if err := bus.Dispatch(&dashQuery); err != nil {

View File

@ -42,6 +42,7 @@ type FindPersistedDashboardsQuery struct {
UserId int64 UserId int64
IsStarred bool IsStarred bool
DashboardIds []int DashboardIds []int
Limit int
Result HitList Result HitList
} }

View File

@ -123,6 +123,11 @@ type DashboardSearchProjection struct {
} }
func SearchDashboards(query *search.FindPersistedDashboardsQuery) error { func SearchDashboards(query *search.FindPersistedDashboardsQuery) error {
limit := query.Limit
if limit == 0 {
limit = 1000
}
var sql bytes.Buffer var sql bytes.Buffer
params := make([]interface{}, 0) params := make([]interface{}, 0)
@ -165,7 +170,8 @@ func SearchDashboards(query *search.FindPersistedDashboardsQuery) error {
params = append(params, "%"+query.Title+"%") params = append(params, "%"+query.Title+"%")
} }
sql.WriteString(fmt.Sprintf(" ORDER BY dashboard.title ASC LIMIT 1000")) sql.WriteString(fmt.Sprintf(" ORDER BY dashboard.title ASC LIMIT ?"))
params = append(params, limit)
var res []DashboardSearchProjection var res []DashboardSearchProjection