function ulogin_user_identity in uLogin (advanced version) 7
Same name and namespace in other branches
- 6 ulogin.pages.inc \ulogin_user_identity()
1 string reference to 'ulogin_user_identity'
- ulogin_menu in ./
ulogin.module - Implements hook_menu().
File
- ./
ulogin.pages.inc, line 98
Code
function ulogin_user_identity($form, &$form_state, $account) {
drupal_set_title(format_username($account));
$identities = _ulogin_identity_load_by_uid($account->uid);
$providers = _ulogin_providers_list();
$header = array(
t('Authentication provider'),
t('Identity'),
t('Delete'),
);
$rows = array();
$data_array = array();
foreach ($identities as $identity) {
$data = unserialize($identity['data']);
$data_array[] = $data;
$rows[] = array(
$providers[$data['network']],
l($data['identity'], $data['identity'], array(
'attributes' => array(
'target' => '_blank',
),
'external' => TRUE,
)),
l(t('Delete'), 'user/' . $account->uid . '/ulogin/delete/' . $identity['id']),
);
}
$form = array();
$form['identity'] = array(
'#theme' => 'table',
'#header' => $header,
'#rows' => $rows,
'#empty' => t('You don\'t have any identities yet.'),
);
//add more identities
if (user_access('use ulogin')) {
$form['ulogin_widget'] = array(
'#type' => 'ulogin_widget',
'#title' => t('Add more identities'),
'#weight' => 10,
'#ulogin_destination' => '',
);
}
//tokens browser for admins
if (user_access('administer site configuration') || user_access('administer users')) {
$form['vtabs'] = array(
'#type' => 'vertical_tabs',
'#weight' => 20,
);
$header = array(
t('Token'),
t('Value'),
);
//user tokens
if (!empty($account->data['ulogin'])) {
$form['vtabs']['fset_user_tokens'] = array(
'#type' => 'fieldset',
'#title' => t('User tokens'),
);
$rows = array();
foreach ($account->data['ulogin'] as $key => $value) {
if (!in_array($key, array(
'manual',
'ulogin',
))) {
$rows[] = array(
'[user:ulogin:' . $key . ']',
$value,
);
}
}
$form['vtabs']['fset_user_tokens']['tokens'] = array(
'#theme' => 'table',
'#header' => $header,
'#rows' => $rows,
);
}
//data from auth providers
foreach ($data_array as $data) {
$form['vtabs']['fset_' . $data['network'] . '_' . $data['uid']] = array(
'#type' => 'fieldset',
'#title' => $providers[$data['network']],
);
$rows = array();
foreach ($data as $key => $value) {
$rows[] = array(
$key,
$value,
);
}
$form['vtabs']['fset_' . $data['network'] . '_' . $data['uid']]['tokens'] = array(
'#theme' => 'table',
'#header' => $header,
'#rows' => $rows,
);
}
}
return $form;
}