You are here

activity.install in Activity 5.3

Install file for activity module.

File

activity.install
View source
<?php

/**
 * @file
 * Install file for activity module.
 */

/**
 * Implementation of hook_install().
 */
function activity_install() {
  switch ($GLOBALS['db_type']) {
    case 'mysql':
    case 'mysqli':
      db_query("\n        CREATE TABLE {activity} (\n          aid int(11) NOT NULL,\n          module varchar(50) NOT NULL default '',\n          type varchar(25) NOT NULL default '',\n          operation varchar(25) NOT NULL default '',\n          created int(11) NOT NULL,\n          data longtext NOT NULL,\n          PRIMARY KEY (aid),\n          KEY (module),\n          KEY (created)\n        ) /*!40100 DEFAULT CHARACTER SET UTF8 */\n      ");
      db_query("CREATE TABLE {activity_targets} (\n          aid int(11) NOT NULL,\n          target_uid int(11) NOT NULL,\n          target_role varchar(50) NOT NULL default '',\n          PRIMARY KEY (aid, target_uid),\n          KEY (target_uid, target_role),\n          KEY (target_role)\n        ) /*!40100 DEFAULT CHARACTER SET UTF8 */\n      ");
      db_query("ALTER TABLE {variable} CHANGE `name` `name` varchar(128) NOT NULL DEFAULT ''");
      break;
    case 'pgsql':
      db_query("\n        CREATE TABLE {activity} (\n          aid int NOT NULL,\n          module varchar(50) NOT NULL default '',\n          type varchar(25) NOT NULL default '',\n          operation varchar(25) NOT NULL default '',\n          created int NOT NULL,\n          data text NOT NULL,\n          PRIMARY KEY (aid)\n        )");
      db_query("CREATE INDEX {activity}_module_idx ON {activity} (module)");
      db_query("CREATE INDEX {activity}_created_idx ON {activity} (created)");
      db_query("CREATE SEQUENCE {activity}_seq");
      db_query("CREATE TABLE {activity_targets} (\n          aid int NOT NULL,\n          target_uid int NOT NULL,\n          target_role varchar(50) NOT NULL default '',\n          PRIMARY KEY (aid, target_uid)\n        )");
      db_query("CREATE INDEX {activity_targets}_target_uid_target_role_idx ON {activity_targets} (target_uid, target_role)");
      db_query("CREATE INDEX {activity_targets}_target_role_idx ON {activity_targets} (target_role)");
      db_query("ALTER TABLE {variable} ALTER COLUMN name TYPE varchar(128)");
      break;
  }
}

/**
 * Implementation of hook_uninstall().
 */
function activity_uninstall() {
  if (db_table_exists('activity')) {
    db_query("DROP TABLE {activity}");
  }
  if (db_table_exists('activity_targets')) {
    db_query("DROP TABLE {activity_targets}");
  }
  switch ($GLOBALS['db_type']) {
    case 'pgsql':
      db_query("DROP SEQUENCE {activity}_seq");
      break;
  }
}
function activity_update_1() {
  $ret = array();
  switch ($GLOBALS['db_type']) {
    case 'mysql':
    case 'mysqli':
      $ret[] = update_sql('ALTER TABLE {activity} ADD PRIMARY KEY (aid)');
      $ret[] = update_sql('ALTER TABLE {activity} ADD KEY (uid)');
      $ret[] = update_sql('ALTER TABLE {activity} ADD KEY (module)');
      break;
  }
  return $ret;
}

/**
 * Increase the variable name column length to the Drupal 6 default of 128
 * characters.
 */
function activity_update_2() {
  $ret = array();
  $ret[] = update_sql("ALTER TABLE {variable} CHANGE `name` `name` varchar(128) NOT NULL DEFAULT ''");
  return $ret;
}

Functions

Namesort descending Description
activity_install Implementation of hook_install().
activity_uninstall Implementation of hook_uninstall().
activity_update_1
activity_update_2 Increase the variable name column length to the Drupal 6 default of 128 characters.