diff options
Diffstat (limited to 'includes')
-rw-r--r-- | includes/bootstrap.inc | 4 | ||||
-rw-r--r-- | includes/session.inc | 7 |
2 files changed, 10 insertions, 1 deletions
diff --git a/includes/bootstrap.inc b/includes/bootstrap.inc index 79f69fadd..111e4507c 100644 --- a/includes/bootstrap.inc +++ b/includes/bootstrap.inc @@ -21,6 +21,10 @@ define('DRUPAL_BOOTSTRAP_SESSION', 1); define('DRUPAL_BOOTSTRAP_PAGE_CACHE', 2); define('DRUPAL_BOOTSTRAP_FULL', 3); +// these values should match the'role' table +define('DRUPAL_ANONYMOUS_RID', 1); +define('DRUPAL_AUTHENTICATED_RID', 2); + /** * Start the timer with the specified name. If you start and stop * the same timer multiple times, the measured intervals will be diff --git a/includes/session.inc b/includes/session.inc index a28a9a571..a838bdc94 100644 --- a/includes/session.inc +++ b/includes/session.inc @@ -30,8 +30,13 @@ function sess_read($key) { $user = drupal_unpack($user); $user->roles = array(); + if ($user->uid) { + $user->roles[DRUPAL_AUTHENTICATED_RID] = 'authenticated user'; + } + else { + $user->roles[DRUPAL_ANONYMOUS_RID] = 'anonymous user'; + } $result = db_query("SELECT r.rid, r.name FROM {role} r INNER JOIN {users_roles} ur ON ur.rid = r.rid WHERE ur.uid = %d", $user->uid); - while ($role = db_fetch_object($result)) { $user->roles[$role->rid] = $role->name; } |