updated serial field
This commit is contained in:
@@ -7,7 +7,7 @@
|
||||
/**
|
||||
* Implements hook_field_schema().
|
||||
*/
|
||||
function serial_field_schema($field) {
|
||||
function serial_field_schema(array $field) {
|
||||
$columns = array();
|
||||
|
||||
switch ($field['type']) {
|
||||
@@ -37,7 +37,7 @@ function serial_schema() {
|
||||
$schema = array();
|
||||
|
||||
foreach (_serial_get_all_fields() as $field) {
|
||||
$schema[_serial_get_table_name($field->bundle, $field->field_name)] = $table_schema;
|
||||
$schema[_serial_get_table_name($field->entity_type, $field->bundle, $field->field_name)] = $table_schema;
|
||||
}
|
||||
|
||||
// Return the schema of all the assistant tables (one per field instance).
|
||||
@@ -57,7 +57,7 @@ function serial_update_7130() {
|
||||
// Update the schema of old assistant tables.
|
||||
foreach (_serial_get_all_fields() as $field) {
|
||||
// Empty the table.
|
||||
$table = _serial_get_table_name($field->bundle, $field->field_name);
|
||||
$table = _serial_get_table_name($field->entity_type, $field->bundle, $field->field_name);
|
||||
db_delete($table)->execute();
|
||||
|
||||
// Drop nid field and key.
|
||||
@@ -69,3 +69,30 @@ function serial_update_7130() {
|
||||
db_add_unique_key($table, 'uniqid', array('uniqid'));
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Add 'node_' to all existing serial tables.
|
||||
*
|
||||
* Change name:
|
||||
* from: serial_{content_type}_{field_name}
|
||||
* to: serial_node_{content_type}_{field_name}
|
||||
*/
|
||||
function serial_update_7131() {
|
||||
// All old serial tables are of 'node' entity type.
|
||||
foreach (db_find_tables('serial_%') as $table) {
|
||||
db_rename_table($table, preg_replace('/^serial_/', 'serial_node_', $table));
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Reorganize table names to prevent collisions with long names.
|
||||
*/
|
||||
function serial_update_7132() {
|
||||
module_load_include('inc', 'serial');
|
||||
|
||||
foreach (db_find_tables('serial_%') as $table) {
|
||||
// Explode by underscores and match old format.
|
||||
list(, $entity_type, $bundle, $field_name) = explode('_', $table, 4);
|
||||
db_rename_table($table, _serial_get_table_name($entity_type, $bundle, $field_name));
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user