| Current Path : /home/magalijoj/www/blog/inc/dbschema/ |
| Current File : /home/magalijoj/www/blog/inc/dbschema/db-schema.php |
<?php
# ***** BEGIN LICENSE BLOCK *****
# This file is part of DotClear.
# Copyright (c) 2007 Olivier Meunier and contributors. All rights
# reserved.
#
# DotClear is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# DotClear is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with DotClear; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
# ***** END LICENSE BLOCK *****
if (!($_s instanceof dbStruct)) {
throw new Exception('No valid schema object');
}
/* Tables
-------------------------------------------------------- */
$_s->blog
->blog_id ('varchar', 32, false)
->blog_uid ('varchar', 32, false)
->blog_creadt ('timestamp', 0, false, 'now()')
->blog_upddt ('timestamp', 0, false, 'now()')
->blog_url ('varchar', 255, false)
->blog_name ('varchar', 255, false)
->blog_desc ('text', 0, true)
->blog_status ('smallint', 0, false, 1)
->primary('pk_blog','blog_id')
;
$_s->category
->cat_id ('bigint', 0, false)
->blog_id ('varchar', 32, false)
->cat_title ('varchar', 255, false)
->cat_url ('varchar', 255, false)
->cat_desc ('text', 0, true)
->cat_position ('integer', 0, true, 0)
->primary('pk_category','cat_id')
->unique('uk_cat_title','cat_title','blog_id')
->unique('uk_cat_url','cat_url','blog_id')
;
$_s->session
->ses_id ('varchar', 40, false)
->ses_time ('integer', 0, false, 0)
->ses_start ('integer', 0, false, 0)
->ses_value ('text', 0, false)
->primary('pk_session','ses_id')
;
$_s->setting
->setting_id ('varchar', 255, false)
->blog_id ('varchar', 32, true)
->setting_ns ('varchar', 32, false, "'system'")
->setting_value ('text', 0, true, null)
->setting_type ('varchar', 8, false, "'string'")
->setting_label ('text', 0, true)
->unique('uk_setting','setting_id','blog_id')
;
$_s->user
->user_id ('varchar', 32, false)
->user_super ('smallint', 0, true)
->user_status ('smallint', 0, false, 1)
->user_pwd ('varchar', 40, false)
->user_recover_key ('varchar', 32, true, null)
->user_name ('varchar', 255, true, null)
->user_firstname ('varchar', 255, true, null)
->user_displayname ('varchar', 255, true, null)
->user_email ('varchar', 255, true, null)
->user_url ('varchar', 255, true, null)
->user_desc ('text', 0, true)
->user_default_blog ('varchar', 32, true, null)
->user_options ('text', 0, true)
->user_lang ('varchar', 5, true, null)
->user_tz ('varchar', 128, false, "'UTC'")
->user_post_status ('smallint', 0, false, -2)
->user_creadt ('timestamp', 0, false, 'now()')
->user_upddt ('timestamp', 0, false, 'now()')
->primary('pk_user','user_id')
;
$_s->permissions
->user_id ('varchar', 32, false)
->blog_id ('varchar', 32, false)
->permissions ('text', 0, true)
->primary('pk_permissions','user_id','blog_id')
;
$_s->post
->post_id ('bigint', 0, false)
->blog_id ('varchar', 32, false)
->user_id ('varchar', 32, false)
->cat_id ('bigint', 0, true)
->post_dt ('timestamp', 0, false, 'now()')
->post_tz ('varchar', 128, false, "'UTC'")
->post_creadt ('timestamp', 0, false, 'now()')
->post_upddt ('timestamp', 0, false, 'now()')
->post_password ('varchar', 32, true, null)
->post_type ('varchar', 32, false, "'post'")
->post_format ('varchar', 32, false, "'xhtml'")
->post_url ('varchar', 255, false)
->post_lang ('varchar', 5, true, null)
->post_title ('varchar', 255, true, null)
->post_excerpt ('text', 0, true, null)
->post_excerpt_xhtml ('text', 0, true, null)
->post_content ('text', 0, true, null)
->post_content_xhtml ('text', 0, false)
->post_notes ('text', 0, true, null)
->post_words ('text', 0, true, null)
->post_status ('smallint', 0, false, 0)
->post_selected ('smallint', 0, false, 0)
->post_open_comment ('smallint', 0, false, 0)
->post_open_tb ('smallint', 0, false, 0)
->nb_comment ('integer', 0, false, 0)
->nb_trackback ('integer', 0, false, 0)
->primary('pk_post','post_id')
->unique('uk_post_url','post_url','post_type','blog_id')
;
$_s->media
->media_id ('bigint', 0, false)
->user_id ('varchar', 32, false)
->media_path ('varchar', 255, false)
->media_title ('varchar', 255, false)
->media_file ('varchar', 255, false)
->media_dir ('varchar', 255, false, "'.'")
->media_meta ('text', 0, true, null)
->media_dt ('timestamp', 0, false, 'now()')
->media_creadt ('timestamp', 0, false, 'now()')
->media_upddt ('timestamp', 0, false, 'now()')
->media_private ('smallint', 0, false, 0)
->primary('pk_media','media_id')
;
$_s->post_media
->media_id ('bigint', 0, false)
->post_id ('bigint', 0, false)
->primary('pk_post_media','media_id','post_id')
;
$_s->log
->log_id ('bigint', 0, false)
->user_id ('varchar', 32, true)
->log_table ('varchar', 255, false)
->log_dt ('timestamp', 0, false, 'now()')
->log_ip ('varchar', 39, false)
->log_msg ('varchar', 255, false)
->primary('pk_log','log_id')
;
$_s->version
->module ('varchar', 64, false)
->version ('varchar', 32, false)
->primary('pk_version','module')
;
$_s->ping
->post_id ('bigint', 0, false)
->ping_url ('varchar', 255, false)
->ping_dt ('timestamp', 0, false, 'now()')
->primary('pk_ping','post_id','ping_url')
;
$_s->comment
->comment_id ('bigint', 0, false)
->post_id ('bigint', 0, false)
->comment_dt ('timestamp', 0, false, 'now()')
->comment_tz ('varchar', 128, false, "'UTC'")
->comment_upddt ('timestamp', 0, false, 'now()')
->comment_author ('varchar', 255, true, null)
->comment_email ('varchar', 255, true, null)
->comment_site ('varchar', 255, true, null)
->comment_content ('text', 0, true)
->comment_words ('text', 0, true, null)
->comment_ip ('varchar', 39, true, null)
->comment_status ('smallint', 0, true, 0)
->comment_spam_status ('varchar', 128, true, 0)
->comment_spam_filter ('varchar', 32, true, null)
->comment_trackback ('smallint', 0, false, 0)
->primary('pk_comment','comment_id')
;
/* References indexes
-------------------------------------------------------- */
$_s->category->index ('idx_category_blog_id', 'btree', 'blog_id');
$_s->setting->index ('idx_setting_blog_id', 'btree', 'blog_id');
$_s->user->index ('idx_user_user_default_blog', 'btree', 'user_default_blog');
$_s->permissions->index ('idx_permissions_blog_id', 'btree', 'blog_id');
$_s->post->index ('idx_post_cat_id', 'btree', 'cat_id');
$_s->post->index ('idx_post_user_id', 'btree', 'user_id');
$_s->post->index ('idx_post_blog_id', 'btree', 'blog_id');
$_s->media->index ('idx_media_user_id', 'btree', 'user_id');
$_s->post_media->index ('idx_post_media_post_id', 'btree', 'post_id');
$_s->log->index ('idx_log_user_id', 'btree', 'user_id');
$_s->comment->index ('idx_comment_post_id', 'btree', 'post_id');
/* Performance indexes
-------------------------------------------------------- */
$_s->post->index ('idx_post_post_dt', 'btree', 'post_dt');
$_s->post->index ('idx_post_post_dt_post_id', 'btree', 'post_dt','post_id');
$_s->post->index ('idx_blog_post_post_dt_post_id', 'btree', 'blog_id','post_dt','post_id');
$_s->blog->index ('idx_blog_blog_upddt', 'btree', 'blog_upddt');
$_s->user->index ('idx_user_user_super', 'btree', 'user_super');
/* Foreign keys
-------------------------------------------------------- */
$_s->category->reference('fk_category_blog','blog_id','blog','blog_id','cascade','cascade');
$_s->setting->reference('fk_setting_blog','blog_id','blog','blog_id','cascade','cascade');
$_s->user->reference('fk_user_default_blog','user_default_blog','blog','blog_id','cascade','set null');
$_s->permissions->reference('fk_permissions_blog','blog_id','blog','blog_id','cascade','cascade');
$_s->permissions->reference('fk_permissions_user','user_id','user','user_id','cascade','cascade');
$_s->post->reference('fk_post_category','cat_id','category','cat_id','cascade','set null');
$_s->post->reference('fk_post_user','user_id','user','user_id','cascade','cascade');
$_s->post->reference('fk_post_blog','blog_id','blog','blog_id','cascade','cascade');
$_s->media->reference('fk_media_user','user_id','user','user_id','cascade','cascade');
$_s->post_media->reference('fk_media','media_id','media','media_id','cascade','cascade');
$_s->post_media->reference('fk_media_post','post_id','post','post_id','cascade','cascade');
$_s->ping->reference('fk_ping_post','post_id','post','post_id','cascade','cascade');
$_s->comment->reference('fk_comment_post','post_id','post','post_id','cascade','cascade');
?>