our $VERSION = "0.01";
sub setup_session {
- my $c = shift;
+ my $c = shift;
- $c->NEXT::setup_session(@_);
+ $c->NEXT::setup_session(@_);
- $c->config->{session}{cookie_name} ||= "session";
+ $c->config->{session}{cookie_name} ||= "session";
}
sub finalize {
my $c = shift;
- my $cookie_name = $c->config->{session}{cookie_name};
+ my $cookie_name = $c->config->{session}{cookie_name};
if ( my $sid = $c->sessionid ) {
my $cookie = $c->request->cookies->{$cookie_name};
if ( !$cookie or $cookie->value ne $sid ) {
- $c->response->cookies->{$cookie_name} = { value => $sid };
+ $c->response->cookies->{$cookie_name} = {
+ value => $sid,
+ expires => $c->session->{__expires}
+ };
$c->log->debug(qq/A cookie with the session id "$sid" was saved/)
if $c->debug;
}
my $ret = $c->NEXT::prepare_cookies(@_);
- my $cookie_name = $c->config->{session}{cookie_name};
+ my $cookie_name = $c->config->{session}{cookie_name};
if ( my $cookie = $c->request->cookies->{$cookie_name} ) {
my $sid = $cookie->value;
$c->log->debug(qq/Found sessionid "$sid" in cookie/) if $c->debug;
}
- return $ret;
+ return $ret;
}
__PACKAGE__
=head1 SYNOPSIS
- use Catalyst qw/Session Session::State::Cookie Session::Store::Foo/;
+ use Catalyst qw/Session Session::State::Cookie Session::Store::Foo/;
=head1 DESCRIPTION