1
1
mirror of https://github.com/go-gitea/gitea synced 2025-07-22 10:18:38 +00:00

feat: support paginater on star tab of user profile. (#845)

This commit is contained in:
Bo-Yi Wu
2017-02-07 19:54:16 +08:00
committed by Lunny Xiao
parent ceae143e78
commit b13232f524
5 changed files with 64 additions and 12 deletions

View File

@@ -71,16 +71,26 @@ func (repo *Repository) GetStargazers(page int) ([]*User, error) {
}
// GetStarredRepos returns the repos the user starred.
func (u *User) GetStarredRepos(private bool) (repos []*Repository, err error) {
func (u *User) GetStarredRepos(private bool, page, pageSize int, orderBy string) (repos []*Repository, err error) {
if len(orderBy) == 0 {
orderBy = "star.id"
}
sess := x.
Join("INNER", "star", "star.repo_id = repository.id").
Where("star.uid = ?", u.ID).
Desc("star.id")
Desc(orderBy)
if !private {
sess = sess.And("is_private = ?", false)
}
if page <= 0 {
page = 1
}
sess.Limit(pageSize, (page-1)*pageSize)
repos = make([]*Repository, 0, pageSize)
if err = sess.Find(&repos); err != nil {
return
}
@@ -93,3 +103,16 @@ func (u *User) GetStarredRepos(private bool) (repos []*Repository, err error) {
return
}
// GetStarredRepoCount returns the numbers of repo the user starred.
func (u *User) GetStarredRepoCount(private bool) (int64, error) {
sess := x.
Join("INNER", "star", "star.repo_id = repository.id").
Where("star.uid = ?", u.ID)
if !private {
sess = sess.And("is_private = ?", false)
}
return sess.Count(&Repository{})
}