function field_group_field_ui_clone_field_groups in Field Group 7
Same name and namespace in other branches
- 8.3 includes/field_ui.inc \field_group_field_ui_clone_field_groups()
- 8 includes/field_ui.inc \field_group_field_ui_clone_field_groups()
- 7.2 field_group.field_ui.inc \field_group_field_ui_clone_field_groups()
Submit handler to save existing fieldgroups from one view mode or form to another.
1 string reference to 'field_group_field_ui_clone_field_groups'
- field_group_field_ui_create_vertical_tabs in ./
field_group.field_ui.inc - Create vertical tabs.
File
- ./
field_group.field_ui.inc, line 935 - 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($form, &$form_state) {
$source_mode = $form_state['#source_mode'];
$groups_to_clone = $form_state['#groups_to_clone'];
$fields = array_keys($form_state['values']['fields']);
if (!empty($form_state['#source_groups'])) {
foreach ($form_state['#source_groups'] as $source_group) {
if (in_array($source_group->group_name, $fields)) {
drupal_set_message(t('Fieldgroup @group is not cloned since a group already exists with the same name.', array(
'@group' => $source_group->group_name,
)), 'warning');
continue;
}
// Recreate the identifier and reset the id.
$source_group->id = NULL;
$source_group->mode = $form_state['field_group_params']->mode;
$source_group->identifier = $source_group->group_name . '|' . $source_group->entity_type . '|' . $source_group->bundle . '|' . $form_state['field_group_params']->mode;
$source_group->disabled = FALSE;
$source_group->children = array();
unset($source_group->export_type, $source_group->type, $source_group->table);
// Save and enable it in ctools.
ctools_include('export');
ctools_export_crud_save('field_group', $source_group);
ctools_export_crud_enable('field_group', $source_group->identifier);
drupal_set_message(t('Fieldgroup @group cloned successfully.', array(
'@group' => $source_group->group_name,
)));
}
}
}