function node_update_7000

Upgrade the node type table and fix node type 'module' attribute to avoid name-space conflicts.

Related topics

Archivo

drupal-7.x/modules/node/node.install, line 510
Install, update and uninstall functions for the node module.

Código

function node_update_7000() {
  // Rename the module column to base.
  db_change_field('node_type', 'module', 'base', array('type' => 'varchar', 'length' => 255, 'not null' => TRUE));

  db_add_field('node_type', 'module', array(
    'description' => 'The module defining this node type.',
    'type' => 'varchar',
    'default' => '',
    'length' => 255,
    'not null' => TRUE,
  ));

  db_add_field('node_type', 'disabled', array(
    'description' => 'A boolean indicating whether the node type is disabled.',
    'type' => 'int',
    'not null' => TRUE,
    'default' => 0,
    'size' => 'tiny',
  ));

  $modules = db_select('system', 's')->fields('s', array('name'))->condition('type', 'module');
  db_update('node_type')->expression('module', 'base')->condition('base', $modules, 'IN')->execute();

  db_update('node_type')->fields(array('base' => 'node_content'))->condition('base', 'node')->execute();
}