summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDries Buytaert <dries@buytaert.net>2004-05-19 14:55:19 +0000
committerDries Buytaert <dries@buytaert.net>2004-05-19 14:55:19 +0000
commitd0090e69e67cdd213be259281cbb008bca0d4006 (patch)
treef5f9814771191cebe6b59f2371a16fecad2ebbf0
parentcd2f2bc0f9d01ef091e3e1d967849786461cb18b (diff)
downloadbrdo-d0090e69e67cdd213be259281cbb008bca0d4006.tar.gz
brdo-d0090e69e67cdd213be259281cbb008bca0d4006.tar.bz2
- Patch #7614 by jhriggs: fixed some role related problems.
-rw-r--r--database/database.mysql4
-rw-r--r--database/database.pgsql4
-rw-r--r--modules/user.module10
-rw-r--r--modules/user/user.module10
4 files changed, 16 insertions, 12 deletions
diff --git a/database/database.mysql b/database/database.mysql
index 74e550018..5515af7b2 100644
--- a/database/database.mysql
+++ b/database/database.mysql
@@ -594,7 +594,6 @@ CREATE TABLE users (
picture varchar(255) NOT NULL DEFAULT '',
init varchar(64) default '',
data longtext,
- rid int(10) unsigned NOT NULL default '0',
PRIMARY KEY (uid),
UNIQUE KEY name (name),
KEY changed (changed)
@@ -667,7 +666,8 @@ INSERT INTO system VALUES ('modules/page.module','page','module','',1,0,0);
INSERT INTO system VALUES ('modules/story.module','story','module','',1,0,0);
INSERT INTO system VALUES ('modules/taxonomy.module','taxonomy','module','',1,0,0);
INSERT INTO system VALUES ('themes/xtemplate/xtemplate.theme','xtemplate','theme','Internet explorer, Netscape, Opera',1,0,0);
-INSERT INTO users (uid, name, mail, rid) VALUES ('0', '', '', '1');
+INSERT INTO users (uid, name, mail) VALUES ('0', '', '');
+INSERT INTO users_roles (uid, rid) VALUES (0, 1);
INSERT INTO role (rid, name) VALUES (1, 'anonymous user');
INSERT INTO permission VALUES (1,'access content',0);
diff --git a/database/database.pgsql b/database/database.pgsql
index 35331592e..3b7812599 100644
--- a/database/database.pgsql
+++ b/database/database.pgsql
@@ -587,7 +587,6 @@ CREATE TABLE users (
picture varchar(255) NOT NULL DEFAULT '',
init varchar(64) default '',
data text default '',
- rid integer NOT NULL default '0',
PRIMARY KEY (uid),
UNIQUE (name)
);
@@ -665,7 +664,8 @@ INSERT INTO system VALUES ('themes/xtemplate/xtemplate.theme','xtemplate','theme
INSERT INTO variable(name,value) VALUES('update_start', 's:10:"2004-02-21";');
INSERT INTO variable(name,value) VALUES('theme_default','s:9:"xtemplate";');
-INSERT INTO users(uid,name,mail,rid) VALUES(0,'','', '1');
+INSERT INTO users(uid,name,mail) VALUES(0,'','');
+INSERT INTO users_roles(uid,rid) VALUES(0, 1);
INSERT INTO role (rid, name) VALUES (1, 'anonymous user');
INSERT INTO permission VALUES (1,'access content',0);
diff --git a/modules/user.module b/modules/user.module
index e6b6cd42c..34003c959 100644
--- a/modules/user.module
+++ b/modules/user.module
@@ -86,11 +86,13 @@ function user_save($account, $array = array()) {
db_query("UPDATE {users} SET $query changed = %d WHERE uid = %d", array_merge($v, array(time(), $account->uid)));
- // reload user roles
- db_query("DELETE FROM {users_roles} WHERE uid = %d", $account->uid);
+ // reload user roles if provided
+ if (is_array($array['rid'])) {
+ db_query("DELETE FROM {users_roles} WHERE uid = %d", $account->uid);
- foreach ($array['rid'] as $rid) {
- db_query("INSERT INTO {users_roles} (uid, rid) VALUES (%d, %d)", $account->uid, $rid);
+ foreach ($array['rid'] as $rid) {
+ db_query("INSERT INTO {users_roles} (uid, rid) VALUES (%d, %d)", $account->uid, $rid);
+ }
}
$user = user_load(array('uid' => $account->uid));
diff --git a/modules/user/user.module b/modules/user/user.module
index e6b6cd42c..34003c959 100644
--- a/modules/user/user.module
+++ b/modules/user/user.module
@@ -86,11 +86,13 @@ function user_save($account, $array = array()) {
db_query("UPDATE {users} SET $query changed = %d WHERE uid = %d", array_merge($v, array(time(), $account->uid)));
- // reload user roles
- db_query("DELETE FROM {users_roles} WHERE uid = %d", $account->uid);
+ // reload user roles if provided
+ if (is_array($array['rid'])) {
+ db_query("DELETE FROM {users_roles} WHERE uid = %d", $account->uid);
- foreach ($array['rid'] as $rid) {
- db_query("INSERT INTO {users_roles} (uid, rid) VALUES (%d, %d)", $account->uid, $rid);
+ foreach ($array['rid'] as $rid) {
+ db_query("INSERT INTO {users_roles} (uid, rid) VALUES (%d, %d)", $account->uid, $rid);
+ }
}
$user = user_load(array('uid' => $account->uid));