diff options
author | Dries Buytaert <dries@buytaert.net> | 2007-05-25 12:46:46 +0000 |
---|---|---|
committer | Dries Buytaert <dries@buytaert.net> | 2007-05-25 12:46:46 +0000 |
commit | 3cafffe63f70f418d0b6ca32ac5e0f3e27dceb41 (patch) | |
tree | cd59a40556a084f35b7b5a3bc3caa50874087541 /modules/user | |
parent | ae762838c0e92bded86370103df4583874c50da7 (diff) | |
download | brdo-3cafffe63f70f418d0b6ca32ac5e0f3e27dceb41.tar.gz brdo-3cafffe63f70f418d0b6ca32ac5e0f3e27dceb41.tar.bz2 |
- Killer patch #144765 by bjaspan, frando et al: schema API 1 hits core. Oh, behave.
Diffstat (limited to 'modules/user')
-rw-r--r-- | modules/user/user.schema | 85 |
1 files changed, 85 insertions, 0 deletions
diff --git a/modules/user/user.schema b/modules/user/user.schema new file mode 100644 index 000000000..032778f10 --- /dev/null +++ b/modules/user/user.schema @@ -0,0 +1,85 @@ +<?php +// $Id$ + +function user_schema() { + $schema['access'] = array( + 'fields' => array( + 'aid' => array('type' => 'serial', 'not null' => TRUE), + 'mask' => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''), + 'type' => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''), + 'status' => array('type' => 'int', 'not null' => TRUE, 'default' => 0, 'size' => 'tiny') + ), + 'primary key' => array('aid'), + ); + + $schema['authmap'] = array( + 'fields' => array( + 'aid' => array('type' => 'serial', 'unsigned' => TRUE, 'not null' => TRUE), + 'uid' => array('type' => 'int', 'not null' => TRUE, 'default' => 0), + 'authname' => array('type' => 'varchar', 'length' => 128, 'not null' => TRUE, 'default' => ''), + 'module' => array('type' => 'varchar', 'length' => 128, 'not null' => TRUE, 'default' => '') + ), + 'unique keys' => array('authname' => array('authname')), + 'primary key' => array('aid'), + ); + + $schema['permission'] = array( + 'fields' => array( + 'pid' => array('type' => 'serial', 'not null' => TRUE), + 'rid' => array('type' => 'int', 'unsigned' => TRUE, 'not null' => TRUE, 'default' => 0), + 'perm' => array('type' => 'text', 'not null' => FALSE, 'size' => 'big'), + 'tid' => array('type' => 'int', 'unsigned' => TRUE, 'not null' => TRUE, 'default' => 0) + ), + 'primary key' => array('pid'), + 'indexes' => array('rid' => array('rid')), + ); + + $schema['role'] = array( + 'fields' => array( + 'rid' => array('type' => 'serial', 'unsigned' => TRUE, 'not null' => TRUE), + 'name' => array('type' => 'varchar', 'length' => 64, 'not null' => TRUE, 'default' => '') + ), + 'unique keys' => array('name' => array('name')), + 'primary key' => array('rid'), + ); + + $schema['users'] = array( + 'fields' => array( + 'uid' => array('type' => 'serial', 'unsigned' => TRUE, 'not null' => TRUE), + 'name' => array('type' => 'varchar', 'length' => 60, 'not null' => TRUE, 'default' => ''), + 'pass' => array('type' => 'varchar', 'length' => 32, 'not null' => TRUE, 'default' => ''), + 'mail' => array('type' => 'varchar', 'length' => 64, 'not null' => FALSE, 'default' => ''), + 'mode' => array('type' => 'int', 'not null' => TRUE, 'default' => 0, 'size' => 'tiny'), + 'sort' => array('type' => 'int', 'not null' => FALSE, 'default' => 0, 'size' => 'tiny'), + 'threshold' => array('type' => 'int', 'not null' => FALSE, 'default' => 0, 'size' => 'tiny'), + 'theme' => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''), + 'signature' => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''), + 'created' => array('type' => 'int', 'not null' => TRUE, 'default' => 0), + 'access' => array('type' => 'int', 'not null' => TRUE, 'default' => 0), + 'login' => array('type' => 'int', 'not null' => TRUE, 'default' => 0), + 'status' => array('type' => 'int', 'not null' => TRUE, 'default' => 0, 'size' => 'tiny'), + 'timezone' => array('type' => 'varchar', 'length' => 8, 'not null' => FALSE), + 'language' => array('type' => 'varchar', 'length' => 12, 'not null' => TRUE, 'default' => ''), + 'picture' => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''), + 'init' => array('type' => 'varchar', 'length' => 64, 'not null' => FALSE, 'default' => ''), + 'data' => array('type' => 'text', 'not null' => FALSE, 'size' => 'big') + ), + 'indexes' => array( + 'access' => array('access'), + 'created' => array('created') + ), + 'unique keys' => array('name' => array('name')), + 'primary key' => array('uid'), + ); + + $schema['users_roles'] = array( + 'fields' => array( + 'uid' => array('type' => 'int', 'unsigned' => TRUE, 'not null' => TRUE, 'default' => 0), + 'rid' => array('type' => 'int', 'unsigned' => TRUE, 'not null' => TRUE, 'default' => 0) + ), + 'primary key' => array('uid', 'rid'), + ); + + return $schema; +} + |