You are here

function block_class_update_7103 in Block Class 7.2

Migration from block_class table to new field css_class in core block table.

File

./block_class.install, line 129
Install, update and uninstall functions for the block_class module.

Code

function block_class_update_7103() {
  if (!db_field_exists('block', 'block_class')) {
    $schema['block'] = array();
    block_class_schema_alter($schema);
    foreach ($schema['block']['fields'] as $field => $specs) {
      db_add_field('block', $field, $specs);
    }
  }
  if (db_table_exists('block_class')) {

    // Migrate all existing records from block_class table to block table.
    $result = db_query('SELECT css_class, module, delta FROM {block_class}');
    while ($record = $result
      ->fetchObject()) {
      db_update('block')
        ->fields(array(
        'css_class' => $record->css_class,
      ))
        ->condition('module', $record->module)
        ->condition('delta', $record->delta)
        ->execute();
    }

    // Remove the block_class table.
    db_drop_table('block_class');
  }
}