View Source Elixir Jalaali calendar

Build Status Hex.pm GitHub license GitHub issues

Elixir implementation of jalaali.js which contains a Calendar implementation for jalaali and some functions for converting Jalaali and Gregorian calendar systems to each other.

installation

Installation

You can install jalaali by Addding it to your list of dependencies in mix.exs:

def deps do
  [
    {:jalaali, "~> 0.4"}
  ]
end

usage

Usage

After installing jalaali package. you can create Dates/DateTimes in jalaali or convert Dates/DateTimes form other calendars back an forth.

how-to-use

How to use

  • Creating new Date

      Date.new(1396, 6, 30, Jalaali.Calendar)
      {:ok, %Date{calendar: Jalaali.Calendar, day: 30, month: 6, year: 1396}}
  • Converting a DateTime to Jalaali

      datetime_in_any_calendar = DateTime.utc_now(Calendar.ISO)
      {:ok, jalaali_datetime} = DateTime.convert(datetime_in_any_calendar, Jalaali.Calendar)
  • Converting a DateTime from Jalaali

      jalaali_datetime = DateTime.utc_now(Jalaali.Calendar)
      {:ok, iso_datetime} = DateTime.convert(jalaali_datetime, Calendar.ISO)
  • Converting a Date to Jalaali

      date_in_any_calendar = Date.new(2017, 1, 1, Calendar.ISO)
      {:ok, jalaali_date} = Date.convert(date_in_any_calendar, Jalaali.Calendar)
  • Converting a Date from Jalaali

      {:ok, jalaali_date} = Date.new(1396, 6, 30, Jalaali.Calendar)
      {:ok, iso_date} = Date.convert(jalaali_date, Calendar.ISO)

Thats super easy. :)

license

License

This project is license under MIT.

For more information please check LICENSE