Sort repos in issues dashboard sidebar (#3072)

* Sort repos in issues dashboard sidebar

* Sort repos by name
release/v1.15
Ethan Koenig 2017-12-03 20:39:01 -08:00 committed by Lunny Xiao
parent 3c1b1ca78e
commit c0a7899416
2 changed files with 14 additions and 0 deletions

View File

@ -16,6 +16,18 @@ import (
// RepositoryList contains a list of repositories // RepositoryList contains a list of repositories
type RepositoryList []*Repository type RepositoryList []*Repository
func (repos RepositoryList) Len() int {
return len(repos)
}
func (repos RepositoryList) Less(i, j int) bool {
return repos[i].FullName() < repos[j].FullName()
}
func (repos RepositoryList) Swap(i, j int) {
repos[i], repos[j] = repos[j], repos[i]
}
// RepositoryListOfMap make list from values of map // RepositoryListOfMap make list from values of map
func RepositoryListOfMap(repoMap map[int64]*Repository) RepositoryList { func RepositoryListOfMap(repoMap map[int64]*Repository) RepositoryList {
return RepositoryList(valuesRepository(repoMap)) return RepositoryList(valuesRepository(repoMap))

View File

@ -7,6 +7,7 @@ package user
import ( import (
"bytes" "bytes"
"fmt" "fmt"
"sort"
"github.com/Unknwon/com" "github.com/Unknwon/com"
"github.com/Unknwon/paginater" "github.com/Unknwon/paginater"
@ -302,6 +303,7 @@ func Issues(ctx *context.Context) {
} }
showRepos := models.RepositoryListOfMap(showReposMap) showRepos := models.RepositoryListOfMap(showReposMap)
sort.Sort(showRepos)
if err = showRepos.LoadAttributes(); err != nil { if err = showRepos.LoadAttributes(); err != nil {
ctx.Handle(500, "LoadAttributes", fmt.Errorf("%v", err)) ctx.Handle(500, "LoadAttributes", fmt.Errorf("%v", err))
return return