mirror of
https://codeberg.org/forgejo/forgejo.git
synced 2024-11-28 12:16:17 +01:00
Fix count for commit graph last page (#8843)
* Fix count for commit graph last page * Remove used once variable * Move func to model * capitalize method name * fix error message
This commit is contained in:
parent
1f90147f39
commit
065bbddab9
3 changed files with 22 additions and 1 deletions
|
@ -248,6 +248,16 @@ func CommitChanges(repoPath string, opts CommitChangesOptions) error {
|
|||
return err
|
||||
}
|
||||
|
||||
// AllCommitsCount returns count of all commits in repository
|
||||
func AllCommitsCount(repoPath string) (int64, error) {
|
||||
stdout, err := NewCommand("rev-list", "--all", "--count").RunInDir(repoPath)
|
||||
if err != nil {
|
||||
return 0, err
|
||||
}
|
||||
|
||||
return strconv.ParseInt(strings.TrimSpace(stdout), 10, 64)
|
||||
}
|
||||
|
||||
func commitsCount(repoPath, revision, relpath string) (int64, error) {
|
||||
cmd := NewCommand("rev-list", "--count")
|
||||
cmd.AddArguments(revision)
|
||||
|
|
|
@ -46,6 +46,11 @@ type GPGSettings struct {
|
|||
|
||||
const prettyLogFormat = `--pretty=format:%H`
|
||||
|
||||
// GetAllCommitsCount returns count of all commits in repository
|
||||
func (repo *Repository) GetAllCommitsCount() (int64, error) {
|
||||
return AllCommitsCount(repo.Path)
|
||||
}
|
||||
|
||||
func (repo *Repository) parsePrettyFormatLogToList(logs []byte) (*list.List, error) {
|
||||
l := list.New()
|
||||
if len(logs) == 0 {
|
||||
|
|
|
@ -91,6 +91,12 @@ func Graph(ctx *context.Context) {
|
|||
return
|
||||
}
|
||||
|
||||
allCommitsCount, err := ctx.Repo.GitRepo.GetAllCommitsCount()
|
||||
if err != nil {
|
||||
ctx.ServerError("GetAllCommitsCount", err)
|
||||
return
|
||||
}
|
||||
|
||||
page := ctx.QueryInt("page")
|
||||
|
||||
graph, err := models.GetCommitGraph(ctx.Repo.GitRepo, page)
|
||||
|
@ -105,7 +111,7 @@ func Graph(ctx *context.Context) {
|
|||
ctx.Data["CommitCount"] = commitsCount
|
||||
ctx.Data["Branch"] = ctx.Repo.BranchName
|
||||
ctx.Data["RequireGitGraph"] = true
|
||||
ctx.Data["Page"] = context.NewPagination(int(commitsCount), setting.UI.GraphMaxCommitNum, page, 5)
|
||||
ctx.Data["Page"] = context.NewPagination(int(allCommitsCount), setting.UI.GraphMaxCommitNum, page, 5)
|
||||
ctx.HTML(200, tplGraph)
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue