summaryrefslogtreecommitdiffstats
path: root/modules
diff options
context:
space:
mode:
authorKarl 'vollmerk' Vollmer <vollmer@ampache.org>2005-06-21 14:48:21 +0000
committerKarl 'vollmerk' Vollmer <vollmer@ampache.org>2005-06-21 14:48:21 +0000
commita7e50222a51424ac0f101c7abe9f19b1f763b975 (patch)
treeb8b957c7240240912d0beeb6aeae2866f86d38d0 /modules
parent2ea7061ed6d4eb2c45f173f5168956b23b5295ca (diff)
downloadampache-a7e50222a51424ac0f101c7abe9f19b1f763b975.tar.gz
ampache-a7e50222a51424ac0f101c7abe9f19b1f763b975.tar.bz2
ampache-a7e50222a51424ac0f101c7abe9f19b1f763b975.zip
new disabled support
Diffstat (limited to 'modules')
-rw-r--r--modules/class/update.php21
-rw-r--r--modules/class/user.php20
2 files changed, 37 insertions, 4 deletions
diff --git a/modules/class/update.php b/modules/class/update.php
index 5b0578c2..bea76ded 100644
--- a/modules/class/update.php
+++ b/modules/class/update.php
@@ -220,6 +220,10 @@ class Update {
$update_string = "- Added Show bottom menu option.<br />";
$version[] = array('version' => '331002', 'description' => $update_string);
+ $update_string = "- Cleaned up user management.<br />";
+
+ $version[] = array('version' => '331003', 'description' => $update_string);
+
return $version;
@@ -899,5 +903,22 @@ class Update {
} // update_331002
+ function update_331003() {
+
+ /* Add `disabled` column to user table */
+ $sql = "ALTER TABLE `user` ADD `disabled` TINYINT( 1 ) NOT NULL DEFAULT '0' AFTER `access`";
+ $db_results = mysql_query($sql, dbh());
+
+ /* Set `disabled` to '1' to all users that have an access level of 'disabled',
+ * then change their access level to 'user' because an access level of 'disabled'
+ * is now going to cause problems.
+ */
+ $sql = "UPDATE `user` SET `disabled`='1',`access`='user' WHERE `access`='disabled'";
+ $db_results = mysql_query($sql, dbh());
+
+ $this->set_version('db_version','331003');
+
+ } //update 331003
+
} // end update class
?>
diff --git a/modules/class/user.php b/modules/class/user.php
index e5c2771b..d3069651 100644
--- a/modules/class/user.php
+++ b/modules/class/user.php
@@ -33,6 +33,7 @@ class User {
var $id=0;
var $fullname;
var $access;
+ var $disabled;
var $offset_limit=25;
var $email;
var $last_seen;
@@ -51,6 +52,7 @@ class User {
$this->id = $info->id;
$this->fullname = $info->fullname;
$this->access = $info->access;
+ $this->disabled = $info->disabled;
$this->offset_limit = $info->offset_limit;
$this->email = $info->email;
$this->last_seen = $info->last_seen;
@@ -321,7 +323,7 @@ class User {
/* Check for all disable */
if ($new_access == 'disabled') {
- $sql = "SELECT id FROM user WHERE access != 'disabled' AND id != '$this->id'";
+ $sql = "SELECT id FROM user WHERE disabled != '1' AND id != '$this->id'";
$db_results = mysql_query($sql,dbh());
if (!mysql_num_rows($db_results)) { return false; }
}
@@ -333,9 +335,19 @@ class User {
if (!mysql_num_rows($db_results)) { return false; }
}
- $new_access = sql_escape($new_access);
- $sql = "UPDATE user SET access='$new_access' WHERE id='$this->id'";
- $db_results = mysql_query($sql, dbh());
+ if ($new_access == 'enabled') {
+ $new_access = sql_escape($new_access);
+ $sql = "UPDATE user SET disabled='0' WHERE id='$this->id'";
+ $db_results = mysql_query($sql, dbh());
+ } elseif ($new_access == 'disabled') {
+ $new_access = sql_escape($new_access);
+ $sql = "UPDATE user SET disabled='1' WHERE id='$this->id'";
+ $db_results = mysql_query($sql, dbh());
+ } else {
+ $new_access = sql_escape($new_access);
+ $sql = "UPDATE user SET access='$new_access' WHERE id='$this->id'";
+ $db_results = mysql_query($sql, dbh());
+ }
} // update_access