Skip to content

ipsosante/ISHolidays

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

33 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Build Status

ISHolidays

Holidays calculations for NSDate.

Note that date calculations are done exclusively in the Gregorian Calendar.

Supported countries:

  • 🇫🇷 FR - France
  • 🇺🇸 US - United States (federal holidays only)
  • Add your own! Submit a pull request! ✨

Examples

NSDateComponents *dateComponents = [[NSDateComponents alloc] init];
dateComponents.year = 2017;
dateComponents.month = 12;
dateComponents.day = 25;

NSCalendar *gregorianCalendar = [NSCalendar calendarWithIdentifier:NSCalendarIdentifierGregorian];
NSDate *christmas = [gregorianCalendar dateFromComponents:dateComponents];

NSString *holidayName = [christmas localizedHolidayName];
NSLog(@"%@", holidayName); // "Noël"

BOOL isHoliday = [christmas isHoliday];
NSLog(@"%d", isHoliday); // YES

Localization

By default, the library uses the user's current locale to define the country for which to calculate the holidays. You can use +[ISHolidays holidayNameForDate:inLocale:] if you want to look up a holiday in a different locale (but check if that locale was implemented first, or you'll always get nil back).

Disclaimer

The developers of this library are French. It's difficult to find the correct information for each country holidays, so there may be mistakes. Please read the code for your native country/locale before using this library.