Sha256: d50fa83978fe3b5e3833b20d33616f102b81c3315a75304eba55ce4d6ed680b9
Contents?: true
Size: 734 Bytes
Versions: 8
Compression:
Stored size: 734 Bytes
Contents
require "time_difference" module RefinedTimeDifference refine(TimeDifference) do def humanize_higher_than(limit) limit_index = TimeDifference::TIME_COMPONENTS.index(limit) diff_parts = [] in_general.each_with_index do |array, index| part, quantity = array next if (quantity <= 0) || (limit_index < index) part = part.to_s.humanize if quantity <= 1 part = part.singularize end diff_parts << "#{quantity} #{part}" end last_part = (diff_parts.pop or "") if diff_parts.empty? return last_part else return [diff_parts.join(", "), last_part].join(" and ") end end end end
Version data entries
8 entries across 8 versions & 1 rubygems