Sha256: 0aeb1058b2fb74953dcce55f4a8c200bf083e7359ec42517993c2ac519347586
Contents?: true
Size: 762 Bytes
Versions: 6
Compression:
Stored size: 762 Bytes
Contents
module Vmail DIVIDER_WIDTH = 46 UNITS = [:b, :k, :M, :G].freeze module Helpers def retry_if_needed res = nil 3.times do res = yield break if res end res end # borrowed from ActionView/Helpers def number_to_human_size(number) if number.to_i < 1024 "< 1k" # round up to 1kh else max_exp = UNITS.size - 1 exponent = (Math.log(number) / Math.log(1024)).to_i # Convert to base 1024 exponent = max_exp if exponent > max_exp # we need this to avoid overflow for the highest unit number /= 1024 ** exponent unit = UNITS[exponent] "#{number}#{unit}" end end def divider(str) str * DIVIDER_WIDTH end end end
Version data entries
6 entries across 6 versions & 1 rubygems