summaryrefslogtreecommitdiff
path: root/includes
diff options
context:
space:
mode:
Diffstat (limited to 'includes')
-rw-r--r--includes/bootstrap.inc4
-rw-r--r--includes/session.inc7
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;
}