summaryrefslogtreecommitdiffstats
path: root/pkg/utils
diff options
context:
space:
mode:
authorJesse Duffield <jessedduffield@gmail.com>2020-03-26 22:51:24 +1100
committerJesse Duffield <jessedduffield@gmail.com>2020-03-28 11:59:45 +1100
commitfbbd16bd829d6f2a8797453f2d05856b33d34d44 (patch)
treec49e5347d0cfa7dd7706724c8cc03942aece641f /pkg/utils
parentbd2c1eef53fbc6d76a34c6cf5c340e7a2eb5851b (diff)
use reflogs from state to work out branch recencies
Diffstat (limited to 'pkg/utils')
-rw-r--r--pkg/utils/date.go21
1 files changed, 21 insertions, 0 deletions
diff --git a/pkg/utils/date.go b/pkg/utils/date.go
new file mode 100644
index 000000000..7f8f8f8a5
--- /dev/null
+++ b/pkg/utils/date.go
@@ -0,0 +1,21 @@
+package utils
+
+import (
+ "fmt"
+ "time"
+)
+
+func UnixToTimeAgo(timestamp int) string {
+ now := time.Now().Unix()
+ delta := float64(now - int64(timestamp))
+ // we go seconds, minutes, hours, days, weeks, months, years
+ conversions := []float64{60, 60, 24, 7, 4.34524, 12}
+ labels := []string{"s", "m", "h", "d", "w", "m", "y"}
+ for i, conversion := range conversions {
+ if delta < conversion {
+ return fmt.Sprintf("%d%s", int(delta), labels[i])
+ }
+ delta /= conversion
+ }
+ return fmt.Sprintf("%dy", int(delta))
+}