aboutsummaryrefslogtreecommitdiffstats
path: root/utils.go
diff options
context:
space:
mode:
Diffstat (limited to 'utils.go')
-rw-r--r--utils.go17
1 files changed, 17 insertions, 0 deletions
diff --git a/utils.go b/utils.go
index 49fdc5b..2a47905 100644
--- a/utils.go
+++ b/utils.go
@@ -4,7 +4,9 @@ import (
"crypto/md5"
"crypto/rand"
"encoding/hex"
+ "fmt"
"net/http"
+ "time"
)
func randomToken(length int) string {
@@ -43,3 +45,18 @@ func (app *App) SetCookie(w http.ResponseWriter, name string, v interface{}, exp
}
http.SetCookie(w, cookie)
}
+
+func ago(t time.Time) string {
+ delta := time.Since(t)
+ if delta < time.Minute {
+ return fmt.Sprintf("%ds ago", int(delta/time.Second))
+ } else if delta < time.Hour {
+ return fmt.Sprintf("%dm ago", int(delta/time.Minute))
+ } else if delta < 24*time.Hour {
+ return fmt.Sprintf("%dh ago", int(delta/time.Hour))
+ } else if delta < 5*24*time.Hour {
+ return fmt.Sprintf("%dd ago", int(delta/(24*time.Hour)))
+ } else {
+ return t.Format("Jan 2")
+ }
+}