You are here

function _hybridauth_make_username in HybridAuth Social Login 6.2

Same name and namespace in other branches
  1. 7.2 hybridauth.module \_hybridauth_make_username()
2 calls to _hybridauth_make_username()
hybridauth_additional_info_form in ./hybridauth.pages.inc
_hybridauth_window_process_auth in ./hybridauth.pages.inc
Handle the Drupal authentication.

File

./hybridauth.module, line 588
Main file for the HybridAuth module.

Code

function _hybridauth_make_username($data) {
  if (empty($data['username'])) {
    $pattern = variable_get('hybridauth_username', '[firstName] [lastName]');
    $hybridauth_name = $desired_name = trim(token_replace($pattern, 'hybridauth', $data, '[', ']', array(
      'clear' => TRUE,
    )));
  }
  else {
    $hybridauth_name = $desired_name = trim($data['username']);
  }
  $counter = 0;
  while (user_load(array(
    'name' => $hybridauth_name,
  ))) {
    $counter++;
    $hybridauth_name = $desired_name . ' ' . $counter;
  }
  $name = $hybridauth_name;
  drupal_alter('hybridauth_username', $name, $data);

  //check that the altered username is unique
  if ($name == $hybridauth_name || user_load(array(
    'name' => $name,
  ))) {
    return $hybridauth_name;
  }
  else {
    return $name;
  }
}