function field_group_field_ui_clone_field_groups_validate in Field Group 7
Same name and namespace in other branches
- 8.3 includes/field_ui.inc \field_group_field_ui_clone_field_groups_validate()
- 8 includes/field_ui.inc \field_group_field_ui_clone_field_groups_validate()
Validate handler to validate saving existing fieldgroups from one view mode or form to another.
1 string reference to 'field_group_field_ui_clone_field_groups_validate'
- field_group_field_ui_create_vertical_tabs in ./
field_group.field_ui.inc - Create vertical tabs.
File
- ./
field_group.field_ui.inc, line 899 - Field_group.field_ui.inc is a file that contains most functions needed on the Fields UI Manage forms (display and fields).
Code
function field_group_field_ui_clone_field_groups_validate($form, &$form_state) {
$source_mode = $form_state['#source_mode'] = $form_state['values']['additional_settings']['fieldgroup_clone'] == '0' ? 'form' : $form_state['values']['additional_settings']['fieldgroup_clone'];
$groups_to_clone = $form_state['#groups_to_clone'] = field_group_read_groups(array(
'bundle' => $form_state['field_group_params']->bundle,
'entity_type' => $form_state['field_group_params']->entity_type,
));
$form_state['#source_groups'] = array();
if (!empty($groups_to_clone) && isset($groups_to_clone[$form_state['field_group_params']->entity_type], $groups_to_clone[$form_state['field_group_params']->entity_type][$form_state['field_group_params']->bundle], $groups_to_clone[$form_state['field_group_params']->entity_type][$form_state['field_group_params']->bundle][$source_mode])) {
$form_state['#source_groups'] = $groups_to_clone[$form_state['field_group_params']->entity_type][$form_state['field_group_params']->bundle][$source_mode];
}
// Check for types are not known in current mode.
if ($form_state['field_group_params']->mode != 'form') {
$non_existing_types = array(
'multipage',
'multipage-group',
);
}
else {
$non_existing_types = array(
'div',
);
}
foreach ($form_state['#source_groups'] as $key => $group) {
if (in_array($group->format_type, $non_existing_types)) {
unset($form_state['#source_groups'][$key]);
drupal_set_message(t('Skipping @group because this type does not exist in current mode', array(
'@group' => $group->label,
)), 'warning');
}
}
if (empty($form_state['#source_groups'])) {
// Report error found with selection.
form_set_error('additional_settings][fieldgroup_clone', t('No field groups were found in selected view mode.'));
return;
}
}