From 0a3c4d4a595cc7e12462dde393ed64186260f26b Mon Sep 17 00:00:00 2001
From: Yarden Shoham <git@yardenshoham.com>
Date: Wed, 17 May 2023 03:12:37 +0300
Subject: [PATCH] Fix team members API endpoint pagination (#24754)

Now it's 1-based instead of 0-based

- Fixes #24747

### Before

![image](https://github.com/go-gitea/gitea/assets/20454870/9b58ecfa-666c-4b78-bd0f-93233efeecbd)

### After

![image](https://github.com/go-gitea/gitea/assets/20454870/103b767a-e02e-4473-9f9f-5a676a61c174)

## :warning: BREAKING :warning:
Previous API consumers may have relied on the 0-based pagination of this
endpoint. The page numbering now starts at 1, as documented.

Signed-off-by: Yarden Shoham <git@yardenshoham.com>
---
 models/organization/team_user.go | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/models/organization/team_user.go b/models/organization/team_user.go
index 816daf3d34..768dc24c50 100644
--- a/models/organization/team_user.go
+++ b/models/organization/team_user.go
@@ -63,8 +63,8 @@ func GetTeamMembers(ctx context.Context, opts *SearchMembersOptions) ([]*user_mo
 				Where(builder.Eq{"team_id": opts.TeamID}),
 		)
 	}
-	if opts.PageSize > 0 && opts.Page > -1 {
-		sess = sess.Limit(opts.PageSize, opts.Page*opts.PageSize)
+	if opts.PageSize > 0 && opts.Page > 0 {
+		sess = sess.Limit(opts.PageSize, (opts.Page-1)*opts.PageSize)
 	}
 	if err := sess.OrderBy("full_name, name").Find(&members); err != nil {
 		return nil, err