function user_set_authmaps
7.x user.module | user_set_authmaps($account, $authmaps) |
6.x user.module | user_set_authmaps($account, $authmaps) |
Save mappings of which external authentication module(s) authenticated a user. Maps external usernames to user ids in the users table.
Parameters
$account: A user object.
$authmaps: An associative array with a compound key and the username as the value. The key is made up of 'authname_' plus the name of the external authentication module.
See also
user_external_login_register()
1 call to user_set_authmaps()
- user_save in drupal-6.x/
modules/ user/ user.module - Save changes to a user account or add a new user.
File
- drupal-6.x/
modules/ user/ user.module, line 1267 - Enables the user registration and login system.
Code
function user_set_authmaps($account, $authmaps) {
foreach ($authmaps as $key => $value) {
$module = explode('_', $key, 2);
if ($value) {
db_query("UPDATE {authmap} SET authname = '%s' WHERE uid = %d AND module = '%s'", $value, $account->uid, $module[1]);
if (!db_affected_rows()) {
@db_query("INSERT INTO {authmap} (authname, uid, module) VALUES ('%s', %d, '%s')", $value, $account->uid, $module[1]);
}
}
else {
db_query("DELETE FROM {authmap} WHERE uid = %d AND module = '%s'", $account->uid, $module[1]);
}
}
}