AnNaMaLaI
AnNaMaLaI

Reputation: 4084

Different session timeouts for admin and users in CAKEPHP 2.0. is it possible?

I am using cakephp 2.0 for developing a website. Site will contain only 2 types of users. Admin and users(customers). now I need to set session time out 10 minutes for customer and 1 hour for admin. is it possible ?. My core.php file contains the line like this,

Configure::write('Session', array(
    'defaults'      => 'php',
    'cookie'        => 'xyz',
    'timeout'       => 10,
    'checkAgent'    => false,
));

Upvotes: 3

Views: 1668

Answers (2)

Paulo Rodrigues
Paulo Rodrigues

Reputation: 5303

It is more correct you do this condition in the AppController than to change your core.php this magnitude. You can make only this:

Configure::write('Session.timeout', 60);

And if you're using Acl, verify if user is admin using his own Acl method instead strripos.

Upvotes: 3

AnNaMaLaI
AnNaMaLaI

Reputation: 4084

I added the following lines in core.php file. For quick fix

if(strripos($_SERVER['REDIRECT_URL'],"admin/")) {
   Configure::write('Session', array(
   'defaults' => 'php',
   'cookie' => 'xyz',
   'timeout' => 60,
   'checkAgent' => false,
));
}
else
{
   Configure::write('Session', array(
      'defaults' => 'php',
     'cookie' => 'xyz',
     'timeout' => 10,
    'checkAgent' => false,
    ));
}

Upvotes: 3

Related Questions