Procházet zdrojové kódy

Updated connhandler.go

sort the date in user friendly order instead of A-Z ASC order
AY před 4 roky
rodič
revize
346b28ae63
1 změnil soubory, kde provedl 25 přidání a 0 odebrání
  1. 25 0
      mod/auth/authlogger/handlers.go

+ 25 - 0
mod/auth/authlogger/handlers.go

@@ -2,13 +2,38 @@ package authlogger
 
 import (
 	"encoding/json"
+	"log"
 	"net/http"
 	"regexp"
+	"sort"
+	"time"
 )
 
+type summaryDate []string
+
+func (s summaryDate) Len() int {
+	return len(s)
+}
+func (s summaryDate) Swap(i, j int) {
+	s[i], s[j] = s[j], s[i]
+}
+func (s summaryDate) Less(i, j int) bool {
+	layout := "Jan-2006"
+	timei, err := time.Parse(layout, s[i])
+	if err != nil {
+		log.Println(err)
+	}
+	timej, err := time.Parse(layout, s[j])
+	if err != nil {
+		log.Println(err)
+	}
+	return timei.Unix() < timej.Unix()
+}
+
 //Handle of listing of the logger index (months)
 func (l *Logger) HandleIndexListing(w http.ResponseWriter, r *http.Request) {
 	indexes := l.ListSummary()
+	sort.Sort(summaryDate(indexes))
 	js, err := json.Marshal(indexes)
 	if err != nil {
 		sendErrorResponse(w, err.Error())