You are here

page_title.install in Page Title 7

File

page_title.install
View source
<?php

/**
 * Implementation of hook_install().
 */
function page_title_install() {
  drupal_install_schema('page_title');
}
function page_title_schema() {
  $schema['page_title'] = array(
    'fields' => array(
      'type' => array(
        'type' => 'varchar',
        'length' => 15,
        'not null' => TRUE,
        'default' => 'node',
      ),
      'id' => array(
        'type' => 'int',
        'unsigned' => TRUE,
        'not null' => TRUE,
        'default' => 0,
      ),
      'page_title' => array(
        'type' => 'varchar',
        'length' => 255,
        'not null' => TRUE,
        'default' => '',
      ),
    ),
    'primary key' => array(
      'type',
      'id',
    ),
  );
  return $schema;
}

/**
 * Implementation of hook_update_n().
 */
function page_title_update_6200() {
  $ret = array();
  if (db_column_exists('page_title', 'id')) {
    return $ret;
  }
  db_create_table($ret, 'page_title_temp', array(
    'fields' => array(
      'type' => array(
        'type' => 'varchar',
        'length' => 15,
        'not null' => TRUE,
        'default' => 'node',
      ),
      'id' => array(
        'type' => 'int',
        'unsigned' => TRUE,
        'not null' => TRUE,
        'default' => 0,
      ),
      'page_title' => array(
        'type' => 'varchar',
        'length' => 255,
        'not null' => TRUE,
        'default' => '',
      ),
    ),
    'primary key' => array(
      'type',
      'id',
    ),
  ));
  $ret[] = update_sql('INSERT INTO {page_title_temp} (id, page_title) SELECT nid, page_title FROM {page_title}');
  db_rename_table($ret, 'page_title', 'page_title_old');
  db_rename_table($ret, 'page_title_temp', 'page_title');
  $display_settings = variable_get('page_title_display', array());
  foreach ($display_settings as $type) {
    if ($type) {
      variable_set('page_title_type_' . $type . '_showfield', 1);
    }
  }
  variable_del('page_title_display');
  return $ret;
}

/**
 * Implementation of hook_uninstall().
 */
function page_title_uninstall() {
  drupal_uninstall_schema('page_title');

  // Clear variables
  variable_del('page_title_default');
  variable_del('page_title_individual');
  variable_del('page_title_front');
  variable_del('page_title_blog');
  variable_del('page_title_user');
  variable_del('page_title_user_showfield');
  variable_del('page_title_pager_pattern');

  // Clear the node specific variables
  $types = node_type_get_names();
  foreach ($types as $type => $name) {
    variable_del("page_title_type_{$type}");
    variable_del("page_title_type_{$type}_showfield");
  }

  // Clear the vocab specific variables
  if (module_exists('taxonomy')) {
    $vocabs = taxonomy_get_vocabularies();
    foreach ($vocabs as $vid => $vocab) {
      variable_del("page_title_vocab_{$vid}");
      variable_del("page_title_vocab_{$vid}_showfield");
    }
  }
}

Functions

Namesort descending Description
page_title_install Implementation of hook_install().
page_title_schema
page_title_uninstall Implementation of hook_uninstall().
page_title_update_6200 Implementation of hook_update_n().