Added helper functions for current time and date
This commit is contained in:
		
							parent
							
								
									e8a0d42906
								
							
						
					
					
						commit
						1ea8c6c9ee
					
				| @ -50,6 +50,14 @@ mkDate day = Date (localTimeToUTC utc (LocalTime day midnight)) | |||||||
| mkDateTime :: Day -> TimeOfDay -> DateTime | mkDateTime :: Day -> TimeOfDay -> DateTime | ||||||
| mkDateTime day tod = DateTime (localTimeToUTC utc (LocalTime day tod)) | mkDateTime day tod = DateTime (localTimeToUTC utc (LocalTime day tod)) | ||||||
| 
 | 
 | ||||||
|  | today :: IO Date | ||||||
|  | today = do | ||||||
|  |     t <- getZonedTime | ||||||
|  |     return (mkDate (localDay (zonedTimeToLocalTime t))) | ||||||
|  | 
 | ||||||
|  | now :: IO DateTime | ||||||
|  | now = fmap DateTime getCurrentTime  | ||||||
|  | 
 | ||||||
| -- | Parse a date-time string to a time type, or raise an error. | -- | Parse a date-time string to a time type, or raise an error. | ||||||
| parsedatetime :: String -> DateTime | parsedatetime :: String -> DateTime | ||||||
| parsedatetime s = DateTime $ | parsedatetime s = DateTime $ | ||||||
| @ -73,9 +81,6 @@ datetimeToDate (DateTime (UTCTime{utctDay=day})) = Date (UTCTime day 0) | |||||||
| elapsedSeconds :: Fractional a => DateTime -> DateTime -> a | elapsedSeconds :: Fractional a => DateTime -> DateTime -> a | ||||||
| elapsedSeconds (DateTime dt1) (DateTime dt2) = realToFrac $ diffUTCTime dt1 dt2 | elapsedSeconds (DateTime dt1) (DateTime dt2) = realToFrac $ diffUTCTime dt1 dt2 | ||||||
| 
 | 
 | ||||||
| today :: IO Date |  | ||||||
| today = getCurrentTime >>= return . Date |  | ||||||
| 
 |  | ||||||
| dateToUTC :: Date -> UTCTime | dateToUTC :: Date -> UTCTime | ||||||
| dateToUTC (Date u) = u | dateToUTC (Date u) = u | ||||||
| 
 | 
 | ||||||
| @ -86,4 +91,4 @@ dateComponents = toGregorian . utctDay . dateToUTC | |||||||
| dateDay date = d where (_,_,d) = dateComponents date | dateDay date = d where (_,_,d) = dateComponents date | ||||||
| 
 | 
 | ||||||
| -- dateMonth :: Date -> Day | -- dateMonth :: Date -> Day | ||||||
| dateMonth date = m where (_,m,_) = dateComponents date | dateMonth date = m where (_,m,_) = dateComponents date | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user