diff --git a/bakery.module b/bakery.module index b0bf84a..98cd22e 100644 --- a/bakery.module +++ b/bakery.module @@ -517,7 +517,7 @@ function bakery_settings($form, &$form_state) { $form['bakery_freshness'] = array( '#type' => 'textfield', '#title' => 'Seconds of age before a cookie is old', - '#default_value' => variable_get('bakery_freshness', '3600'), + '#default_value' => variable_get('bakery_freshness', ini_get('session.cookie_lifetime')), ); $form['bakery_key'] = array( @@ -904,8 +904,8 @@ function bakery_validate_data($data, $type = NULL) { return FALSE; } // Allow cookies to expire when the browser closes. - if (variable_get('bakery_freshness', '3600') == 0 - || $decrypted_data['timestamp'] + variable_get('bakery_freshness', '3600') >= $_SERVER['REQUEST_TIME']) { + if (variable_get('bakery_freshness', ini_get('session.cookie_lifetime')) == 0 + || $decrypted_data['timestamp'] + variable_get('bakery_freshness', ini_get('session.cookie_lifetime')) >= $_SERVER['REQUEST_TIME']) { return $decrypted_data; } return FALSE; @@ -983,9 +983,6 @@ function _bakery_taste_chocolatechip_cookie() { _bakery_user_logout(); } - // Bake a fresh cookie. Yum. - _bakery_bake_chocolatechip_cookie($cookie['name'], $cookie['mail'], $cookie['init']); - if (!$user->uid) { // Since this might happen in hook_boot we need to bootstrap first. // Note that this only runs if they have a valid session on the master @@ -1170,7 +1167,7 @@ function _bakery_bake_chocolatechip_cookie($name, $mail, $init) { $cookie['type'] = $type; $data = bakery_bake_data($cookie); // Allow cookies to expire when the browser closes. - $expire = (variable_get('bakery_freshness', '3600') > 0) ? $_SERVER['REQUEST_TIME'] + variable_get('bakery_freshness', '3600') : '0'; + $expire = (variable_get('bakery_freshness', ini_get('session.cookie_lifetime')) > 0) ? $_SERVER['REQUEST_TIME'] + variable_get('bakery_freshness', ini_get('session.cookie_lifetime')) : '0'; setcookie($type, $data, $expire, '/', variable_get('bakery_domain', ''), $cookie_secure, TRUE); } } @@ -1212,8 +1209,8 @@ function bakery_bake_oatmeal_cookie($name, $data) { $type = _bakery_cookie_name('OATMEAL'); $cookie['type'] = $type; $data = bakery_bake_data($cookie); - // Allow cookies to expire when the browser closes. - $expire = (variable_get('bakery_freshness', '3600') > 0) ? $_SERVER['REQUEST_TIME'] + variable_get('bakery_freshness', '3600') : '0'; + // OATMEAL cookies should expire relatively soon. + $expire = $_SERVER['REQUEST_TIME'] + 60; setcookie($type, $data, $expire, '/', variable_get('bakery_domain', ''), (empty($cookie_secure) ? FALSE : TRUE), TRUE); } }