Class: TZInfo::TimezonePeriod

Inherits:
Object
  • Object
show all
Defined in:
lib/icalendar/tzinfo.rb

Instance Method Summary collapse

Instance Method Details

#daylightObject



95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
# File 'lib/icalendar/tzinfo.rb', line 95

def daylight
  Icalendar::Daylight.new.tap do |day|
    if dst?
      day.timezone_name = abbreviation.to_s
      day.timezone_offset_from = start_transition.offset_from
      day.timezone_offset_to = start_transition.offset_to
      day.dtstart = start_transition.dtstart
      day.recurrence_rules = start_transition.rrule unless end_transition.nil?
    else
      day.timezone_name = abbreviation.to_s.sub("ST","DT")
      day.timezone_offset_from = end_transition.offset_from
      day.timezone_offset_to = end_transition.offset_to
      day.dtstart = end_transition.dtstart
      day.recurrence_rules = end_transition.rrule
    end
  end
end

#singleObject



131
132
133
134
135
136
137
138
# File 'lib/icalendar/tzinfo.rb', line 131

def single
  Icalendar::Standard.new.tap do |std|
    std.timezone_name = abbreviation.to_s
    std.timezone_offset_from = offset.ical_offset
    std.timezone_offset_to = offset.ical_offset
    std.dtstart = DateTime.new(1970).strftime '%Y%m%dT%H%M%S'
  end
end

#standardObject



113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
# File 'lib/icalendar/tzinfo.rb', line 113

def standard
  Icalendar::Standard.new.tap do |std|
    if dst?
      std.timezone_name = abbreviation.to_s.sub('DT', 'ST')
      std.timezone_offset_from = end_transition.offset_from
      std.timezone_offset_to = end_transition.offset_to
      std.dtstart = end_transition.dtstart
      std.recurrence_rules = end_transition.rrule
    else
      std.timezone_name = abbreviation.to_s
      std.timezone_offset_from = start_transition.offset_from
      std.timezone_offset_to = start_transition.offset_to
      std.dtstart = start_transition.dtstart
      std.recurrence_rules = start_transition.rrule unless end_transition.nil?
    end
  end
end