function hybridauth_bonus_form_hybridauth_admin_settings_alter in HybridAuth Social Login 7.2
Implements hook_form_FORM_ID_alter().
File
- hybridauth_bonus/
hybridauth_bonus.module, line 10 - Main file for the HybridAuth Bonus module.
Code
function hybridauth_bonus_form_hybridauth_admin_settings_alter(&$form, &$form_state, $form_id) {
$roles = user_roles(TRUE);
unset($roles[DRUPAL_AUTHENTICATED_RID]);
if ($roles) {
$form['vtabs']['fset_bonus_roles'] = array(
'#type' => 'fieldset',
'#title' => t('HybridAuth Bonus') . ': ' . t('Roles'),
);
$form['vtabs']['fset_bonus_roles']['hybridauth_bonus_registration_role_choice'] = array(
'#type' => 'checkbox',
'#title' => t('Suggest role choice when registering'),
'#description' => t('Allow users to choose their roles when registering through HybridAuth.'),
'#default_value' => variable_get('hybridauth_bonus_registration_role_choice', 0),
);
$form['vtabs']['fset_bonus_roles']['hybridauth_bonus_registration_roles'] = array(
'#type' => 'checkboxes',
'#title' => t('Roles to choose from'),
'#description' => t('Select roles to suggest to new users when registering through HybridAuth.'),
'#options' => $roles,
'#default_value' => variable_get('hybridauth_bonus_registration_roles', array()),
'#states' => array(
'visible' => array(
':input[name="hybridauth_bonus_registration_role_choice"]' => array(
'checked' => TRUE,
),
),
),
);
$form['vtabs']['fset_bonus_roles']['hybridauth_bonus_registration_roles_required'] = array(
'#type' => 'checkbox',
'#title' => t('Make role selection required'),
'#description' => t('Force users to select a role when registering through HybridAuth.'),
'#default_value' => variable_get('hybridauth_bonus_registration_roles_required', 0),
'#states' => array(
'visible' => array(
':input[name="hybridauth_bonus_registration_role_choice"]' => array(
'checked' => TRUE,
),
),
),
);
$form['vtabs']['fset_bonus_roles']['hybridauth_bonus_registration_roles_multiple'] = array(
'#type' => 'checkbox',
'#title' => t('Allow several roles selection'),
'#description' => t('Allow users to select several roles when registering through HybridAuth.'),
'#default_value' => variable_get('hybridauth_bonus_registration_roles_multiple', 1),
'#states' => array(
'visible' => array(
':input[name="hybridauth_bonus_registration_role_choice"]' => array(
'checked' => TRUE,
),
),
),
);
}
$form['vtabs']['fset_bonus_forms'] = array(
'#type' => 'fieldset',
'#title' => t('HybridAuth Bonus') . ': ' . t('Forms'),
);
$form['vtabs']['fset_bonus_forms']['hybridauth_bonus_customize_widget_per_form'] = array(
'#type' => 'checkbox',
'#title' => t('Customize HybridAuth widget per form'),
'#default_value' => variable_get('hybridauth_bonus_customize_widget_per_form', 0),
);
foreach (hybridauth_forms_list() as $f_id => $f_name) {
$form['vtabs']['fset_bonus_forms'][$f_id] = array(
'#type' => 'fieldset',
'#title' => $f_name,
'#collapsible' => TRUE,
'#collapsed' => TRUE,
'#states' => array(
'visible' => array(
':input[name="hybridauth_bonus_customize_widget_per_form"]' => array(
'checked' => TRUE,
),
),
),
);
foreach (element_children($form['vtabs']['fset_widget']) as $key) {
$value = $form['vtabs']['fset_widget'][$key];
$new_key = str_replace('hybridauth_', 'hybridauth_bonus_', $key) . '_' . $f_id;
$form['vtabs']['fset_bonus_forms'][$f_id][$new_key] = $value;
$form['vtabs']['fset_bonus_forms'][$f_id][$new_key]['#default_value'] = variable_get($new_key, $value['#default_value']);
if ($key == 'hybridauth_widget_use_overlay' || $key == 'hybridauth_widget_link_title') {
$form['vtabs']['fset_bonus_forms'][$f_id][$new_key]['#states'] = array(
'invisible' => array(
':input[name="hybridauth_bonus_widget_type_' . $f_id . '"]' => array(
'value' => 'list',
),
),
);
}
if ($key == 'hybridauth_widget_link_text') {
$form['vtabs']['fset_bonus_forms'][$f_id][$new_key]['#states'] = array(
'visible' => array(
':input[name="hybridauth_bonus_widget_type_' . $f_id . '"]' => array(
'value' => 'link',
),
),
);
}
}
}
}