You are here

function realname_registration_get_fname in Realname registration 6.2

Implementation of realname_registration_get_fname();

Determine where the first name values are located and return the first name.

Parameters

&$account: The user object on which the operation is being performed.

1 call to realname_registration_get_fname()
realname_registration_token_values in ./realname_registration.module
Implementation of hook_tokens().

File

./realname_registration.module, line 601
For using real names during registration.

Code

function realname_registration_get_fname($account) {
  $c = realname_registration_load_settings();
  if (module_exists('content_profile_registration')) {
    $content_profile_type_count = db_result(db_query("\n      SELECT COUNT(DISTINCT type_name) FROM {content_node_field_instance}\n      WHERE field_name = '%s'", $c->fname->field));
  }
  if (!$c->fname->use_content_profile) {
    $firstname = db_result(db_query("\n      SELECT profile_values.value\n      FROM {profile_values}\n      INNER JOIN {profile_fields}\n      ON profile_values.fid = profile_fields.fid\n      WHERE profile_fields.name = '%s'\n      AND profile_values.uid = %d", $c->fname->field, $account->uid));
  }
  else {
    if ($content_profile_type_count > 1) {
      $firstname = db_result(db_query("\n        SELECT %s\n        FROM {node} AS n\n        LEFT JOIN {content_%s} AS c\n        ON n.nid = c.nid\n        WHERE n.uid = %d\n        AND n.type = '%s'\n        LIMIT 0, 1", $c->fname->field . '_value', $c->fname->field, $account->uid, $c->fname->content_node));
    }
    else {
      $firstname = db_result(db_query("\n        SELECT %s\n        FROM {content_type_%s} AS c\n        LEFT JOIN {node} AS n\n        ON c.nid =  n.nid\n        WHERE n.uid = %d\n        LIMIT 0, 1", $c->fname->field . '_value', $c->fname->content_node, $account->uid));
    }
  }
  return $firstname;
}