install/schemas/mysql_stage2.sql
changeset 348 87e08a6e4fec
child 349 fdaf9070566c
equal deleted inserted replaced
347:299a90e28abc 348:87e08a6e4fec
       
     1 -- Enano - an open-source CMS capable of wiki functions, Drupal-like sidebar blocks, and everything in between
       
     2 -- Version 1.0.2 (Coblynau)
       
     3 -- Copyright (C) 2006-2007 Dan Fuhry
       
     4 
       
     5 -- This program is Free Software; you can redistribute and/or modify it under the terms of the GNU General Public License
       
     6 -- as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
       
     7 
       
     8 -- This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied
       
     9 -- warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for details.
       
    10 
       
    11 -- mysql_stage2.sql - MySQL installation schema, main payload
       
    12 
       
    13 CREATE TABLE {{TABLE_PREFIX}}categories(
       
    14   page_id varchar(64),
       
    15   namespace varchar(64),
       
    16   category_id varchar(64)
       
    17 ) CHARACTER SET `utf8` COLLATE `utf8_bin`;
       
    18 
       
    19 CREATE TABLE {{TABLE_PREFIX}}comments(
       
    20   comment_id int(12) NOT NULL auto_increment,
       
    21   page_id text,
       
    22   namespace text,
       
    23   subject text,
       
    24   comment_data text,
       
    25   name text,
       
    26   approved tinyint(1) default 1,
       
    27   user_id mediumint(8) NOT NULL DEFAULT -1,
       
    28   time int(12) NOT NULL DEFAULT 0,
       
    29   PRIMARY KEY ( comment_id )
       
    30 ) CHARACTER SET `utf8` COLLATE `utf8_bin`;
       
    31 
       
    32 CREATE TABLE {{TABLE_PREFIX}}logs(
       
    33   log_type varchar(16),
       
    34   action varchar(16),
       
    35   time_id int(12) NOT NULL default '0',
       
    36   date_string varchar(63),
       
    37   page_id text,
       
    38   namespace text,
       
    39   page_text text,
       
    40   char_tag varchar(40),
       
    41   author varchar(63),
       
    42   edit_summary text,
       
    43   minor_edit tinyint(1)
       
    44 ) CHARACTER SET `utf8` COLLATE `utf8_bin`;
       
    45 
       
    46 CREATE TABLE {{TABLE_PREFIX}}page_text(
       
    47   page_id varchar(255),
       
    48   namespace varchar(16) NOT NULL default 'Article',
       
    49   page_text text,
       
    50   char_tag varchar(63),
       
    51   FULLTEXT KEY {{TABLE_PREFIX}}page_search_idx (page_id, namespace, page_text)
       
    52 ) ENGINE = MYISAM CHARACTER SET `utf8`;
       
    53 
       
    54 CREATE TABLE {{TABLE_PREFIX}}pages(
       
    55   page_order int(8),
       
    56   name varchar(255),
       
    57   urlname varchar(255),
       
    58   namespace varchar(16) NOT NULL default 'Article',
       
    59   special tinyint(1) default '0',
       
    60   visible tinyint(1) default '1',
       
    61   comments_on tinyint(1) default '1',
       
    62   protected tinyint(1) NOT NULL DEFAULT 0,
       
    63   wiki_mode tinyint(1) NOT NULL DEFAULT 2,
       
    64   delvotes int(10) NOT NULL default 0,
       
    65   password varchar(40) NOT NULL DEFAULT '',
       
    66   delvote_ips text DEFAULT NULL
       
    67 ) CHARACTER SET `utf8` COLLATE `utf8_bin`;
       
    68 
       
    69 CREATE TABLE {{TABLE_PREFIX}}session_keys(
       
    70   session_key varchar(32),
       
    71   salt varchar(32),
       
    72   user_id mediumint(8),
       
    73   auth_level tinyint(1) NOT NULL default '0',
       
    74   source_ip varchar(10) default '0x7f000001',
       
    75   time bigint(15) default '0'
       
    76 ) CHARACTER SET `utf8` COLLATE `utf8_bin`;
       
    77 
       
    78 CREATE TABLE {{TABLE_PREFIX}}themes(
       
    79   theme_id varchar(63),
       
    80   theme_name text,
       
    81   theme_order smallint(5) NOT NULL default '1',
       
    82   default_style varchar(63) NOT NULL DEFAULT '',
       
    83   enabled tinyint(1) NOT NULL default '1'
       
    84 ) CHARACTER SET `utf8` COLLATE `utf8_bin`;
       
    85 
       
    86 CREATE TABLE {{TABLE_PREFIX}}users(
       
    87   user_id mediumint(8) NOT NULL auto_increment,
       
    88   username text,
       
    89   password varchar(255),
       
    90   email text,
       
    91   real_name text,
       
    92   user_level tinyint(1) NOT NULL default 2,
       
    93   theme varchar(64) NOT NULL default 'bleu.css',
       
    94   style varchar(64) NOT NULL default 'default',
       
    95   signature text,
       
    96   reg_time int(11) NOT NULL DEFAULT 0,
       
    97   account_active tinyint(1) NOT NULL DEFAULT 0,
       
    98   activation_key varchar(40) NOT NULL DEFAULT 0,
       
    99   old_encryption tinyint(1) NOT NULL DEFAULT 0,
       
   100   temp_password text,
       
   101   temp_password_time int(12) NOT NULL DEFAULT 0,
       
   102   user_coppa tinyint(1) NOT NULL DEFAULT 0,
       
   103   user_lang smallint(5) NOT NULL,
       
   104   user_has_avatar tinyint(1) NOT NULL,
       
   105   avatar_type ENUM('jpg', 'png', 'gif') NOT NULL,
       
   106   PRIMARY KEY  (user_id)
       
   107 ) CHARACTER SET `utf8` COLLATE `utf8_bin`;
       
   108 
       
   109 CREATE TABLE {{TABLE_PREFIX}}users_extra(
       
   110   user_id mediumint(8) NOT NULL,
       
   111   user_aim varchar(63),
       
   112   user_yahoo varchar(63),
       
   113   user_msn varchar(255),
       
   114   user_xmpp varchar(255),
       
   115   user_homepage text,
       
   116   user_location text,
       
   117   user_job text,
       
   118   user_hobbies text,
       
   119   email_public tinyint(1) NOT NULL DEFAULT 0,
       
   120   PRIMARY KEY ( user_id ) 
       
   121 ) CHARACTER SET `utf8` COLLATE `utf8_bin`;
       
   122 
       
   123 CREATE TABLE {{TABLE_PREFIX}}banlist(
       
   124   ban_id mediumint(8) NOT NULL auto_increment,
       
   125   ban_type tinyint(1),
       
   126   ban_value varchar(64),
       
   127   is_regex tinyint(1) DEFAULT 0,
       
   128   reason text,
       
   129   PRIMARY KEY ( ban_id ) 
       
   130 ) CHARACTER SET `utf8` COLLATE `utf8_bin`;
       
   131 
       
   132 CREATE TABLE {{TABLE_PREFIX}}files(
       
   133   file_id int(12) NOT NULL auto_increment,
       
   134   time_id int(12) NOT NULL,
       
   135   page_id varchar(63) NOT NULL,
       
   136   filename varchar(127) default NULL,
       
   137   size bigint(15) NOT NULL,
       
   138   mimetype varchar(63) default NULL,
       
   139   file_extension varchar(8) default NULL,
       
   140   file_key varchar(32) NOT NULL,
       
   141   PRIMARY KEY (file_id) 
       
   142 ) CHARACTER SET `utf8` COLLATE `utf8_bin`;
       
   143 
       
   144 CREATE TABLE {{TABLE_PREFIX}}buddies(
       
   145   buddy_id int(15) NOT NULL auto_increment,
       
   146   user_id mediumint(8),
       
   147   buddy_user_id mediumint(8),
       
   148   is_friend tinyint(1) NOT NULL default '1',
       
   149   PRIMARY KEY  (buddy_id) 
       
   150 ) CHARACTER SET `utf8` COLLATE `utf8_bin`;
       
   151 
       
   152 CREATE TABLE {{TABLE_PREFIX}}privmsgs(
       
   153   message_id int(15) NOT NULL auto_increment,
       
   154   message_from varchar(63),
       
   155   message_to varchar(255),
       
   156   date int(12),
       
   157   subject varchar(63),
       
   158   message_text text,
       
   159   folder_name varchar(63),
       
   160   message_read tinyint(1) NOT NULL DEFAULT 0,
       
   161   PRIMARY KEY  (message_id) 
       
   162 ) CHARACTER SET `utf8` COLLATE `utf8_bin`;
       
   163 
       
   164 CREATE TABLE {{TABLE_PREFIX}}sidebar(
       
   165   item_id smallint(3) NOT NULL auto_increment,
       
   166   item_order smallint(3) NOT NULL DEFAULT 0,
       
   167   item_enabled tinyint(1) NOT NULL DEFAULT 1,
       
   168   sidebar_id smallint(3) NOT NULL DEFAULT 1,
       
   169   block_name varchar(63) NOT NULL,
       
   170   block_type tinyint(1) NOT NULL DEFAULT 0,
       
   171   block_content text,
       
   172   PRIMARY KEY ( item_id )
       
   173 ) CHARACTER SET `utf8` COLLATE `utf8_bin`;
       
   174 
       
   175 CREATE TABLE {{TABLE_PREFIX}}hits(
       
   176   hit_id bigint(20) NOT NULL auto_increment,
       
   177   username varchar(63) NOT NULL,
       
   178   time int(12) NOT NULL DEFAULT 0,
       
   179   page_id varchar(63),
       
   180   namespace varchar(63),
       
   181   PRIMARY KEY ( hit_id ) 
       
   182 ) CHARACTER SET `utf8` COLLATE `utf8_bin`;
       
   183 
       
   184 CREATE TABLE {{TABLE_PREFIX}}search_index(
       
   185   word varchar(64) NOT NULL,
       
   186   page_names text,
       
   187   PRIMARY KEY ( word ) 
       
   188 ) CHARACTER SET `utf8` COLLATE `utf8_bin`;
       
   189 
       
   190 CREATE TABLE {{TABLE_PREFIX}}groups(
       
   191   group_id mediumint(5) UNSIGNED NOT NULL auto_increment,
       
   192   group_name varchar(64),
       
   193   group_type tinyint(1) NOT NULL DEFAULT 1,
       
   194   PRIMARY KEY ( group_id ),
       
   195   system_group tinyint(1) NOT NULL DEFAULT 0 
       
   196 ) CHARACTER SET `utf8` COLLATE `utf8_bin`;
       
   197 
       
   198 CREATE TABLE {{TABLE_PREFIX}}group_members(
       
   199   member_id int(12) UNSIGNED NOT NULL auto_increment,
       
   200   group_id mediumint(5) UNSIGNED NOT NULL,
       
   201   user_id int(12) NOT NULL,
       
   202   is_mod tinyint(1) NOT NULL DEFAULT 0,
       
   203   pending tinyint(1) NOT NULL DEFAULT 0,
       
   204   PRIMARY KEY ( member_id ) 
       
   205 ) CHARACTER SET `utf8` COLLATE `utf8_bin`;
       
   206 
       
   207 CREATE TABLE {{TABLE_PREFIX}}acl(
       
   208   rule_id int(12) UNSIGNED NOT NULL auto_increment,
       
   209   target_type tinyint(1) UNSIGNED NOT NULL,
       
   210   target_id int(12) UNSIGNED NOT NULL,
       
   211   page_id varchar(255),
       
   212   namespace varchar(24),
       
   213   rules text,
       
   214   PRIMARY KEY ( rule_id ) 
       
   215 ) CHARACTER SET `utf8` COLLATE `utf8_bin`;
       
   216 
       
   217 -- Added in 1.0.1
       
   218 
       
   219 CREATE TABLE {{TABLE_PREFIX}}page_groups(
       
   220   pg_id mediumint(8) NOT NULL auto_increment,
       
   221   pg_type tinyint(2) NOT NULL DEFAULT 1,
       
   222   pg_name varchar(255) NOT NULL DEFAULT '',
       
   223   pg_target varchar(255) DEFAULT NULL,
       
   224   PRIMARY KEY ( pg_id )
       
   225 ) CHARACTER SET `utf8` COLLATE `utf8_bin`;
       
   226 
       
   227 -- Added in 1.0.1
       
   228 
       
   229 CREATE TABLE {{TABLE_PREFIX}}page_group_members(
       
   230   pg_member_id int(12) NOT NULL auto_increment,
       
   231   pg_id mediumint(8) NOT NULL,
       
   232   page_id varchar(63) NOT NULL,
       
   233   namespace varchar(63) NOT NULL DEFAULT 'Article',
       
   234   PRIMARY KEY ( pg_member_id )
       
   235 ) CHARACTER SET `utf8` COLLATE `utf8_bin`;
       
   236 
       
   237 -- Added in 1.0.1
       
   238 
       
   239 CREATE TABLE {{TABLE_PREFIX}}tags(
       
   240   tag_id int(12) NOT NULL auto_increment,
       
   241   tag_name varchar(63) NOT NULL DEFAULT 'bla',
       
   242   page_id varchar(255) NOT NULL,
       
   243   namespace varchar(255) NOT NULL,
       
   244   user mediumint(8) NOT NULL DEFAULT 1,
       
   245   PRIMARY KEY ( tag_id )
       
   246 ) CHARACTER SET `utf8` COLLATE `utf8_bin`;
       
   247 
       
   248 -- Added in 1.1.1
       
   249 
       
   250 CREATE TABLE {{TABLE_PREFIX}}lockout(
       
   251   id int(12) NOT NULL auto_increment,
       
   252   ipaddr varchar(40) NOT NULL,
       
   253   action ENUM('credential', 'level') NOT NULL DEFAULT 'credential',
       
   254   timestamp int(12) NOT NULL DEFAULT 0,
       
   255   PRIMARY KEY ( id )
       
   256 ) CHARACTER SET `utf8`;
       
   257 
       
   258 -- Added in 1.1.1
       
   259 
       
   260 CREATE TABLE {{TABLE_PREFIX}}language(
       
   261   lang_id smallint(5) NOT NULL auto_increment,
       
   262   lang_code varchar(16) NOT NULL,
       
   263   lang_name_default varchar(64) NOT NULL,
       
   264   lang_name_native varchar(64) NOT NULL,
       
   265   last_changed int(12) NOT NULL DEFAULT 0,
       
   266   PRIMARY KEY ( lang_id )
       
   267 ) CHARACTER SET `utf8`;
       
   268 
       
   269 -- Added in 1.1.1
       
   270 
       
   271 CREATE TABLE {{TABLE_PREFIX}}language_strings(
       
   272   string_id bigint(15) NOT NULL auto_increment,
       
   273   lang_id smallint(5) NOT NULL,
       
   274   string_category varchar(32) NOT NULL,
       
   275   string_name varchar(64) NOT NULL,
       
   276   string_content longtext NOT NULL,
       
   277   PRIMARY KEY ( string_id )
       
   278 );
       
   279 
       
   280 DELETE FROM {{TABLE_PREFIX}}config;
       
   281 
       
   282 INSERT INTO {{TABLE_PREFIX}}config(config_name, config_value) VALUES
       
   283   ('site_name', '{{SITE_NAME}}'),
       
   284   ('main_page', 'Main_Page'),
       
   285   ('site_desc', '{{SITE_DESC}}'),
       
   286   ('wiki_mode', '{{WIKI_MODE}}'),
       
   287   ('wiki_edit_notice', '0'),
       
   288   ('sflogo_enabled', '0'),
       
   289   ('sflogo_groupid', ''),
       
   290   ('sflogo_type', '1'),
       
   291   ('w3c_vh32', '0'),
       
   292   ('w3c_vh40', '0'),
       
   293   ('w3c_vh401', '0'),
       
   294   ('w3c_vxhtml10', '0'),
       
   295   ('w3c_vxhtml11', '0'),
       
   296   ('w3c_vcss', '0'),
       
   297   ('approve_comments', '0'),
       
   298   ('enable_comments', '1'),
       
   299   ('plugin_SpecialAdmin.php', '1'),
       
   300   ('plugin_SpecialPageFuncs.php', '1'),
       
   301   ('plugin_SpecialUserFuncs.php', '1'),
       
   302   ('plugin_SpecialCSS.php', '1'),
       
   303   ('copyright_notice', '{{COPYRIGHT}}'),
       
   304   ('wiki_edit_notice_text', '== Why can I edit this page? ==\n\nEveryone can edit almost any page in this website. This concept is called a wiki. It gives everyone the opportunity to make a change for the best. While some spam and vandalism may occur, it is believed that most contributions will be legitimate and helpful.\n\nFor security purposes, a history of all page edits is kept, and administrators are able to restore vandalized or spammed pages with just a few clicks.'),
       
   305   ('cache_thumbs', '{{ENABLE_CACHE}}'),
       
   306   ('max_file_size', '256000'),('enano_version', '{{VERSION}}'),( 'allowed_mime_types', 'cbf:len=185;crc=55fb6f14;data=0[1],1[4],0[3],1[1],0[22],1[1],0[16],1[3],0[16],1[1],0[1],1[2],0[6],1[1],0[1],1[1],0[4],1[2],0[3],1[1],0[48],1[2],0[2],1[1],0[4],1[1],0[37]|end' ),
       
   307   ('contact_email', '{{ADMIN_EMAIL}}'),
       
   308   ('powered_btn', '1');
       
   309 
       
   310 INSERT INTO {{TABLE_PREFIX}}page_text(page_id, namespace, page_text, char_tag) VALUES
       
   311   ('Main_Page', 'Article', '=== Enano has been successfully installed and is working. ===\n\nIf you can see this message, it means that you\'ve finished the Enano setup process and are ready to start building your website. Congratulations!\n\nTo edit this front page, click the Log In button to the left, enter the credentials you provided during the installation, and click the Edit This Page button that appears on the blue toolbar just above this text. You can also [http://docs.enanocms.org/Help:2.4 learn more] about editing pages.\n\nTo create more pages, use the Create a Page button to the left. If you enabled wiki mode, you don\'t have to log in first, however your IP address will be shown in the page history.\n\nVisit the [http://docs.enanocms.org/Help:Contents Enano documentation project website] to learn more about administering your site effectively and keeping things secure.\n\n\'\'\'NOTE:\'\'\' You have just installed an unstable version of Enano. This release is completely unsupported and may contain security issues or serious usability bugs. You should not use this release on a production website. The Enano team will not provide any type of support at all for this experimental release.', '');
       
   312 
       
   313 INSERT INTO {{TABLE_PREFIX}}pages(page_order, name, urlname, namespace, special, visible, comments_on, protected, delvotes, delvote_ips) VALUES
       
   314   (NULL, 'Main Page', 'Main_Page', 'Article', 0, 1, 1, 1, 0, '');
       
   315 
       
   316 INSERT INTO {{TABLE_PREFIX}}themes(theme_id, theme_name, theme_order, default_style, enabled) VALUES
       
   317   ('oxygen', 'Oxygen', 1, 'bleu.css', 1),
       
   318   ('stpatty', 'St. Patty', 2, 'shamrock.css', 1);
       
   319 
       
   320 INSERT INTO {{TABLE_PREFIX}}users(user_id, username, password, email, real_name, user_level, theme, style, signature, reg_time, account_active) VALUES
       
   321   (1, 'Anonymous', 'invalid-pass-hash', 'anonspam@enanocms.org', 'None', 1, 'oxygen', 'bleu', '', 0, 0),
       
   322   (2, '{{ADMIN_USER}}', '{{ADMIN_PASS}}', '{{ADMIN_EMAIL}}', '{{REAL_NAME}}', 9, 'oxygen', 'bleu', '', UNIX_TIMESTAMP(), 1);
       
   323   
       
   324 INSERT INTO {{TABLE_PREFIX}}users_extra(user_id) VALUES
       
   325   (2);
       
   326 
       
   327 INSERT INTO {{TABLE_PREFIX}}groups(group_id,group_name,group_type,system_group) VALUES(1, 'Everyone', 3, 1),
       
   328   (2,'Administrators',3,1),
       
   329   (3,'Moderators',3,1);
       
   330 
       
   331 INSERT INTO {{TABLE_PREFIX}}group_members(group_id,user_id,is_mod) VALUES(2, 2, 1);
       
   332 
       
   333 INSERT INTO {{TABLE_PREFIX}}acl(target_type,target_id,page_id,namespace,rules) VALUES
       
   334   (1,2,NULL,NULL,'read=4;post_comments=4;edit_comments=4;edit_page=4;view_source=4;mod_comments=4;history_view=4;history_rollback=4;history_rollback_extra=4;protect=4;rename=4;clear_logs=4;vote_delete=4;vote_reset=4;delete_page=4;tag_create=4;tag_delete_own=4;tag_delete_other=4;set_wiki_mode=4;password_set=4;password_reset=4;mod_misc=4;edit_cat=4;even_when_protected=4;upload_files=4;upload_new_version=4;create_page=4;php_in_pages={{ADMIN_EMBED_PHP}};edit_acl=4;'),
       
   335   (1,3,NULL,NULL,'read=4;post_comments=4;edit_comments=4;edit_page=4;view_source=4;mod_comments=4;history_view=4;history_rollback=4;history_rollback_extra=4;protect=4;rename=3;clear_logs=2;vote_delete=4;vote_reset=4;delete_page=4;set_wiki_mode=2;password_set=2;password_reset=2;mod_misc=2;edit_cat=4;even_when_protected=4;upload_files=2;upload_new_version=3;create_page=3;php_in_pages=2;edit_acl=2;');
       
   336 
       
   337 INSERT INTO {{TABLE_PREFIX}}sidebar(item_id, item_order, sidebar_id, block_name, block_type, block_content) VALUES
       
   338   (1, 1, 1, '{lang:sidebar_title_navigation}', 1, '[[Main_Page|{lang:sidebar_btn_home}]]'),
       
   339   (2, 2, 1, '{lang:sidebar_title_tools}', 1, '[[$NS_SPECIAL$CreatePage|{lang:sidebar_btn_createpage}]]\n[[$NS_SPECIAL$UploadFile|{lang:sidebar_btn_uploadfile}]]\n[[$NS_SPECIAL$SpecialPages|{lang:sidebar_btn_specialpages}]]\n{if auth_admin}\n$ADMIN_LINK$\n[[$NS_SPECIAL$EditSidebar|{lang:sidebar_btn_editsidebar}]]\n{/if}'),
       
   340   (3, 3, 1, '$USERNAME$', 1, '[[$NS_USER$$USERNAME$|{lang:sidebar_btn_userpage}]]\n[[$NS_SPECIAL$Contributions/$USERNAME$|{lang:sidebar_btn_mycontribs}]]\n{if user_logged_in}\n[[$NS_SPECIAL$Preferences|{lang:sidebar_btn_preferences}]]\n[[$NS_SPECIAL$PrivateMessages|{lang:sidebar_btn_privatemessages}]]\n[[$NS_SPECIAL$Usergroups|{lang:sidebar_btn_groupcp}]]\n$THEME_LINK$\n{/if}\n{if user_logged_in}\n$LOGOUT_LINK$\n{else}\n[[$NS_SPECIAL$Register|{lang:sidebar_btn_register}]]\n$LOGIN_LINK$\n[[$NS_SPECIAL$Login/$NS_SPECIAL$PrivateMessages|{lang:sidebar_btn_privatemessages}]]\n{/if}'),
       
   341   (4, 4, 1, '{lang:sidebar_title_search}', 1, '<div class="slideblock2" style="padding: 0px;"><form action="$CONTENTPATH$$NS_SPECIAL$Search" method="get" style="padding: 0; margin: 0;"><p><input type="hidden" name="title" value="$NS_SPECIAL$Search" />$INPUT_AUTH$<input name="q" alt="Search box" type="text" size="10" style="width: 70%" /> <input type="submit" value="{lang:sidebar_btn_search_go}" style="width: 20%" /></p></form></div>'),
       
   342   (5, 2, 2, '{lang:sidebar_title_links}', 4, 'Links');
       
   343