1 field_test.storage.inc | field_test_field_attach_rename_bundle($bundle_old, $bundle_new) |
Implements hook_field_attach_rename_bundle().
File
- core/
modules/ field/ tests/ field_test/ field_test.storage.inc, line 427 - Defines a field storage backend.
Code
function field_test_field_attach_rename_bundle($bundle_old, $bundle_new) {
$data = _field_test_storage_data();
// We need to account for deleted or inactive fields and instances.
$instances = field_read_instances(array('bundle' => $bundle_new), array('include_deleted' => TRUE, 'include_inactive' => TRUE));
foreach ($instances as $field_name => $instance) {
$field = field_info_field($field_name);
if ($field['storage']['type'] == 'field_test_storage') {
$field_data = &$data[$field['field_name']];
foreach (array('current', 'revisions') as $sub_table) {
foreach ($field_data[$sub_table] as &$row) {
if ($row->bundle == $bundle_old) {
$row->bundle = $bundle_new;
}
}
}
}
}
_field_test_storage_data($data);
}