Skip to content
Snippets Groups Projects

Issue #2402247: Migrate translation for enable revision

1 file
+ 35
0
Compare changes
  • Side-by-side
  • Inline
+ 35
0
@@ -498,3 +498,38 @@ function entity_translation_update_7009() {
db_query($query, array(':et_mode' => 32768, ':names' => $names));
}
}
/**
* Ensure every entity translation entry has a revision id.
*/
function entity_translation_update_7010() {
$result = db_select('entity_translation')
->fields('entity_translation', array('entity_id'))
->condition('revision_id')
->execute();
if ($result->rowCount()) {
$ids = array_keys($result->fetchAllAssoc('entity_id'));
foreach ($ids as $id) {
db_update('entity_translation')->fields(array('revision_id' => $id))->condition('entity_id', $id)->execute();
}
}
}
/**
* Copy translation metadata to the {entity_translation_revision} table.
*/
function entity_translation_update_7011() {
$query = db_select('entity_translation_revision');
$query->fields('entity_translation_revision', array('entity_id'))->countQuery();
$count = $query->execute()->fetchCol();
if ($count) {
drupal_set_message(t('Unable to copy translation metadata to the entity_translation_revision table because it is not empty. If you have already copied the metadata manually or are updating from a freshly installed 7.x-1.0-beta4, you have nothing to worry about.'), 'warning');
}
else {
$schema_info = entity_translation_schema();
$fields = array_keys($schema_info['entity_translation']['fields']);
$select_query = db_select('entity_translation')->fields('entity_translation', $fields);
db_insert('entity_translation_revision')->from($select_query)->execute();
}
}
Loading