class IceCube::Validations::MonthlyInterval::Validation
Attributes
Public Class Methods
Source
# File lib/ice_cube/validations/monthly_interval.rb, line 16 def initialize(interval) @interval = interval end
Public Instance Methods
Source
# File lib/ice_cube/validations/monthly_interval.rb, line 40 def build_hash(builder) builder[:interval] = interval end
Source
# File lib/ice_cube/validations/monthly_interval.rb, line 44 def build_ical(builder) builder["FREQ"] << "MONTHLY" builder["INTERVAL"] << interval unless interval == 1 end
Source
# File lib/ice_cube/validations/monthly_interval.rb, line 36 def build_s(builder) builder.base = IceCube::I18n.t("ice_cube.each_month", count: interval) end
Source
# File lib/ice_cube/validations/monthly_interval.rb, line 24 def dst_adjust? true end
Source
# File lib/ice_cube/validations/monthly_interval.rb, line 28 def validate(step_time, start_time) t0, t1 = start_time, step_time months = (t1.month - t0.month) + (t1.year - t0.year) * 12 offset = (months % interval).nonzero? interval - offset if offset end