Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- extension Date{
- var month:String{
- let locale = Locale.preferredLanguages[0]
- let formatter = DateFormatter()
- // formatter.locale = NSLocale.current
- formatter.locale = Locale.init(identifier: locale)
- formatter.setLocalizedDateFormatFromTemplate("MMMM")
- return formatter.string(from: self)
- }
- var monthDays:Range<Int>{
- return Calendar.current.range(of: .day, in: .month, for: self)!
- }
- var monthDay:Int{
- return Calendar.current.component(.day, from: self)
- }
- var weekDay:Int{
- return Calendar.current.component(.weekday, from: self) - 1
- }
- var firstDayofMonth:Date {
- var componets = Calendar.current.dateComponents( [.year, .month], from: self)
- componets.day = monthDays.lowerBound
- return Calendar.current.date(from: componets)!
- }
- var lastDayofMonth:Date {
- var componets = Calendar.current.dateComponents( [.year, .month], from: self)
- componets.day = monthDays.upperBound - 1
- return Calendar.current.date(from: componets)!
- }
- var firstDayofWeek:Date{
- var componets = Calendar.current.dateComponents( [.year,.month], from: self)
- componets.day = monthDay - weekDay
- return Calendar.current.date(from: componets)!
- }
- static
- func makeTheDate(month:Int,day:Int,year:Int,hour:Int = 0 ,minute:Int = 0)->Date?{
- let calendar = Calendar.current
- var components = DateComponents()
- components.day = day
- components.month = month
- components.year = year
- components.hour = hour
- components.minute = minute
- return calendar.date(from: components)
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement