ethiopic_date 0.0.7 → 0.0.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,3 +1,3 @@
1
1
  module EthiopicDate
2
- VERSION = "0.0.7"
2
+ VERSION = "0.0.8"
3
3
  end
data/lib/ethiopic_date.rb CHANGED
@@ -9,6 +9,9 @@ module EthiopicDate
9
9
  public
10
10
  Nmonths = 12
11
11
  MonthDays = [0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]
12
+ Ethiopic_month_names={:1=>"መስከረም",:2=>"ጥቅምት",:3=>"ህዳር",:4=>"ታህሳስ",5=>"ጥር",
13
+ :6=>"የካቲት",:7=>"መጋቢት",:8=>"ሚያዝያ",:9=>"ግንቦት",:10=>"ሰኔ",:11=>"ሐምሌ",:12=>"ነሃሴ",:13=>"ጳጉሜን"}
14
+
12
15
  #Ethiopic: Julian date offset
13
16
  JD_EPOCH_OFFSET_AMETE_MIHRET = 1723856 # ዓ/ም
14
17
 
@@ -26,11 +29,11 @@ module EthiopicDate
26
29
  #@return GregorianDate is returned
27
30
  #@example fromEthiopicToGregorian(2004,5,21)
28
31
 
29
- def fromEthiopicToGregorian(in_date)
32
+ def fromEthiopicToGregorian(ethiopic_date)
30
33
  #TODO : Handle Exceptions when there is a wrong input
31
- year=in_date.year
32
- month=in_date.month
33
- day=in_date.day
34
+ year=ethiopic_date[:year]
35
+ month=ethiopic_date[:month]
36
+ day=ethiopic_date[:day]
34
37
  if (year <=0)
35
38
  era=JD_EPOCH_OFFSET_AMETE_ALEM
36
39
  else
@@ -46,12 +49,12 @@ module EthiopicDate
46
49
  #@param year,month, day in that order
47
50
  #@return EthiopicDate is returned
48
51
  #@example fromEthiopicToGregorian(2012,5,21)
49
- def fromGregorianToEthiopic(in_date)
52
+ def fromGregorianToEthiopic(gregorian_date)
50
53
  #TODO : Handle Exceptions when there is a wrong input
51
- year=in_date.year
52
- month=in_date.month
53
- day=in_date.day
54
- date = {:year=>-1,:month=>-1,:day => -1 }
54
+ year=gregorian_date.year
55
+ month=gregorian_date.month
56
+ day=gregorian_date.day
57
+ ethiopic_date = {:year=>-1,:month=>-1,:day => -1 }
55
58
  jdn = jdn_from_gregorian(year,month,day)
56
59
  if jdn >=JD_EPOCH_OFFSET_AMETE_MIHRET + 365
57
60
  era= JD_EPOCH_OFFSET_AMETE_MIHRET
@@ -60,12 +63,11 @@ module EthiopicDate
60
63
  end
61
64
  r = (jdn - era).modulo(1461)
62
65
  n = (r.modulo(365) ) + (365 * (r/1460 ))
63
- date[:year] =4 * ((jdn - era)/1461) + r/365 - r/1460
64
- date[:month] =(n/30) + 1
65
- date[:day] =(n.modulo(30)) + 1
66
+ ethiopic_date[:year] =4 * ((jdn - era)/1461) + r/365 - r/1460
67
+ ethiopic_date[:month] =(n/30) + 1
68
+ ethiopic_date[:day] =(n.modulo(30)) + 1
66
69
 
67
- ethiopic_date=Date.new(date[:year],date[:month],date[:day])
68
- return ethiopic_date_format(ethiopic_date)
70
+ return "#{Ethiopic_month_names[:ethiopic_date[:month]]} #{ethiopic_date[:day]} ቀን #{ethiopic_date[:year]}ዓ/ም "
69
71
  end
70
72
 
71
73
 
@@ -74,11 +76,10 @@ module EthiopicDate
74
76
  #@api public
75
77
  #@return a formated Ethiopic date string
76
78
  #@example ethiopic_date_format('2004-5-21') will be ጥር 21 ቀን 2004ዓ/ም
77
- def ethiopic_date_format(in_date)
78
- year=in_date.year
79
- month=in_date.month
80
- day=in_date.day
81
- month_name =""
79
+ def ethiopic_date_format(ethiopic_date)
80
+ year=ethiopic_date[:year]
81
+ month=ethiopic_date[:month]
82
+ day=ethiopic_date[:day]
82
83
  case month
83
84
  when 1 then month_name=" መስከረም "
84
85
  when 2 then month_name=" ጥቅምት "
metadata CHANGED
@@ -2,7 +2,7 @@
2
2
  name: ethiopic_date
3
3
  version: !ruby/object:Gem::Version
4
4
  prerelease:
5
- version: 0.0.7
5
+ version: 0.0.8
6
6
  platform: ruby
7
7
  authors:
8
8
  - G/yohannes Zenebe
@@ -10,7 +10,7 @@ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
12
 
13
- date: 2012-11-10 00:00:00 Z
13
+ date: 2012-11-22 00:00:00 Z
14
14
  dependencies: []
15
15
 
16
16
  description: Simple gem to convert between Ethiopian and Gregorian dates