DefV / session_lifetime
- Source
- Commits
- Network (4)
- Issues (0)
- Downloads (0)
- Wiki (1)
- Graphs
-
Tree:
7b05b08
commit 7b05b08bb418856e823c55e90f070876afe03b07
tree abc731b5cee1cbf96aa68798d987a9cbf465e14f
parent 5deed5cd7a3f2173d667a837187794fe6e808baf
tree abc731b5cee1cbf96aa68798d987a9cbf465e14f
parent 5deed5cd7a3f2173d667a837187794fe6e808baf
| name | age | message | |
|---|---|---|---|
| |
.gitignore | ||
| |
MIT-LICENSE | ||
| |
README.rdoc | ||
| |
init.rb | ||
| |
lib/ |
README.rdoc
SessionLifetime
SessionLifetime is a plugin which allows you to set a lifetime on your session. You can set it to expire the session 1 hour after the last activity.
Example
class ApplicationController << ActionController::Base
expires_session
end
Or you can give some options:
- :time - After how much time of inactivity should the session be invalidated. Default is 1 hour
- :redirect_to - Where should we redirect the user to once their session has expired
- :on_expiry - Takes a Proc or a lamba which gives you a callback after the
session invalidation. This is useful for setting a flash message or
something in the database.
class ApplicationController << ActionController::Base
expires_session :time => 2.hours, :redirect_to => '/login', :on_expiry => lambda { flash[:notice] = "Your session has been expired, and you have been logged out." }end
If you want a controller not to have expiring_session you can use skip_before_filter:
class SessionController << ApplicationController
skip_before_filter :check_session_lifetime, :only => [:new, :create]
end
Missing something?
I wrote this plugin to solve the problems I had with default Rails session handling. If you have an additional need which you think would be great for this plugin, give me a shout at sessionlifetime@defv.be, or through GitHub, and I’ll be more then happy to implement your proposal.
Copyright © 2008 Jan De Poorter, released under the MIT license

