hijri est un calendrier islamique lunaire complet pour Ruby.
Le calendrier islamique ou calendrier musulman ou calendrier Hijri : est un calendrier lunaire composé de 12 mois lunaires dans une année de 354 ou 355 jours. Il est utilisé pour dater les événements dans de nombreux pays musulmans (en même temps que le calendrier grégorien) et utilisé par les musulmans du monde entier pour déterminer le jour approprié pour célébrer les jours saints et les fêtes islamiques. La première année était l’année au cours de laquelle s’est produite l’émigration du prophète islamique Mahomet de La Mecque vers Médine, connue sous le nom d’Hégire. Chaque année numérotée est désignée soit H pour Hijra, soit AH pour le latin anno Hegirae (l'année de l'Hégire).[1] Un nombre limité d'années avant l'Hégire (BH) est utilisé pour dater des événements liés à l'Islam, comme la naissance de Mahomet en 53 BH.[2] L'année islamique actuelle est 1431 AH, du 18 décembre 2009 (soir) environ au 6 décembre 2010 (soir).
http://en.wikipedia.org/wiki/Islamic_calendar
Ajoutez cette ligne au Gemfile de votre application :
gem 'hijri'
Et puis exécutez :
$ bundle
Ou installez-le vous-même en tant que :
$ gem install hijri
require 'hijri'
# you can create hijri date from stdlib Date class.
h = Date . today . to_hijri # => #<Hijri::Date:0x007f875e8c84e8 @year=1436, @month=2, @day=16>
# or you can initialize new one.
hijri = Hijri :: Date . new 1430 , 1 , 3 # => #<Hijri::Date:0x007f875e8dbb38 @year=1430, @month=1, @day=3>
# or you can get today hijri date directly.
today = Hijri :: Date . today # => #<Hijri::Date:0x007f875e8d8410 @year=1436, @month=2, @day=16>
# and you can convert hijri date to greogian date also.
hijri . to_greo # => #<Date: 2009-01-01 ((2454833j,0s,0n),+0s,2299161j)>
# and there is DateTime too
date_and_time = Hijri :: DateTime . now # => #<Hijri::DateTime:0x007f875e8eac00 @year=1436, @month=2, @day=16, @hour=14, @minute=14, @second=39, @zone="+03:00">
# hijri support strftime method with the same options as Greogian date format method
Hijri :: DateTime . now . strftime ( '%c' ) # => "Ahad Rabia I 20 16:00:25 1436"
Cette bibliothèque vise à prendre en charge et est testée par rapport aux implémentations Ruby suivantes :
Si quelque chose ne fonctionne pas sur l'une de ces versions de Ruby, c'est un bug.
Cette bibliothèque peut fonctionner (ou sembler fonctionner) par inadvertance sur d'autres implémentations de Ruby, mais la prise en charge ne sera fournie que pour les versions répertoriées ci-dessus.
Si vous souhaitez que cette bibliothèque prenne en charge une autre version de Ruby, vous pouvez vous porter volontaire pour en être le responsable. Être responsable implique de s'assurer que tous les tests s'exécutent et transmettent cette implémentation. En cas de problème au niveau de votre implémentation, vous serez responsable de fournir les correctifs en temps opportun. Si des problèmes critiques pour une implémentation particulière existent au moment d'une version majeure, la prise en charge de cette version de Ruby peut être abandonnée.
git checkout -b my-new-feature
)git commit -am 'Added some feature'
)git push origin my-new-feature
)