You are here

function activity_install in Activity 5.3

Same name and namespace in other branches
  1. 5.4 activity.install \activity_install()
  2. 5 activity.install \activity_install()
  3. 5.2 activity.install \activity_install()
  4. 6.2 activity.install \activity_install()
  5. 6 activity.install \activity_install()
  6. 7 activity.install \activity_install()

Implementation of hook_install().

File

./activity.install, line 11
Install file for activity module.

Code

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;
  }
}