Commit 39706e3c authored by Dries's avatar Dries

- Patch #150245 by webchick, bjaspan, ralf, Arancaytar et al: move the .schema...

- Patch #150245 by webchick, bjaspan, ralf, Arancaytar et al: move the .schema files into .install files to prevent mistakes.
parent d568128b
......@@ -3,7 +3,7 @@
#
# Protect files and directories from prying eyes.
<FilesMatch "\.(engine|inc|info|install|module|profile|po|schema|sh|.*sql|theme|tpl(\.php)?|xtmpl)$|^(code-style\.pl|Entries.*|Repository|Root|Tag|Template)$">
<FilesMatch "\.(engine|inc|info|install|module|profile|po|sh|.*sql|theme|tpl(\.php)?|xtmpl)$|^(code-style\.pl|Entries.*|Repository|Root|Tag|Template)$">
Order allow,deny
</FilesMatch>
......
......@@ -2869,8 +2869,8 @@ function drupal_get_schema($name = NULL, $rebuild = FALSE) {
}
// Otherwise, rebuild the schema cache.
else {
// Load the .schema files.
module_load_all_includes('schema');
// Load the .install files to get hook_schema.
module_load_all_includes('install');
// Invoke hook_schema for all modules.
foreach (module_implements('schema') as $module) {
......@@ -2960,8 +2960,8 @@ function drupal_uninstall_schema($module) {
* is returned.
*/
function drupal_get_schema_unprocessed($module, $table = NULL) {
// Load the .schema file.
module_load_include('schema', $module);
// Load the .install file to get hook_schema.
module_load_include('install', $module);
$schema = module_invoke($module, 'schema');
if (!is_null($table) && isset($schema[$table])) {
......
......@@ -331,7 +331,7 @@ function db_escape_table($string) {
*
* A Drupal schema definition is an array structure representing one or
* more tables and their related keys and indexes. A schema is defined by
* hook_schema(), which usually lives in a modulename.schema file.
* hook_schema(), which usually lives in a modulename.install file.
*
* By implementing hook_schema() and specifying the tables your module
* declares, you can easily create and drop these tables on all
......
......@@ -21,3 +21,74 @@ function aggregator_uninstall() {
variable_del('aggregator_clear');
variable_del('aggregator_category_selector');
}
/**
* Implementation of hook_schema().
*/
function aggregator_schema() {
$schema['aggregator_category'] = array(
'fields' => array(
'cid' => array('type' => 'serial', 'not null' => TRUE),
'title' => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''),
'description' => array('type' => 'text', 'not null' => TRUE, 'size' => 'big'),
'block' => array('type' => 'int', 'not null' => TRUE, 'default' => 0, 'size' => 'tiny')
),
'primary key' => array('cid'),
'unique keys' => array('title' => array('title')),
);
$schema['aggregator_category_feed'] = array(
'fields' => array(
'fid' => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
'cid' => array('type' => 'int', 'not null' => TRUE, 'default' => 0)
),
'primary key' => array('fid', 'cid'),
);
$schema['aggregator_category_item'] = array(
'fields' => array(
'iid' => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
'cid' => array('type' => 'int', 'not null' => TRUE, 'default' => 0)
),
'primary key' => array('iid', 'cid'),
);
$schema['aggregator_feed'] = array(
'fields' => array(
'fid' => array('type' => 'serial', 'not null' => TRUE),
'title' => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''),
'url' => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''),
'refresh' => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
'checked' => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
'link' => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''),
'description' => array('type' => 'text', 'not null' => TRUE, 'size' => 'big'),
'image' => array('type' => 'text', 'not null' => TRUE, 'size' => 'big'),
'etag' => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''),
'modified' => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
'block' => array('type' => 'int', 'not null' => TRUE, 'default' => 0, 'size' => 'tiny')
),
'unique keys' => array(
'url' => array('url'),
'title' => array('title')
),
'primary key' => array('fid'),
);
$schema['aggregator_item'] = array(
'fields' => array(
'iid' => array('type' => 'serial', 'not null' => TRUE),
'fid' => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
'title' => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''),
'link' => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''),
'author' => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''),
'description' => array('type' => 'text', 'not null' => TRUE, 'size' => 'big'),
'timestamp' => array('type' => 'int', 'not null' => FALSE),
'guid' => array('type' => 'varchar', 'length' => 255, 'not null' => FALSE)
),
'indexes' => array('fid' => array('fid')),
'primary key' => array('iid'),
);
return $schema;
}
<?php
// $Id$
function aggregator_schema() {
$schema['aggregator_category'] = array(
'fields' => array(
'cid' => array('type' => 'serial', 'not null' => TRUE),
'title' => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''),
'description' => array('type' => 'text', 'not null' => TRUE, 'size' => 'big'),
'block' => array('type' => 'int', 'not null' => TRUE, 'default' => 0, 'size' => 'tiny')
),
'primary key' => array('cid'),
'unique keys' => array('title' => array('title')),
);
$schema['aggregator_category_feed'] = array(
'fields' => array(
'fid' => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
'cid' => array('type' => 'int', 'not null' => TRUE, 'default' => 0)
),
'primary key' => array('fid', 'cid'),
);
$schema['aggregator_category_item'] = array(
'fields' => array(
'iid' => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
'cid' => array('type' => 'int', 'not null' => TRUE, 'default' => 0)
),
'primary key' => array('iid', 'cid'),
);
$schema['aggregator_feed'] = array(
'fields' => array(
'fid' => array('type' => 'serial', 'not null' => TRUE),
'title' => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''),
'url' => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''),
'refresh' => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
'checked' => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
'link' => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''),
'description' => array('type' => 'text', 'not null' => TRUE, 'size' => 'big'),
'image' => array('type' => 'text', 'not null' => TRUE, 'size' => 'big'),
'etag' => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''),
'modified' => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
'block' => array('type' => 'int', 'not null' => TRUE, 'default' => 0, 'size' => 'tiny')
),
'unique keys' => array(
'url' => array('url'),
'title' => array('title')
),
'primary key' => array('fid'),
);
$schema['aggregator_item'] = array(
'fields' => array(
'iid' => array('type' => 'serial', 'not null' => TRUE),
'fid' => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
'title' => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''),
'link' => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''),
'author' => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''),
'description' => array('type' => 'text', 'not null' => TRUE, 'size' => 'big'),
'timestamp' => array('type' => 'int', 'not null' => FALSE),
'guid' => array('type' => 'varchar', 'length' => 255, 'not null' => FALSE)
),
'indexes' => array('fid' => array('fid')),
'primary key' => array('iid'),
);
return $schema;
}
<?php
// $Id$
function block_schema() {
$schema['blocks'] = array(
'fields' => array(
'bid' => array('type' => 'serial', 'not null' => TRUE),
'module' => array('type' => 'varchar', 'length' => 64, 'not null' => TRUE, 'default' => ''),
'delta' => array('type' => 'varchar', 'length' => 32, 'not null' => TRUE, 'default' => '0'),
'theme' => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''),
'status' => array('type' => 'int', 'not null' => TRUE, 'default' => 0, 'size' => 'tiny'),
'weight' => array('type' => 'int', 'not null' => TRUE, 'default' => 0, 'size' => 'tiny'),
'region' => array('type' => 'varchar', 'length' => 64, 'not null' => TRUE, 'default' => 'left'),
'custom' => array('type' => 'int', 'not null' => TRUE, 'default' => 0, 'size' => 'tiny'),
'throttle' => array('type' => 'int', 'not null' => TRUE, 'default' => 0, 'size' => 'tiny'),
'visibility' => array('type' => 'int', 'not null' => TRUE, 'default' => 0, 'size' => 'tiny'),
'pages' => array('type' => 'text', 'not null' => TRUE),
'title' => array('type' => 'varchar', 'length' => 64, 'not null' => TRUE, 'default' => ''),
'cache' => array('type' => 'int', 'not null' => TRUE, 'default' => 0, 'size' => 'tiny'),
),
'primary key' => array('bid'),
);
$schema['blocks_roles'] = array(
'fields' => array(
'module' => array('type' => 'varchar', 'length' => 64, 'not null' => TRUE),
'delta' => array('type' => 'varchar', 'length' => 32, 'not null' => TRUE),
'rid' => array('type' => 'int', 'unsigned' => TRUE, 'not null' => TRUE)
),
'primary key' => array(
'module',
'delta',
'rid'
),
);
$schema['boxes'] = array(
'fields' => array(
'bid' => array('type' => 'serial', 'unsigned' => TRUE, 'not null' => TRUE),
'body' => array('type' => 'text', 'not null' => FALSE, 'size' => 'big'),
'info' => array('type' => 'varchar', 'length' => 128, 'not null' => TRUE, 'default' => ''),
'format' => array('type' => 'int', 'size' => 'small', 'not null' => TRUE, 'default' => 0)
),
'unique keys' => array('info' => array('info')),
'primary key' => array('bid'),
);
$schema['cache_block'] = drupal_get_schema_unprocessed('system', 'cache');
return $schema;
}
......@@ -244,3 +244,24 @@ function book_update_6000() {
return $ret;
}
/**
* Implementation of hook_schema().
*/
function book_schema() {
$schema['book'] = array(
'fields' => array(
'mlid' => array('type' => 'int', 'unsigned' => TRUE, 'not null' => TRUE, 'default' => 0),
'nid' => array('type' => 'int', 'unsigned' => TRUE, 'not null' => TRUE, 'default' => 0),
'bid' => array('type' => 'int', 'unsigned' => TRUE, 'not null' => TRUE, 'default' => 0),
),
'indexes' => array(
'nid' => array('nid'),
'bid' => array('bid')
),
'primary key' => array('mlid'),
);
return $schema;
}
<?php
// $Id$
function book_schema() {
$schema['book'] = array(
'fields' => array(
'mlid' => array('type' => 'int', 'unsigned' => TRUE, 'not null' => TRUE, 'default' => 0),
'nid' => array('type' => 'int', 'unsigned' => TRUE, 'not null' => TRUE, 'default' => 0),
'bid' => array('type' => 'int', 'unsigned' => TRUE, 'not null' => TRUE, 'default' => 0),
),
'indexes' => array(
'nid' => array('nid'),
'bid' => array('bid')
),
'primary key' => array('mlid'),
);
return $schema;
}
......@@ -30,3 +30,47 @@ function comment_update_6001() {
$ret[] = update_sql("ALTER TABLE {comments} DROP users");
return $ret;
}
/**
* Implementation of hook_schema().
*/
function comment_schema() {
$schema['comments'] = array(
'fields' => array(
'cid' => array('type' => 'serial', 'not null' => TRUE),
'pid' => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
'nid' => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
'uid' => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
'subject' => array('type' => 'varchar', 'length' => 64, 'not null' => TRUE, 'default' => ''),
'comment' => array('type' => 'text', 'not null' => TRUE, 'size' => 'big'),
'hostname' => array('type' => 'varchar', 'length' => 128, 'not null' => TRUE, 'default' => ''),
'timestamp' => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
'status' => array('type' => 'int', 'unsigned' => TRUE, 'not null' => TRUE, 'default' => 0, 'size' => 'tiny'),
'format' => array('type' => 'int', 'size' => 'small', 'not null' => TRUE, 'default' => 0),
'thread' => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE),
'name' => array('type' => 'varchar', 'length' => 60, 'not null' => FALSE),
'mail' => array('type' => 'varchar', 'length' => 64, 'not null' => FALSE),
'homepage' => array('type' => 'varchar', 'length' => 255, 'not null' => FALSE)
),
'indexes' => array(
'nid' => array('nid'),
'status' => array('status')
),
'primary key' => array('cid'),
);
$schema['node_comment_statistics'] = array(
'fields' => array(
'nid' => array('type' => 'int', 'unsigned' => TRUE, 'not null' => TRUE, 'default' => 0),
'last_comment_timestamp' => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
'last_comment_name' => array('type' => 'varchar', 'length' => 60, 'not null' => FALSE),
'last_comment_uid' => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
'comment_count' => array('type' => 'int', 'unsigned' => TRUE, 'not null' => TRUE, 'default' => 0)
),
'indexes' => array('node_comment_timestamp' => array('last_comment_timestamp')),
'primary key' => array('nid'),
);
return $schema;
}
<?php
// $Id$
function comment_schema() {
$schema['comments'] = array(
'fields' => array(
'cid' => array('type' => 'serial', 'not null' => TRUE),
'pid' => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
'nid' => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
'uid' => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
'subject' => array('type' => 'varchar', 'length' => 64, 'not null' => TRUE, 'default' => ''),
'comment' => array('type' => 'text', 'not null' => TRUE, 'size' => 'big'),
'hostname' => array('type' => 'varchar', 'length' => 128, 'not null' => TRUE, 'default' => ''),
'timestamp' => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
'status' => array('type' => 'int', 'unsigned' => TRUE, 'not null' => TRUE, 'default' => 0, 'size' => 'tiny'),
'format' => array('type' => 'int', 'size' => 'small', 'not null' => TRUE, 'default' => 0),
'thread' => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE),
'name' => array('type' => 'varchar', 'length' => 60, 'not null' => FALSE),
'mail' => array('type' => 'varchar', 'length' => 64, 'not null' => FALSE),
'homepage' => array('type' => 'varchar', 'length' => 255, 'not null' => FALSE)
),
'indexes' => array(
'nid' => array('nid'),
'status' => array('status')
),
'primary key' => array('cid'),
);
$schema['node_comment_statistics'] = array(
'fields' => array(
'nid' => array('type' => 'int', 'unsigned' => TRUE, 'not null' => TRUE, 'default' => 0),
'last_comment_timestamp' => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
'last_comment_name' => array('type' => 'varchar', 'length' => 60, 'not null' => FALSE),
'last_comment_uid' => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
'comment_count' => array('type' => 'int', 'unsigned' => TRUE, 'not null' => TRUE, 'default' => 0)
),
'indexes' => array('node_comment_timestamp' => array('last_comment_timestamp')),
'primary key' => array('nid'),
);
return $schema;
}
......@@ -20,3 +20,24 @@ function contact_uninstall() {
variable_del('contact_form_information');
variable_del('contact_hourly_threshold');
}
/**
* Implementation of hook_schema().
*/
function contact_schema() {
$schema['contact'] = array(
'fields' => array(
'cid' => array('type' => 'serial', 'unsigned' => TRUE, 'not null' => TRUE),
'category' => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''),
'recipients' => array('type' => 'text', 'not null' => TRUE, 'size' => 'big'),
'reply' => array('type' => 'text', 'not null' => TRUE, 'size' => 'big'),
'weight' => array('type' => 'int', 'not null' => TRUE, 'default' => 0, 'size' => 'tiny'),
'selected' => array('type' => 'int', 'not null' => TRUE, 'default' => 0, 'size' => 'tiny')
),
'unique keys' => array('category' => array('category')),
'primary key' => array('cid'),
);
return $schema;
}
<?php
// $Id$
function contact_schema() {
$schema['contact'] = array(
'fields' => array(
'cid' => array('type' => 'serial', 'unsigned' => TRUE, 'not null' => TRUE),
'category' => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''),
'recipients' => array('type' => 'text', 'not null' => TRUE, 'size' => 'big'),
'reply' => array('type' => 'text', 'not null' => TRUE, 'size' => 'big'),
'weight' => array('type' => 'int', 'not null' => TRUE, 'default' => 0, 'size' => 'tiny'),
'selected' => array('type' => 'int', 'not null' => TRUE, 'default' => 0, 'size' => 'tiny')
),
'unique keys' => array('category' => array('category')),
'primary key' => array('cid'),
);
return $schema;
}
......@@ -16,3 +16,29 @@ function dblog_uninstall() {
// Remove tables.
drupal_uninstall_schema('dblog');
}
/**
* Implementation of hook_schema().
*/
function dblog_schema() {
$schema['watchdog'] = array(
'fields' => array(
'wid' => array('type' => 'serial', 'not null' => TRUE),
'uid' => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
'type' => array('type' => 'varchar', 'length' => 16, 'not null' => TRUE, 'default' => ''),
'message' => array('type' => 'text', 'not null' => TRUE, 'size' => 'big'),
'variables' => array('type' => 'text', 'not null' => TRUE, 'size' => 'big'),
'severity' => array('type' => 'int', 'unsigned' => TRUE, 'not null' => TRUE, 'default' => 0, 'size' => 'tiny'),
'link' => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''),
'location' => array('type' => 'text', 'not null' => TRUE),
'referer' => array('type' => 'varchar', 'length' => 128, 'not null' => TRUE, 'default' => ''),
'hostname' => array('type' => 'varchar', 'length' => 128, 'not null' => TRUE, 'default' => ''),
'timestamp' => array('type' => 'int', 'not null' => TRUE, 'default' => 0)
),
'primary key' => array('wid'),
'indexes' => array('type' => array('type')),
);
return $schema;
}
<?php
// $Id$
function dblog_schema() {
$schema['watchdog'] = array(
'fields' => array(
'wid' => array('type' => 'serial', 'not null' => TRUE),
'uid' => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
'type' => array('type' => 'varchar', 'length' => 16, 'not null' => TRUE, 'default' => ''),
'message' => array('type' => 'text', 'not null' => TRUE, 'size' => 'big'),
'variables' => array('type' => 'text', 'not null' => TRUE, 'size' => 'big'),
'severity' => array('type' => 'int', 'unsigned' => TRUE, 'not null' => TRUE, 'default' => 0, 'size' => 'tiny'),
'link' => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''),
'location' => array('type' => 'text', 'not null' => TRUE),
'referer' => array('type' => 'varchar', 'length' => 128, 'not null' => TRUE, 'default' => ''),
'hostname' => array('type' => 'varchar', 'length' => 128, 'not null' => TRUE, 'default' => ''),
'timestamp' => array('type' => 'int', 'not null' => TRUE, 'default' => 0)
),
'primary key' => array('wid'),
'indexes' => array('type' => array('type')),
);
return $schema;
}
......@@ -26,3 +26,37 @@ function drupal_uninstall() {
variable_del('drupal_default_da_server');
variable_del('drupal_default_da_server_only');
}
/**
* Implementation of hook_schema().
*/
function drupal_schema() {
$schema['client'] = array(
'fields' => array(
'cid' => array('type' => 'serial', 'unsigned' => TRUE, 'not null' => TRUE),
'link' => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''),
'name' => array('type' => 'varchar', 'length' => 128, 'not null' => TRUE, 'default' => ''),
'mail' => array('type' => 'varchar', 'length' => 128, 'not null' => TRUE, 'default' => ''),
'slogan' => array('type' => 'text', 'not null' => TRUE, 'size' => 'big'),
'mission' => array('type' => 'text', 'not null' => TRUE, 'size' => 'big'),
'users' => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
'nodes' => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
'version' => array('type' => 'varchar', 'length' => 35, 'not null' => TRUE, 'default' => ''),
'created' => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
'changed' => array('type' => 'int', 'not null' => TRUE, 'default' => 0)
),
'primary key' => array('cid'),
);
$schema['client_system'] = array(
'fields' => array(
'cid' => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
'name' => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''),
'type' => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => '')
),
'primary key' => array('cid', 'name'),
);
return $schema;
}
<?php
// $Id$
function drupal_schema() {
$schema['client'] = array(
'fields' => array(
'cid' => array('type' => 'serial', 'unsigned' => TRUE, 'not null' => TRUE),
'link' => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''),
'name' => array('type' => 'varchar', 'length' => 128, 'not null' => TRUE, 'default' => ''),
'mail' => array('type' => 'varchar', 'length' => 128, 'not null' => TRUE, 'default' => ''),
'slogan' => array('type' => 'text', 'not null' => TRUE, 'size' => 'big'),
'mission' => array('type' => 'text', 'not null' => TRUE, 'size' => 'big'),
'users' => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
'nodes' => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
'version' => array('type' => 'varchar', 'length' => 35, 'not null' => TRUE, 'default' => ''),
'created' => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
'changed' => array('type' => 'int', 'not null' => TRUE, 'default' => 0)
),
'primary key' => array('cid'),
);
$schema['client_system'] = array(
'fields' => array(
'cid' => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
'name' => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''),
'type' => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => '')
),
'primary key' => array('cid', 'name'),
);
return $schema;
}
<?php
// $Id$
function filter_schema() {
$schema['filters'] = array(
'fields' => array(
'fid' => array('type' => 'serial', 'not null' => TRUE),
'format' => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
'module' => array('type' => 'varchar', 'length' => 64, 'not null' => TRUE, 'default' => ''),
'delta' => array('type' => 'int', 'not null' => TRUE, 'default' => 0, 'size' => 'tiny'),
'weight' => array('type' => 'int', 'not null' => TRUE, 'default' => 0, 'size' => 'tiny')
),
'primary key' => array('fid'),
'indexes' => array('weight' => array('weight')),
);
$schema['filter_formats'] = array(
'fields' => array(
'format' => array('type' => 'serial', 'not null' => TRUE),
'name' => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''),
'roles' => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''),
'cache' => array('type' => 'int', 'not null' => TRUE, 'default' => 0, 'size' => 'tiny')
),
'unique keys' => array('name' => array('name')),
'primary key' => array('format'),
);
$schema['cache_filter'] = drupal_get_schema_unprocessed('system', 'cache');
return $schema;
}
......@@ -50,3 +50,24 @@ function forum_uninstall() {
variable_del('forum_block_num_0');
variable_del('forum_block_num_1');
}
/**
* Implementation of hook_schema().
*/
function forum_schema() {
$schema['forum'] = array(
'fields' => array(
'nid' => array('type' => 'int', 'unsigned' => TRUE, 'not null' => TRUE, 'default' => 0),
'vid' => array('type' => 'int', 'unsigned' => TRUE, 'not null' => TRUE, 'default' => 0),
'tid' => array('type' => 'int', 'unsigned' => TRUE, 'not null' => TRUE, 'default' => 0)
),
'indexes' => array(
'nid' => array('nid'),
'tid' => array('tid')
),
'primary key' => array('vid'),
);
return $schema;
}
<?php
function forum_schema() {
$schema['forum'] = array(
'fields' => array(
'nid' => array('type' => 'int', 'unsigned' => TRUE, 'not null' => TRUE, 'default' => 0),
'vid' => array('type' => 'int', 'unsigned' => TRUE, 'not null' => TRUE, 'default' => 0),
'tid' => array('type' => 'int', 'unsigned' => TRUE, 'not null' => TRUE, 'default' => 0)
),
'indexes' => array(
'nid' => array('nid'),
'tid' => array('tid')
),
'primary key' => array('vid'),
);
return $schema;
}
......@@ -133,3 +133,78 @@ function locale_uninstall() {
// Remove tables.
drupal_uninstall_schema('locale');
}
/**
* Implementation of hook_schema().
*/
function locale_schema() {
$schema['languages'] = array(
'fields' => array(
// Language code, eg 'de' or 'en-US'.
'language' => array('type' => 'varchar', 'length' => 12, 'not null' => TRUE, 'default' => ''),
// Language name in English.
'name' => array('type' => 'varchar', 'length' => 64, 'not null' => TRUE, 'default' => ''),
// Native language name.
'native' => array('type' => 'varchar', 'length' => 64, 'not null' => TRUE, 'default' => ''),
// LANGUAGE_RTL or LANGUAGE_LTR
'direction' => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
// Enabled flag.
'enabled' => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
// Number of plural indexes in this language.
'plurals' => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
// Plural formula in PHP code to evaluate to get plural indexes.
'formula' => array('type' => 'varchar', 'length' => 128, 'not null' => TRUE, 'default' => ''),
// Domain to use for this language.
'domain' => array('type' => 'varchar', 'length' => 128, 'not null' => TRUE, 'default' => ''),
// Path prefix to use for this language.
'prefix' => array('type' => 'varchar', 'length' => 128, 'not null' => TRUE, 'default' => ''),
// Weight, used in lists of languages.
'weight' => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
// Location of JavaScript translation file.
'javascript' => array('type' => 'varchar', 'length' => 32, 'not null' => TRUE, 'default' => ''),
),
'primary key' => array('language'),
);