aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--actionpack/CHANGELOG2
-rwxr-xr-xactionpack/lib/action_controller/base.rb10
2 files changed, 10 insertions, 2 deletions
diff --git a/actionpack/CHANGELOG b/actionpack/CHANGELOG
index ead5e189ff..87280683fc 100644
--- a/actionpack/CHANGELOG
+++ b/actionpack/CHANGELOG
@@ -1,5 +1,7 @@
*SVN*
+* Added ActionController#cookies[]= as an alias for cookie "name", "value" -- you'll still need to use the latter if you have options to set.
+
* Added ActionController#cookies[] as a reader for @cookies that'll return the value of the cookie instead of the cookie object itself.
NOTE: If you were using the old accessor, this could potentially break your code -- if you expect a full cookie object!
diff --git a/actionpack/lib/action_controller/base.rb b/actionpack/lib/action_controller/base.rb
index 74fd0fbab9..5c386ac05a 100755
--- a/actionpack/lib/action_controller/base.rb
+++ b/actionpack/lib/action_controller/base.rb
@@ -555,11 +555,17 @@ module ActionController #:nodoc:
@response.headers["cookie"] << CGI::Cookie.new(*options)
end
- # Returns the value of the cookie by +name+ -- or nil if no such cookie exist. You set new cookies using the cookie method.
+ # Alias for cookie "name", "value"
+ def cookies[]=(name, value)
+ cookie(name, value)
+ end
+
+ # Returns the value of the cookie by +name+ -- or nil if no such cookie exist. You set new cookies using either the cookie method
+ # or cookies[]= (for simple name/value cookies without options).
def cookies[](name)
@cookies[name].value if @cookies[name]
end
-
+
# Resets the session by clearsing out all the objects stored within and initializing a new session object.
def reset_session #:doc:
@request.reset_session