Class: GreekEaster

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

Class Method Summary collapse

Class Method Details

.at(year = nil) ⇒ Object



3
4
5
6
# File 'lib/greek_easter.rb', line 3

def self.at(year = nil)
  date = self.easter(year)
return "In the year #{date.year}, the Greek Easter is on #{date.strftime("%d %B")}.";
end

.easter(year = nil) ⇒ Object



8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# File 'lib/greek_easter.rb', line 8

def self.easter(year = nil)
  year = Time.now.year if year.nil?
  year = year.to_i if year.is_a?(String)
  a = year % 19
  b = year % 4
  c = year % 7
  d = (19 * a + 16) % 30
  e = (2 * b + 4 * c + 6 * d) % 7;
	easter = 3 + d + e;
	if easter <= 30
	  Time.local(year, 4, easter)
	else
	  Time.local(year, 5, (easter - 30))
	end
end