*/ function generateSalt($max = 15) { $characterList = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"; $i = 0; $salt = ""; do { $salt .= $characterList{mt_rand(0,strlen($characterList))}; $i++; } while ($i <= $max); return $salt; } function changepassword($username,$password) { $encrypted = crypt($password,'$1$' . generateSalt(8).'$'); return dbUpdate(array('password' => $encrypted), 'users', '`username` = ?', array($username)); } function auth_usermanagement() { return 1; } function adduser($username, $password, $level, $email = "", $realname = "", $can_modify_passwd='1') { if (!user_exists($username)) { $encrypted = crypt($password,'$1$' . generateSalt(8).'$'); return dbInsert(array('username' => $username, 'password' => $encrypted, 'level' => $level, 'email' => $email, 'realname' => $realname, 'can_modify_passwd' => $can_modify_passwd), 'users'); } else { return FALSE; } } function user_exists($username) { return @dbFetchCell("SELECT COUNT(*) FROM users WHERE username = ?", array($username)); } function get_userlevel($username) { return dbFetchCell("SELECT `level` FROM `users` WHERE `username` = ?", array($username)); } function get_userid($username) { return dbFetchCell("SELECT `user_id` FROM `users` WHERE `username` = ?", array($username)); } function deluser($username) { dbDelete('bill_perms', "`user_name` = ?", array($username)); dbDelete('devices_perms', "`user_name` = ?", array($username)); dbDelete('ports_perms', "`user_name` = ?", array($username)); dbDelete('users_prefs', "`user_name` = ?", array($username)); dbDelete('users', "`user_name` = ?", array($username)); return dbDelete('users', "`username` = ?", array($username)); } ?>