routes: sort repo index by last idle

This commit is contained in:
Anirudh Oppiliappan 2022-12-18 11:19:14 +05:30
parent 7fe98772b0
commit 85d1bf7355
No known key found for this signature in database
GPG key ID: 8A93F96F78C5D4C4

View file

@ -6,6 +6,8 @@ import (
"net/http" "net/http"
"os" "os"
"path/filepath" "path/filepath"
"sort"
"time"
"github.com/alexedwards/flow" "github.com/alexedwards/flow"
"github.com/dustin/go-humanize" "github.com/dustin/go-humanize"
@ -25,7 +27,10 @@ func (d *deps) Index(w http.ResponseWriter, r *http.Request) {
return return
} }
type info struct{ Name, Desc, Idle string } type info struct {
Name, Desc, Idle string
d time.Time
}
infos := []info{} infos := []info{}
@ -51,9 +56,14 @@ func (d *deps) Index(w http.ResponseWriter, r *http.Request) {
Name: dir.Name(), Name: dir.Name(),
Desc: desc, Desc: desc,
Idle: humanize.Time(c.Author.When), Idle: humanize.Time(c.Author.When),
d: c.Author.When,
}) })
} }
sort.Slice(infos, func(i, j int) bool {
return infos[j].d.Before(infos[i].d)
})
tpath := filepath.Join(d.c.Dirs.Templates, "*") tpath := filepath.Join(d.c.Dirs.Templates, "*")
t := template.Must(template.ParseGlob(tpath)) t := template.Must(template.ParseGlob(tpath))