summaryrefslogtreecommitdiff
path: root/human.go
diff options
context:
space:
mode:
Diffstat (limited to 'human.go')
-rw-r--r--human.go48
1 files changed, 34 insertions, 14 deletions
diff --git a/human.go b/human.go
index 02dc588..0ace136 100644
--- a/human.go
+++ b/human.go
@@ -115,15 +115,25 @@ func (d *Droplet) SprintHeader() string {
switch d.Current.State {
case DropletState_ON:
- dur := time.Since(d.Current.OnSince.AsTime()) // time since 'ON'
- header += fmt.Sprintf(" (on :%3s)", FormatDuration(dur))
+ var dur string
+ if d.Current.OnSince != nil {
+ dur = ""
+ } else {
+ t := time.Since(d.Current.OnSince.AsTime()) // time since 'OFF'
+ dur = FormatDuration(t)
+ }
+ header += fmt.Sprintf(" (on :%3s)", dur)
case DropletState_OFF:
- // everything is as it should be with this vm
- dur := time.Since(d.Current.OffSince.AsTime()) // time since 'OFF'
- header += fmt.Sprintf(" (off:%3s)", FormatDuration(dur))
+ var dur string
+ if d.Current.OffSince != nil {
+ dur = ""
+ } else {
+ t := time.Since(d.Current.OffSince.AsTime()) // time since 'OFF'
+ dur = FormatDuration(t)
+ }
+ header += fmt.Sprintf(" (off:%3s)", dur)
default:
- dur := time.Since(d.Current.OffSince.AsTime()) // use 'OFF' here?
- header += fmt.Sprintf(" (?? :%3s)", FormatDuration(dur))
+ header += fmt.Sprintf(" (?? :%3s)", "")
}
return header
}
@@ -143,15 +153,25 @@ func (d *Droplet) SprintDumpHeader() string {
switch d.Current.State {
case DropletState_ON:
- dur := time.Since(d.Current.OnSince.AsTime()) // time since 'ON'
- header += fmt.Sprintf(" (on :%3s)", FormatDuration(dur))
+ var dur string
+ if d.Current.OnSince != nil {
+ dur = ""
+ } else {
+ t := time.Since(d.Current.OnSince.AsTime()) // time since 'ON'
+ dur = FormatDuration(t)
+ }
+ header += fmt.Sprintf(" (on :%3s)", dur)
case DropletState_OFF:
- // everything is as it should be with this vm
- dur := time.Since(d.Current.OffSince.AsTime()) // time since 'OFF'
- header += fmt.Sprintf(" (off:%3s)", FormatDuration(dur))
+ var dur string
+ if d.Current.OffSince != nil {
+ dur = ""
+ } else {
+ t := time.Since(d.Current.OffSince.AsTime()) // time since 'OFF'
+ dur = FormatDuration(t)
+ }
+ header += fmt.Sprintf(" (off:%3s)", dur)
default:
- dur := time.Since(d.Current.OffSince.AsTime()) // use 'OFF' here?
- header += fmt.Sprintf(" (?? :%3s)", FormatDuration(dur))
+ header += fmt.Sprintf(" (?? :%3s)", "")
}
return header
}