lib/watchmonkey_cli/helper.rb in watchmonkey_cli-1.6 vs lib/watchmonkey_cli/helper.rb in watchmonkey_cli-1.7
- old
+ new
@@ -13,7 +13,50 @@
end
def human_number(n)
n.to_s.reverse.gsub(/...(?=.)/,'\&,').reverse
end
+
+ def human_seconds secs
+ secs = secs.to_i
+ t_minute = 60
+ t_hour = t_minute * 60
+ t_day = t_hour * 24
+ t_week = t_day * 7
+ t_month = t_day * 30
+ t_year = t_month * 12
+ "".tap do |r|
+ if secs >= t_year
+ r << "#{secs / t_year}y "
+ secs = secs % t_year
+ end
+
+ if secs >= t_month
+ r << "#{secs / t_month}m "
+ secs = secs % t_month
+ end
+
+ if secs >= t_week
+ r << "#{secs / t_week}w "
+ secs = secs % t_week
+ end
+
+ if secs >= t_day || !r.blank?
+ r << "#{secs / t_day}d "
+ secs = secs % t_day
+ end
+
+ if secs >= t_hour || !r.blank?
+ r << "#{secs / t_hour}h "
+ secs = secs % t_hour
+ end
+
+ if secs >= t_minute || !r.blank?
+ r << "#{secs / t_minute}m "
+ secs = secs % t_minute
+ end
+
+ r << "#{secs}s" unless r.include?("d")
+ end.strip
+ end
end
end