function ulogin_element_info in uLogin (advanced version) 7
Implements hook_element_info().
File
- ./
ulogin.module, line 206 - Main file for the uLogin module.
Code
function ulogin_element_info() {
$types = array();
$enabled_providers = array_filter(variable_get('ulogin_providers_enabled', drupal_map_assoc(array(
'vkontakte',
'odnoklassniki',
'mailru',
'facebook',
'twitter',
'google',
'yandex',
'livejournal',
'openid',
))));
$main_providers = array_filter(variable_get('ulogin_providers_main', drupal_map_assoc(array(
'vkontakte',
'odnoklassniki',
'mailru',
'facebook',
))));
$required_fields = array_filter(variable_get('ulogin_fields_required', drupal_map_assoc(array(
'first_name',
'last_name',
'email',
'nickname',
'bdate',
'sex',
'photo',
'photo_big',
'country',
'city',
))));
$optional_fields = array_filter(variable_get('ulogin_fields_optional', drupal_map_assoc(array(
'phone',
))));
$types['ulogin_widget'] = array(
'#input' => FALSE,
'#pre_render' => array(
'ulogin_widget_pre_render',
),
'#theme' => 'ulogin_widget',
'#theme_wrappers' => array(
'form_element',
),
'#ulogin_id' => 'ulogin',
'#ulogin_widget_id' => variable_get('ulogin_widget_id', ''),
'#title' => variable_get('ulogin_widget_title', ''),
'#weight' => variable_get('ulogin_widget_weight', -100),
'#ulogin_display' => variable_get('ulogin_display', 'panel'),
'#ulogin_fields_required' => implode(',', $required_fields),
'#ulogin_fields_optional' => implode(',', $optional_fields),
'#ulogin_providers' => implode(',', array_intersect_assoc($main_providers, $enabled_providers)),
'#ulogin_hidden' => implode(',', array_diff_assoc($enabled_providers, $main_providers)),
'#ulogin_destination' => variable_get('ulogin_destination', ''),
'#ulogin_redirect' => variable_get('ulogin_redirect', 0),
'#ulogin_icons_path' => variable_get('ulogin_icons_path', ''),
'#ulogin_icons' => array(),
'#attached' => array(
'js' => array(
drupal_get_path('module', 'ulogin') . '/js/ulogin.async.js' => array(
'type' => 'file',
),
),
),
);
return $types;
}