? cacherouter_cookie.patch
Index: cacherouter.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/cacherouter/cacherouter.module,v
retrieving revision 1.1.2.6
diff -u -p -r1.1.2.6 cacherouter.module
--- cacherouter.module	5 Sep 2009 13:03:25 -0000	1.1.2.6
+++ cacherouter.module	2 Feb 2010 21:28:36 -0000
@@ -1,7 +1,6 @@
 <?php
+// $Id: cacherouter.module,v 1.1.2.6 2009/09/05 13:03:25 slantview Exp $
 /**
- * $Id: cacherouter.module,v 1.1.2.6 2009/09/05 13:03:25 slantview Exp $
- *
  * @file cacherouter.module
  * @author Steve Rude <steve@slantview.com>
  */
@@ -15,11 +14,25 @@
 function cacherouter_user($op, &$edit, &$account, $category = NULL) {
   switch ($op) {
     case 'login':
-      setcookie('DRUPAL_UID', TRUE, time() + (60 * 60 * 24 * 30), '/');
+      $params = session_get_cookie_params();
+      if (version_compare(PHP_VERSION, '5.2.0') === 1) {
+        setcookie('DRUPAL_UID', TRUE, $_SERVER['REQUEST_TIME'] + (60 * 60 * 24 * 30), $params['path'], $params['domain'], $params['secure'], $params['httponly']);
+      }
+      else {
+        setcookie('DRUPAL_UID', TRUE, $_SERVER['REQUEST_TIME'] + (60 * 60 * 24 * 30), $params['path'], $params['domain'], $params['secure']);
+      }
       break;
+
     case 'logout':
-      //Set in past to delete cookie
-      setcookie('DRUPAL_UID', TRUE, time() - 3600, '/');
+      $params = session_get_cookie_params();
+      // Set in past to delete cookie
+      if (version_compare(PHP_VERSION, '5.2.0') === 1) {
+        setcookie('DRUPAL_UID', TRUE, $_SERVER['REQUEST_TIME'] - 3600, $params['path'], $params['domain'], $params['secure'], $params['httponly']);
+      }
+      else {
+        setcookie('DRUPAL_UID', TRUE, $_SERVER['REQUEST_TIME'] - 3600, $params['path'], $params['domain'], $params['secure']);
+      }
+      unset($_COOKIE['DRUPAL_UID']);
       break;
   }
-}
\ No newline at end of file
+}
