aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/lib/active_record/timestamp.rb
diff options
context:
space:
mode:
authorJeremy Kemper <jeremy@bitsweat.net>2006-06-29 02:39:32 +0000
committerJeremy Kemper <jeremy@bitsweat.net>2006-06-29 02:39:32 +0000
commit5fe64dd1a62eafc27b20b82b4b6c1139887046e3 (patch)
tree66b34947da9f1449b135586a8a48008854558d51 /activerecord/lib/active_record/timestamp.rb
parent4defe1ac8a1689262a9a9f2c030714727f72e06e (diff)
downloadrails-5fe64dd1a62eafc27b20b82b4b6c1139887046e3.tar.gz
rails-5fe64dd1a62eafc27b20b82b4b6c1139887046e3.tar.bz2
rails-5fe64dd1a62eafc27b20b82b4b6c1139887046e3.zip
r4724@asus: jeremy | 2006-06-28 19:22:46 -0700
Removed deprecated timestamps_gmt class methods. git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4511 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
Diffstat (limited to 'activerecord/lib/active_record/timestamp.rb')
-rw-r--r--activerecord/lib/active_record/timestamp.rb50
1 files changed, 17 insertions, 33 deletions
diff --git a/activerecord/lib/active_record/timestamp.rb b/activerecord/lib/active_record/timestamp.rb
index 26fb0c17ac..e271ed3dc4 100644
--- a/activerecord/lib/active_record/timestamp.rb
+++ b/activerecord/lib/active_record/timestamp.rb
@@ -1,22 +1,26 @@
module ActiveRecord
- # Active Records will automatically record creation and/or update timestamps of database objects
- # if fields of the names created_at/created_on or updated_at/updated_on are present. This module is
- # automatically included, so you don't need to do that manually.
+ # Active Record automatically timestamps create and update if the table has fields
+ # created_at/created_on or updated_at/updated_on.
#
- # This behavior can be turned off by setting <tt>ActiveRecord::Base.record_timestamps = false</tt>.
- # This behavior by default uses local time, but can use UTC by setting <tt>ActiveRecord::Base.default_timezone = :utc</tt>
+ # Timestamping can be turned off by setting
+ # <tt>ActiveRecord::Base.record_timestamps = false</tt>
+ #
+ # Timestamps are in the local timezone by default but can use UTC by setting
+ # <tt>ActiveRecord::Base.default_timezone = :utc</tt>
module Timestamp
- def self.included(base) # :nodoc:
- base.class_eval do
- [:create, :update].each do |method|
- alias_method_chain method, :timestamps
- end
- end
+ def self.included(base) #:nodoc:
+ super
+
+ base.alias_method_chain :create, :timestamps
+ base.alias_method_chain :update, :timestamps
+
+ base.cattr_accessor :record_timestamps
+ base.record_timestamps = true
end
def create_with_timestamps #:nodoc:
if record_timestamps
- t = ( self.class.default_timezone == :utc ? Time.now.utc : Time.now )
+ t = self.class.default_timezone == :utc ? Time.now.utc : Time.now
write_attribute('created_at', t) if respond_to?(:created_at) && created_at.nil?
write_attribute('created_on', t) if respond_to?(:created_on) && created_on.nil?
@@ -28,31 +32,11 @@ module ActiveRecord
def update_with_timestamps #:nodoc:
if record_timestamps
- t = ( self.class.default_timezone == :utc ? Time.now.utc : Time.now )
+ t = self.class.default_timezone == :utc ? Time.now.utc : Time.now
write_attribute('updated_at', t) if respond_to?(:updated_at)
write_attribute('updated_on', t) if respond_to?(:updated_on)
end
update_without_timestamps
end
end
-
- class Base
- # Records the creation date and possibly time in created_on (date only) or created_at (date and time) and the update date and possibly
- # time in updated_on and updated_at. This only happens if the object responds to either of these messages, which they will do automatically
- # if the table has columns of either of these names. This feature is turned on by default.
- @@record_timestamps = true
- cattr_accessor :record_timestamps
-
- # deprecated: use ActiveRecord::Base.default_timezone instead.
- @@timestamps_gmt = false
- def self.timestamps_gmt=( gmt ) #:nodoc:
- warn "timestamps_gmt= is deprecated. use default_timezone= instead"
- self.default_timezone = ( gmt ? :utc : :local )
- end
-
- def self.timestamps_gmt #:nodoc:
- warn "timestamps_gmt is deprecated. use default_timezone instead"
- self.default_timezone == :utc
- end
- end
end