Skip to content

Easy on the eyes alternative to the Rails distance_of_time_in_words_to_now helper method.

License

Notifications You must be signed in to change notification settings

twmills/date-casually

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DateCasually

If you’ve always expected the Rails date helpers to say “Today”, “Yesterday” or “10 days ago” when asked about a specific date, then it’s time to date casually.

I’ve never liked (and always seem to forget) the name of the Rails distance_of_time_in_words_to_now helper method. Additionally it doesn’t handle obvious translations such as “today”, “tomorrow” or “yesterday” and doesn’t determine if a date is in the future (“10 days from now”) or the past (“10 days ago”).

Quick Examples

Date.today.casual 
  #=> 'today'

(Date.today + 1).casual 
  #=> 'tomorrow'

(Date.today - 1).casual 
  #=> 'yesterday'

The :as option

If you’d like to change what increments of time DateCasually returns you can use the :as option.

(Date.today + 12).casual(:as => :days) 
  #=> '12 days from now'

You can also pass in multiple options:

(Date.today + 1).casual(:as => [ :months, :years ]) 
  #=> 'less than a month from now'

The default :as options for DatCasually are:

(Date.today + 1).casual(:as => [:days, :weeks, :months, :years])

If you’d change DateCasually globally, do this:

DateCasually::Config.as = :months, :years

i18n

DateCasually hooks into the i18n gem, but currently only supports English.

Dependencies

  • i18n

  • chronic (only used in the test suite)

  • timecop (only used in the test suite)

About

Easy on the eyes alternative to the Rails distance_of_time_in_words_to_now helper method.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages