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]);
    }
  }
}