Index: database/database.mysql =================================================================== RCS file: /cvs/drupal/drupal/database/database.mysql,v retrieving revision 1.197 diff -u -r1.197 database.mysql --- database/database.mysql 14 Sep 2005 21:37:11 -0000 1.197 +++ database/database.mysql 18 Sep 2005 17:38:08 -0000 @@ -21,6 +21,7 @@ CREATE TABLE accesslog ( aid int(10) NOT NULL auto_increment, + sid varchar(32) NOT NULL default '', title varchar(255) default NULL, path varchar(255) default NULL, url varchar(255) default NULL, Index: database/database.pgsql =================================================================== RCS file: /cvs/drupal/drupal/database/database.pgsql,v retrieving revision 1.136 diff -u -r1.136 database.pgsql --- database/database.pgsql 14 Sep 2005 21:37:11 -0000 1.136 +++ database/database.pgsql 18 Sep 2005 17:38:13 -0000 @@ -16,6 +16,7 @@ CREATE TABLE accesslog ( aid SERIAL, + sid varchar(32) NOT NULL default '', mask varchar(255) NOT NULL default '', title varchar(255) default NULL, path varchar(255) default NULL, Index: database/updates.inc =================================================================== RCS file: /cvs/drupal/drupal/database/updates.inc,v retrieving revision 1.134 diff -u -r1.134 updates.inc --- database/updates.inc 14 Sep 2005 21:37:11 -0000 1.134 +++ database/updates.inc 18 Sep 2005 17:38:16 -0000 @@ -66,7 +66,8 @@ "2005-08-08" => "update_144", "2005-08-15" => "update_145", "2005-08-25" => "update_146", - "2005-09-07" => "update_147" + "2005-09-07" => "update_147", + "2005-09-18" => "update_148" ); function update_110() { @@ -811,6 +812,26 @@ return $ret; } +function update_148() { + $ret = array(); + + // Add support for tracking users' session ids (useful for tracking anon users) + switch ($GLOBALS['db_type']) { + case 'pgsql': + $ret[] = update_sql("ALTER TABLE {accesslog} ADD sid varchar(32)"); + $ret[] = update_sql("ALTER TABLE {accesslog} ALTER sid SET NOT NULL"); + $ret[] = update_sql("ALTER TABLE {accesslog} ALTER sid SET DEFAULT ''"); + break; + case 'mysql': + case 'mysqli': + $ret[] = update_sql("ALTER TABLE {accesslog} ADD sid varchar(32) NOT NULL default ''"); + break; + default: + break; + } + + return $ret; +} function update_sql($sql) { $edit = $_POST["edit"]; Index: modules/statistics.module =================================================================== RCS file: /cvs/drupal/drupal/modules/statistics.module,v retrieving revision 1.204 diff -u -r1.204 statistics.module --- modules/statistics.module 25 Aug 2005 21:14:17 -0000 1.204 +++ modules/statistics.module 18 Sep 2005 17:37:49 -0000 @@ -74,7 +74,7 @@ } if ((variable_get('statistics_enable_access_log', 0)) && (module_invoke('throttle', 'status') == 0)) { // Log this page access. - db_query("INSERT INTO {accesslog} (title, path, url, hostname, uid, timer, timestamp) values('%s', '%s', '%s', '%s', %d, %d, %d)", drupal_get_title(), $_GET['q'], referer_uri(), $_SERVER['REMOTE_ADDR'], $user->uid, timer_read('page'), time()); + db_query("INSERT INTO {accesslog} (title, path, url, hostname, uid, sid, timer, timestamp) values('%s', '%s', '%s', '%s', %d, '%s', %d, %d)", drupal_get_title(), $_GET['q'], referer_uri(), $_SERVER['REMOTE_ADDR'], $user->uid, session_id(), timer_read('page'), time()); } }