README.md in action_controller_tweaks-0.2.0 vs README.md in action_controller_tweaks-0.3.0
- old
+ new
@@ -7,15 +7,15 @@
===========
Tested against:
- Action Controller of version `3.2` and `4.0` (`3.1` and below got problem with buggy `rspec-rails`)
- Ruby `1.9.2`, `1.9.3`, `2.0.0` (except Rails 4 with `1.9.2`)
-[![Build Status](https://travis-ci.org/PikachuEXE/action_controller_tweaks.png?branch=master)](https://travis-ci.org/PikachuEXE/action_controller_tweaks)
-[![Gem Version](https://badge.fury.io/rb/action_controller_tweaks.png)](http://badge.fury.io/rb/action_controller_tweaks)
-[![Dependency Status](https://gemnasium.com/PikachuEXE/action_controller_tweaks.png)](https://gemnasium.com/PikachuEXE/action_controller_tweaks)
-[![Coverage Status](https://coveralls.io/repos/PikachuEXE/action_controller_tweaks/badge.png)](https://coveralls.io/r/PikachuEXE/action_controller_tweaks)
-[![Code Climate](https://codeclimate.com/github/PikachuEXE/action_controller_tweaks.png)](https://codeclimate.com/github/PikachuEXE/action_controller_tweaks)
+[![Build Status](http://img.shields.io/travis/PikachuEXE/action_controller_tweaks.svg)](https://travis-ci.org/PikachuEXE/action_controller_tweaks)
+[![Gem Version](http://img.shields.io/gem/v/action_controller_tweaks.svg)](http://badge.fury.io/rb/action_controller_tweaks)
+[![Dependency Status](http://img.shields.io/gemnasium/PikachuEXE/action_controller_tweaks.svg)](https://gemnasium.com/PikachuEXE/action_controller_tweaks)
+[![Coverage Status](http://img.shields.io/coveralls/PikachuEXE/action_controller_tweaks.svg)](https://coveralls.io/r/PikachuEXE/action_controller_tweaks)
+[![Code Climate](http://img.shields.io/codeclimate/github/PikachuEXE/action_controller_tweaks.svg)](https://codeclimate.com/github/PikachuEXE/action_controller_tweaks)
Install
=======
```ruby
@@ -39,13 +39,26 @@
```ruby
# Just like using #expires_now
set_no_cache
```
-### `#set_session`
+### `#set_session` & `#set_session_with_expiry`
I write this on my own, it's ok to blame me if it's buggy :P
This method let's you set session, with expiry time!
+It depends on `before_filter`/`before_action` to remove expired session keys
+Valid options: `expire_in`, `expires_in`, `expire_at`, `expires_at`
Example:
```ruby
+# Option keys are NOT checked
+set_session(:key, 'value') # => Just like session[:key] = 'value'
+
set_session(:key, 'value', expire_in: 1.day)
+set_session(:key, 'value', expires_in: 1.day)
+
+set_session(:key, 'value', expire_at: 1.day.from_now)
+set_session(:key, 'value', expires_at: 1.day.from_now)
+
+# Option keys are checked
+# You must pass valid options or error will be raised
+set_session_with_expiry(:key, 'value', expires_in: 1.day)
```
Note: Please don't use the session key `session_keys_to_expire`, it's reserved for internal processing