1 module ActiveSupport
#:nodoc:
2 module CoreExtensions
#:nodoc:
3 module Numeric
#:nodoc:
5 # Assumes self represents an offset from UTC in seconds (as returned from Time#utc_offset)
6 # and turns this into an +HH:MM formatted string. Example:
8 # -21_600.to_utc_offset_s # => "-06:00"
9 def to_utc_offset_s(colon
=true)
11 sign
= (seconds
< 0 ? -1 : 1)
12 hours
= seconds
.abs
/ 3600
13 minutes
= (seconds
.abs
% 3600) / 60
14 "%+03d%s%02d" % [ hours
* sign
, colon
? ":" : "", minutes
]