# russian_workdays [![Gem Version](https://badge.fury.io/rb/russian_workdays.svg)](https://badge.fury.io/rb/russian_workdays) [![Build Status](https://travis-ci.org/heckfy/russian_workdays.svg?branch=master)](https://travis-ci.org/heckfy/russian_workdays) [![Code Climate](https://codeclimate.com/github/heckfy/russian_workdays/badges/gpa.svg)](https://codeclimate.com/github/heckfy/russian_workdays) Производственный календарь РФ ## Установка Выполняем в терминале: gem install russian_workdays и подгружаем: ```ruby require "russian_workdays" ``` ## Использование #### Класс RussianWorkdays::Collection Инициализатор принимает массив или интервал дат. ```ruby collection = RussianWorkdays::Collection.new((Date.new(2014, 2, 10)..Date.new(2014, 3, 10))) # Получить массив с выходными днями c 10 февраля 2014 по 10 марта 2014: collection.holidays # Получить массив с предпраздничными днями: collection.preholidays # Получить массив с рабочими днями: collection.works # Получить количество рабочих часов: collection.work_hours_count # В качестве аргумента метод work_hours_count принимает количество рабочих часов в неделю, по умолчанию это 40 часов. Получить количество рабочих часов при 36-часовой рабочей неделе: collection.work_hours_count(36) ``` #### Класс RussianWorkdays::Year Инициализатор принимает в качестве параметра год. Имеет те же методы что и RussianWorkdays::Collection. ```ruby collection = RussianWorkdays::Year.new(2014) # Получить массив с выходными днями в 2014 году: collection.holidays ``` #### Класс RussianWorkdays::Month Инициализатор принимает первым параметром год, вторым - номер месяца. Имеет те же методы что и RussianWorkdays::Collection. ```ruby collection = RussianWorkdays::Month.new(2014, 2) # Получить массив с выходными днями в феврале 2014 года: collection.holidays ``` #### Класс RussianWorkdays::Day Предназначен для работы с одной датой. В качестве параметра принимает объект класса Date. ```ruby date = RussianWorkdays::Day.new(Date.new(2014, 10, 5)) # Является ли дата выходным днем? date.holiday? # Является ли дата предпраздничным днем? date.preholiday? # Является ли дата рабочим днем? date.work? ``` ## Contributing 1. Fork it ( https://github.com/[my-github-username]/russian_workdays/fork ) 2. Create your feature branch (`git checkout -b my-new-feature`) 3. Commit your changes (`git commit -am 'Add some feature'`) 4. Push to the branch (`git push origin my-new-feature`) 5. Create a new Pull Request