PageRenderTime 50ms CodeModel.GetById 23ms RepoModel.GetById 1ms app.codeStats 0ms

/setup-mysql.sql

http://snowcms.googlecode.com/
SQL | 206 lines | 194 code | 12 blank | 0 comment | 0 complexity | 352a8e655fb5406d2d01962315efae6b MD5 | raw file
Possible License(s): CC-BY-SA-3.0
  1. ##
  2. # Authentication tokens are stored here, and used in place of storing a
  3. # users password hash in their log in cookie.
  4. ##
  5. CREATE TABLE `{db->prefix}auth_tokens`
  6. (
  7. `member_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
  8. `token_id` VARCHAR(255) NOT NULL,
  9. `token_assigned` INT(10) UNSIGNED NOT NULL DEFAULT '0',
  10. `token_expires` INT(10) UNSIGNED NOT NULL DEFAULT '0',
  11. `token_data` TEXT NOT NULL,
  12. PRIMARY KEY (`member_id`, `token_id`),
  13. UNIQUE KEY (`token_id`)
  14. ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
  15. ##
  16. # Holds all the PHP errors which have occurred!
  17. ##
  18. CREATE TABLE `{db->prefix}error_log`
  19. (
  20. `error_id` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT,
  21. `error_time` INT(10) UNSIGNED NOT NULL DEFAULT '0',
  22. `member_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
  23. `member_name` VARCHAR(255) NOT NULL,
  24. `member_ip` VARCHAR(150) NOT NULL,
  25. `error_type` VARCHAR(40) NOT NULL,
  26. `error_message` TEXT NOT NULL,
  27. `error_file` VARCHAR(255) NOT NULL,
  28. `error_line` INT(11) UNSIGNED NOT NULL DEFAULT '0',
  29. `error_url` VARCHAR(255) NOT NULL,
  30. PRIMARY KEY (`error_id`),
  31. KEY (`error_time`),
  32. KEY (`member_name`),
  33. KEY (`member_ip`),
  34. KEY (`error_type`)
  35. ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
  36. ##
  37. # Holds members extra information, this is what a plugin should use to store extra member stuffs!
  38. ##
  39. CREATE TABLE `{db->prefix}member_data`
  40. (
  41. `member_id` INT(11) UNSIGNED NOT NULL,
  42. `variable` VARCHAR(255) NOT NULL,
  43. `value` TEXT NOT NULL,
  44. PRIMARY KEY (`member_id`, `variable`)
  45. ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
  46. ##
  47. # The members table, holding, you guessed it! MEMBERS!
  48. #-
  49. CREATE TABLE `{db->prefix}members`
  50. (
  51. `member_id` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT,
  52. `member_name` VARCHAR(80) NOT NULL,
  53. `member_pass` VARCHAR(40) NOT NULL,
  54. `display_name` VARCHAR(255) NOT NULL,
  55. `member_email` VARCHAR(100) NOT NULL,
  56. `member_groups` VARCHAR(255) NOT NULL DEFAULT 'member',
  57. `member_last_active` INT(10) UNSIGNED NOT NULL DEFAULT '0',
  58. `member_last_login` INT(10) UNSIGNED NOT NULL DEFAULT '0',
  59. `member_registered` INT(10) UNSIGNED NOT NULL,
  60. `member_ip` VARCHAR(150) NOT NULL DEFAULT '127.0.0.1',
  61. `member_activated` TINYINT(3) UNSIGNED NOT NULL DEFAULT '0',
  62. `member_acode` VARCHAR(40) NULL,
  63. PRIMARY KEY (`member_id`),
  64. KEY (`member_name`),
  65. KEY (`display_name`),
  66. KEY (`member_activated`)
  67. ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
  68. ##
  69. # Used via the Messages API
  70. ##
  71. CREATE TABLE `{db->prefix}messages`
  72. (
  73. `area_name` VARCHAR(255) NOT NULL,
  74. `area_id` INT(11) UNSIGNED NOT NULL,
  75. `message_id` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT,
  76. `member_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
  77. `member_name` VARCHAR(255) NOT NULL,
  78. `member_email` VARCHAR(255) NOT NULL,
  79. `member_ip` VARCHAR(150) NOT NULL,
  80. `modified_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
  81. `modified_name` VARCHAR(255) NOT NULL DEFAULT '',
  82. `modified_email` VARCHAR(255) NOT NULL DEFAULT '',
  83. `modified_ip` VARCHAR(150) NOT NULL DEFAULT '',
  84. `subject` VARCHAR(255) NOT NULL DEFAULT '',
  85. `poster_time` INT(10) UNSIGNED NOT NULL DEFAULT '0',
  86. `modified_time` INT(10) UNSIGNED NOT NULL DEFAULT '0',
  87. `message` TEXT NOT NULL,
  88. `message_type` VARCHAR(16) NOT NULL DEFAULT '',
  89. `message_status` VARCHAR(40) NOT NULL DEFAULT 'unapproved',
  90. `extra` TEXT NOT NULL,
  91. PRIMARY KEY (`area_name`, `area_id`, `message_id`),
  92. KEY (`poster_time`),
  93. KEY (`modified_time`),
  94. KEY (`message_status`),
  95. KEY (`extra`(255))
  96. ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
  97. ##
  98. # All permissions here! ;)
  99. ##
  100. CREATE TABLE `{db->prefix}permissions`
  101. (
  102. `group_id` VARCHAR(128) NOT NULL,
  103. `permission` VARCHAR(128) NOT NULL,
  104. `status` TINYINT(1) NOT NULL DEFAULT '1',
  105. PRIMARY KEY (`group_id`, `permission`)
  106. ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
  107. INSERT INTO `{db->prefix}permissions` (`group_id`, `permission`, `status`) VALUES('member', 'manage_system_settings', 0),('member', 'manage_themes', 0),('member', 'update_system', 0),('member', 'view_error_log', 0);
  108. INSERT INTO `{db->prefix}permissions` (`group_id`, `permission`, `status`) VALUES('member', 'add_new_member', 0),('member', 'manage_members', 0),('member', 'search_members', 0),('member', 'manage_member_settings', 0);
  109. INSERT INTO `{db->prefix}permissions` (`group_id`, `permission`, `status`) VALUES('member', 'manage_permissions', 0),('member', 'add_plugins', 0),('member', 'manage_plugins', 0),('member', 'manage_plugin_settings', 0);
  110. INSERT INTO `{db->prefix}permissions` (`group_id`, `permission`, `status`) VALUES('member', 'view_other_profiles', 0),('member', 'edit_other_profiles', 0),('guest', 'manage_system_settings', -1),('guest', 'manage_themes', -1);
  111. INSERT INTO `{db->prefix}permissions` (`group_id`, `permission`, `status`) VALUES('guest', 'update_system', -1),('guest', 'view_error_log', -1),('guest', 'add_new_member', -1),('guest', 'manage_members', -1);
  112. INSERT INTO `{db->prefix}permissions` (`group_id`, `permission`, `status`) VALUES('guest', 'search_members', -1),('guest', 'manage_member_settings', -1),('guest', 'manage_permissions', -1),('guest', 'add_plugins', -1);
  113. INSERT INTO `{db->prefix}permissions` (`group_id`, `permission`, `status`) VALUES('guest', 'manage_plugins', -1),('guest', 'manage_plugin_settings', -1),('guest', 'view_other_profiles', 0),('guest', 'edit_other_profiles', -1);
  114. ##
  115. # This is where currently enabled plugins are held
  116. ##
  117. CREATE TABLE `{db->prefix}plugins`
  118. (
  119. `directory` VARCHAR(255) NOT NULL,
  120. `runtime_error` TINYINT(1) UNSIGNED NOT NULL DEFAULT '0',
  121. `error_message` TEXT NULL,
  122. `is_activated` TINYINT(1) UNSIGNED NOT NULL DEFAULT '0',
  123. PRIMARY KEY (`directory`),
  124. KEY (`runtime_error`),
  125. KEY (`is_activated`)
  126. ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
  127. ##
  128. # A table holding various settings and what not xD
  129. ##
  130. CREATE TABLE `{db->prefix}settings`
  131. (
  132. `variable` VARCHAR(255) NOT NULL,
  133. `type` VARCHAR(30) NOT NULL DEFAULT 'string',
  134. `value` TEXT NOT NULL,
  135. PRIMARY KEY (`variable`)
  136. ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
  137. INSERT INTO `{db->prefix}settings` (`variable`, `value`) VALUES('show_version', 1),('version', '2.0-beta2'),('password_security', 1),('disallowed_names', ''),('disallowed_emails', ''),('default_event', '');
  138. INSERT INTO `{db->prefix}settings` (`variable`, `value`) VALUES('enable_tasks', 1),('site_name', 'SnowCMS'),('site_email', ''),('theme', 'default'),('max_tasks', 2);
  139. INSERT INTO `{db->prefix}settings` (`variable`, `value`) VALUES('registration_type', 1),('enable_utf8', 1),('members_min_name_length', 3),('members_max_name_length', 80),('errors_log', 1);
  140. INSERT INTO `{db->prefix}settings` (`variable`, `value`) VALUES('mail_handler', 'mail'),('smtp_host', 'localhost'),('smtp_port', 25),('smtp_is_tls', 0),('smtp_timeout', 5),('smtp_user', ''),('smtp_pass', '');
  141. INSERT INTO `{db->prefix}settings` (`variable`, `value`) VALUES('mail_additional_parameters', ''),('default_member_groups', 'member'),('disable_admin_security', 0),('admin_login_timeout', 15),('admin_news_fetch_every', 43200);
  142. INSERT INTO `{db->prefix}settings` (`variable`, `value`) VALUES('date_format', '%B %d, %Y'),('time_format', '%I:%M:%S %p'),('datetime_format', '%B %d, %Y, %I:%M:%S %p');
  143. ##
  144. # Need to do something?
  145. ##
  146. CREATE TABLE `{db->prefix}tasks`
  147. (
  148. `task_name` VARCHAR(255) NOT NULL,
  149. `last_ran` INT(10) UNSIGNED NOT NULL DEFAULT '0',
  150. `run_every` INT(10) UNSIGNED NOT NULL DEFAULT '86400',
  151. `file` VARCHAR(255) NOT NULL DEFAULT '',
  152. `location` VARCHAR(32) NOT NULL DEFAULT '',
  153. `func` VARCHAR(255) NOT NULL DEFAULT '',
  154. `queued` TINYINT(1) UNSIGNED NOT NULL DEFAULT '0',
  155. `enabled` TINYINT(1) UNSIGNED NOT NULL DEFAULT '1',
  156. PRIMARY KEY (`task_name`),
  157. KEY (`last_ran`),
  158. KEY (`queued`),
  159. KEY (`enabled`)
  160. ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
  161. INSERT INTO `{db->prefix}tasks` (`task_name`, `file`, `location`, `func`) VALUES('plugins_update_check', 'admin/admin_plugins_manage.php', 'coredir', 'admin_plugins_check_updates');
  162. INSERT INTO `{db->prefix}tasks` (`task_name`, `file`, `location`, `func`) VALUES('themes_update_check', 'admin/admin_themes_manage.php', 'coredir', 'admin_themes_check_updates');
  163. INSERT INTO `{db->prefix}tasks` (`task_name`, `file`, `location`, `func`) VALUES('system_update_check', 'admin/admin_update.php', 'coredir', 'admin_update_check');
  164. ##
  165. # Holds uploaded files, well, the files information that is.
  166. ##
  167. CREATE TABLE `{db->prefix}uploads`
  168. (
  169. `area_name` VARCHAR(255) NOT NULL,
  170. `area_id` INT(11) UNSIGNED NOT NULL,
  171. `upload_id` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT,
  172. `upload_time` INT(10) UNSIGNED NOT NULL,
  173. `member_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
  174. `member_name` VARCHAR(255) NOT NULL,
  175. `member_email` VARCHAR(255) NOT NULL,
  176. `member_ip` VARCHAR(150) NOT NULL,
  177. `modified_time` INT(10) UNSIGNED NOT NULL DEFAULT '0',
  178. `modified_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
  179. `modified_name` VARCHAR(255) NULL,
  180. `modified_email` VARCHAR(255) NULL,
  181. `modified_ip` VARCHAR(150) NULL,
  182. `filename` VARCHAR(255) NOT NULL,
  183. `file_ext` VARCHAR(100) NOT NULL,
  184. `filelocation` VARCHAR(255) NOT NULL,
  185. `filesize` INT(11) UNSIGNED NOT NULL DEFAULT '0',
  186. `downloads` INT(11) UNSIGNED NOT NULL DEFAULT '0',
  187. `upload_type` VARCHAR(100) NOT NULL,
  188. `mime_type` VARCHAR(255) NOT NULL,
  189. `checksum` VARCHAR(40) NOT NULL,
  190. PRIMARY KEY (`area_name`, `area_id`, `upload_id`),
  191. KEY (`member_id`),
  192. KEY (`member_name`),
  193. KEY (`member_ip`)
  194. ) ENGINE=MyISAM DEFAULT CHARSET=utf8;