add pagination for admin api get orgs and fix only list public orgs bug (#7742)
This commit is contained in:
parent
7b2a39c78b
commit
5b902e2368
3 changed files with 27 additions and 4 deletions
|
@ -1409,9 +1409,7 @@ type SearchUserOptions struct {
|
||||||
}
|
}
|
||||||
|
|
||||||
func (opts *SearchUserOptions) toConds() builder.Cond {
|
func (opts *SearchUserOptions) toConds() builder.Cond {
|
||||||
|
var cond builder.Cond = builder.Eq{"type": opts.Type}
|
||||||
var cond = builder.NewCond()
|
|
||||||
cond = cond.And(builder.Eq{"type": opts.Type})
|
|
||||||
|
|
||||||
if len(opts.Keyword) > 0 {
|
if len(opts.Keyword) > 0 {
|
||||||
lowerKeyword := strings.ToLower(opts.Keyword)
|
lowerKeyword := strings.ToLower(opts.Keyword)
|
||||||
|
|
|
@ -82,6 +82,15 @@ func GetAllOrgs(ctx *context.APIContext) {
|
||||||
// summary: List all organizations
|
// summary: List all organizations
|
||||||
// produces:
|
// produces:
|
||||||
// - application/json
|
// - application/json
|
||||||
|
// parameters:
|
||||||
|
// - name: page
|
||||||
|
// in: query
|
||||||
|
// description: page number of results to return (1-based)
|
||||||
|
// type: integer
|
||||||
|
// - name: limit
|
||||||
|
// in: query
|
||||||
|
// description: page size of results, maximum page size is 50
|
||||||
|
// type: integer
|
||||||
// responses:
|
// responses:
|
||||||
// "200":
|
// "200":
|
||||||
// "$ref": "#/responses/OrganizationList"
|
// "$ref": "#/responses/OrganizationList"
|
||||||
|
@ -90,7 +99,9 @@ func GetAllOrgs(ctx *context.APIContext) {
|
||||||
users, _, err := models.SearchUsers(&models.SearchUserOptions{
|
users, _, err := models.SearchUsers(&models.SearchUserOptions{
|
||||||
Type: models.UserTypeOrganization,
|
Type: models.UserTypeOrganization,
|
||||||
OrderBy: models.SearchOrderByAlphabetically,
|
OrderBy: models.SearchOrderByAlphabetically,
|
||||||
PageSize: -1,
|
Page: ctx.QueryInt("page"),
|
||||||
|
PageSize: convert.ToCorrectPageSize(ctx.QueryInt("limit")),
|
||||||
|
Private: true,
|
||||||
})
|
})
|
||||||
if err != nil {
|
if err != nil {
|
||||||
ctx.Error(500, "SearchOrganizations", err)
|
ctx.Error(500, "SearchOrganizations", err)
|
||||||
|
|
|
@ -33,6 +33,20 @@
|
||||||
],
|
],
|
||||||
"summary": "List all organizations",
|
"summary": "List all organizations",
|
||||||
"operationId": "adminGetAllOrgs",
|
"operationId": "adminGetAllOrgs",
|
||||||
|
"parameters": [
|
||||||
|
{
|
||||||
|
"type": "integer",
|
||||||
|
"description": "page number of results to return (1-based)",
|
||||||
|
"name": "page",
|
||||||
|
"in": "query"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "integer",
|
||||||
|
"description": "page size of results, maximum page size is 50",
|
||||||
|
"name": "limit",
|
||||||
|
"in": "query"
|
||||||
|
}
|
||||||
|
],
|
||||||
"responses": {
|
"responses": {
|
||||||
"200": {
|
"200": {
|
||||||
"$ref": "#/responses/OrganizationList"
|
"$ref": "#/responses/OrganizationList"
|
||||||
|
|
Reference in a new issue