From: Gary Wright Date: 2010-02-10T03:53:35+09:00 Subject: Re: [Q] algorithm to truncate date to beginning of week? On Feb 9, 2010, at 1:32 PM, Chuck Remes wrote: > I need to be able to take any date after Jan 1, 1980 and truncate it to the nearest week. > > Example: > > Wed Jan 09 17:53:23 -0600 1980 should truncate to Sun Jan 06 00:00:00 -0600 1980 > > Tue Feb 09 12:29:51 -0600 2010 should truncate to Sun Feb 07 00:00:00 -0600 2010 > > I've tried all sorts of tricks with modulus (% operator) on the integer representation of time but I can't get anything to work over a range of dates. > > Anyone have any bright ideas? >> require 'active_support' => true >> Time.now.beginning_of_week => Mon Feb 08 00:00:00 -0500 2010 >> It also looks like midnight is considered part of the next day not the previous day as in your example. Gary Wright