On Jan 11, 2008, at 5:29 AM, Carl Johnstone wrote:
cookie_domain => the_host()
in the MyApp config, but when I try to start the server it gives an
error telling that I can't use the method "req" because $c is
undefined.
I'd be curious about why you wanted the cookie domain in the config
anyway!
I think the idea was something along the lines of...
MyApp->config->{ 'session' }->{ 'cookie_domain' } = MyApp->request-
>header->( 'host' );
I presume you've got a bit of code like:
$c->response->cookies->{'foo'} = { domain => $c-
>config('cookie_domain') };
In which case why couldn't you just do
$c->response->cookies->{'foo'} = { domain => $c->req->hostname };
But anyway, what I need is working because I can avoid setting a
domain name for the cookie.
Yeah exactly, setting the domain in the cookie to match the domain
requested is pretty pointless anyway as that's what browsers do by
default. About the only time you need to send a domain back is when
you want to set a cookie across all subdomains or similar. Eg:
{ domain => '.example.com' }
In which case you could still do something in Root/auto if you wanted
to modify it...
my $domain_re = join( '|', qw(
mydomain.com
myotherdomain.com
foo.com
example.com
) );
sub auto : Private {
my ( $self, $c ) = @_;
if ( $c->request->header( 'host' ) =~ /(\.(?:$domain_re))$/ ) {
$c->config->{ 'session' }->{ 'cookie_domain' } = $1;
}
return 1;
}
--
Jason Kohles, RHCA RHCDS RHCE
[EMAIL PROTECTED] - http://www.jasonkohles.com/
"A witty saying proves nothing." -- Voltaire
_______________________________________________
List: Catalyst@lists.scsys.co.uk
Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
Searchable archive: http://www.mail-archive.com/catalyst@lists.scsys.co.uk/
Dev site: http://dev.catalyst.perl.org/