function field_test_field_storage_delete_revision

Implements hook_field_storage_delete_revision().

File

modules/field/tests/field_test.storage.inc, line 225

Code

function field_test_field_storage_delete_revision($entity_type, $entity, $fields) {
    $data = _field_test_storage_data();
    list($id, $vid, $bundle) = entity_extract_ids($entity_type, $entity);
    foreach ($fields as $field_id) {
        $field_data =& $data[$field_id];
        foreach (array(
            'current',
            'revisions',
        ) as $sub_table) {
            foreach ($field_data[$sub_table] as $key => $row) {
                if ($row->type == $entity_type && $row->entity_id == $id && $row->revision_id == $vid) {
                    unset($field_data[$sub_table][$key]);
                }
            }
        }
    }
    _field_test_storage_data($data);
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.