install.sql 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252
  1. SET @sName = 'bx_forum';
  2. -- TABLE: entries
  3. CREATE TABLE IF NOT EXISTS `bx_forum_discussions` (
  4. `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  5. `author` int(10) unsigned NOT NULL,
  6. `added` int(11) NOT NULL,
  7. `changed` int(11) NOT NULL,
  8. `title` varchar(255) NOT NULL,
  9. `cat` int(11) NOT NULL,
  10. `text` text NOT NULL,
  11. `lr_timestamp` int(11) NOT NULL,
  12. `lr_profile_id` int(10) unsigned NOT NULL,
  13. `lr_comment_id` int(11) NOT NULL,
  14. `views` int(11) NOT NULL default '0',
  15. `rate` float NOT NULL default '0',
  16. `votes` int(11) NOT NULL default '0',
  17. `favorites` int(11) NOT NULL default '0',
  18. `comments` int(11) NOT NULL default '0',
  19. `reports` int(11) NOT NULL default '0',
  20. `stick` tinyint(4) NOT NULL DEFAULT '0',
  21. `lock` tinyint(4) NOT NULL DEFAULT '0',
  22. `allow_view_to` int(11) NOT NULL DEFAULT '3',
  23. `status` enum('active','draft','hidden') NOT NULL DEFAULT 'active',
  24. `status_admin` enum('active','hidden') NOT NULL DEFAULT 'active',
  25. PRIMARY KEY (`id`),
  26. FULLTEXT KEY `title_text` (`title`,`text`),
  27. KEY `lr_timestamp` (`lr_timestamp`)
  28. );
  29. CREATE TABLE IF NOT EXISTS `bx_forum_categories` (
  30. `category` int(11) NOT NULL default '0',
  31. `visible_for_levels` int(11) NOT NULL default '2147483647',
  32. PRIMARY KEY (`category`)
  33. ) ENGINE=MYISAM DEFAULT CHARSET=utf8;
  34. -- TABLE: storages & transcoders
  35. CREATE TABLE IF NOT EXISTS `bx_forum_files` (
  36. `id` int(11) NOT NULL AUTO_INCREMENT,
  37. `profile_id` int(10) unsigned NOT NULL,
  38. `remote_id` varchar(255) NOT NULL,
  39. `path` varchar(255) NOT NULL,
  40. `file_name` varchar(255) NOT NULL,
  41. `mime_type` varchar(128) NOT NULL,
  42. `ext` varchar(32) NOT NULL,
  43. `size` int(11) NOT NULL,
  44. `added` int(11) NOT NULL,
  45. `modified` int(11) NOT NULL,
  46. `private` int(11) NOT NULL,
  47. PRIMARY KEY (`id`),
  48. UNIQUE KEY `remote_id` (`remote_id`)
  49. );
  50. CREATE TABLE IF NOT EXISTS `bx_forum_photos_resized` (
  51. `id` int(11) NOT NULL AUTO_INCREMENT,
  52. `profile_id` int(10) unsigned NOT NULL,
  53. `remote_id` varchar(255) NOT NULL,
  54. `path` varchar(255) NOT NULL,
  55. `file_name` varchar(255) NOT NULL,
  56. `mime_type` varchar(128) NOT NULL,
  57. `ext` varchar(32) NOT NULL,
  58. `size` int(11) NOT NULL,
  59. `added` int(11) NOT NULL,
  60. `modified` int(11) NOT NULL,
  61. `private` int(11) NOT NULL,
  62. PRIMARY KEY (`id`),
  63. UNIQUE KEY `remote_id` (`remote_id`)
  64. );
  65. -- TABLE: comments
  66. CREATE TABLE IF NOT EXISTS `bx_forum_cmts` (
  67. `cmt_id` int(11) NOT NULL AUTO_INCREMENT,
  68. `cmt_parent_id` int(11) NOT NULL DEFAULT '0',
  69. `cmt_vparent_id` int(11) NOT NULL DEFAULT '0',
  70. `cmt_object_id` int(11) NOT NULL DEFAULT '0',
  71. `cmt_author_id` int(10) unsigned NOT NULL DEFAULT '0',
  72. `cmt_level` int(11) NOT NULL DEFAULT '0',
  73. `cmt_text` text NOT NULL,
  74. `cmt_mood` tinyint(4) NOT NULL DEFAULT '0',
  75. `cmt_rate` int(11) NOT NULL DEFAULT '0',
  76. `cmt_rate_count` int(11) NOT NULL DEFAULT '0',
  77. `cmt_time` int(11) unsigned NOT NULL DEFAULT '0',
  78. `cmt_replies` int(11) NOT NULL DEFAULT '0',
  79. PRIMARY KEY (`cmt_id`),
  80. KEY `cmt_object_id` (`cmt_object_id`,`cmt_parent_id`)
  81. );
  82. -- TABLE: views
  83. CREATE TABLE `bx_forum_views_track` (
  84. `object_id` int(11) NOT NULL default '0',
  85. `viewer_id` int(11) NOT NULL default '0',
  86. `viewer_nip` int(11) unsigned NOT NULL default '0',
  87. `date` int(11) NOT NULL default '0',
  88. KEY `id` (`object_id`,`viewer_id`,`viewer_nip`)
  89. );
  90. -- TABLE: votes
  91. CREATE TABLE IF NOT EXISTS `bx_forum_votes` (
  92. `object_id` int(11) NOT NULL default '0',
  93. `count` int(11) NOT NULL default '0',
  94. `sum` int(11) NOT NULL default '0',
  95. UNIQUE KEY `object_id` (`object_id`)
  96. ) ENGINE=MYISAM DEFAULT CHARSET=utf8;
  97. CREATE TABLE IF NOT EXISTS `bx_forum_votes_track` (
  98. `id` int(11) NOT NULL AUTO_INCREMENT,
  99. `object_id` int(11) NOT NULL default '0',
  100. `author_id` int(11) NOT NULL default '0',
  101. `author_nip` int(11) unsigned NOT NULL default '0',
  102. `value` tinyint(4) NOT NULL default '0',
  103. `date` int(11) NOT NULL default '0',
  104. PRIMARY KEY (`id`),
  105. KEY `vote` (`object_id`, `author_nip`)
  106. ) ENGINE=MYISAM DEFAULT CHARSET=utf8;
  107. -- TABLE: metas
  108. CREATE TABLE `bx_forum_meta_keywords` (
  109. `object_id` int(10) unsigned NOT NULL,
  110. `keyword` varchar(255) NOT NULL,
  111. KEY `object_id` (`object_id`),
  112. KEY `keyword` (`keyword`)
  113. ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
  114. -- TABLE: reports
  115. CREATE TABLE IF NOT EXISTS `bx_forum_reports` (
  116. `object_id` int(11) NOT NULL default '0',
  117. `count` int(11) NOT NULL default '0',
  118. UNIQUE KEY `object_id` (`object_id`)
  119. ) ENGINE=MYISAM DEFAULT CHARSET=utf8;
  120. CREATE TABLE IF NOT EXISTS `bx_forum_reports_track` (
  121. `id` int(11) NOT NULL AUTO_INCREMENT,
  122. `object_id` int(11) NOT NULL default '0',
  123. `author_id` int(11) NOT NULL default '0',
  124. `author_nip` int(11) unsigned NOT NULL default '0',
  125. `type` varchar(32) NOT NULL default '',
  126. `text` text NOT NULL default '',
  127. `date` int(11) NOT NULL default '0',
  128. PRIMARY KEY (`id`),
  129. KEY `report` (`object_id`, `author_nip`)
  130. ) ENGINE=MYISAM DEFAULT CHARSET=utf8;
  131. -- TABLE: favorites
  132. CREATE TABLE `bx_forum_favorites_track` (
  133. `object_id` int(11) NOT NULL default '0',
  134. `author_id` int(11) NOT NULL default '0',
  135. `date` int(11) NOT NULL default '0',
  136. KEY `id` (`object_id`,`author_id`)
  137. ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
  138. -- STORAGES & TRANSCODERS
  139. INSERT INTO `sys_objects_storage` (`object`, `engine`, `params`, `token_life`, `cache_control`, `levels`, `table_files`, `ext_mode`, `ext_allow`, `ext_deny`, `quota_size`, `current_size`, `quota_number`, `current_number`, `max_file_size`, `ts`) VALUES
  140. ('bx_forum_files', 'Local', '', 360, 2592000, 3, 'bx_forum_files', 'deny-allow', '', 'action,apk,app,bat,bin,cmd,com,command,cpl,csh,exe,gadget,inf,ins,inx,ipa,isu,job,jse,ksh,lnk,msc,msi,msp,mst,osx,out,paf,pif,prg,ps1,reg,rgs,run,sct,shb,shs,u3p,vb,vbe,vbs,vbscript,workflow,ws,wsf', 0, 0, 0, 0, 0, 0),
  141. ('bx_forum_files_cmts', 'Local', '', 360, 2592000, 3, 'bx_forum_files', 'deny-allow', '', 'action,apk,app,bat,bin,cmd,com,command,cpl,csh,exe,gadget,inf,ins,inx,ipa,isu,job,jse,ksh,lnk,msc,msi,msp,mst,osx,out,paf,pif,prg,ps1,reg,rgs,run,sct,shb,shs,u3p,vb,vbe,vbs,vbscript,workflow,ws,wsf', 0, 0, 0, 0, 0, 0),
  142. ('bx_forum_photos_resized', 'Local', '', 360, 2592000, 3, 'bx_forum_photos_resized', 'allow-deny', 'jpg,jpeg,jpe,gif,png', '', 0, 0, 0, 0, 0, 0);
  143. INSERT INTO `sys_objects_transcoder` (`object`, `storage_object`, `source_type`, `source_params`, `private`, `atime_tracking`, `atime_pruning`, `ts`, `override_class_name`, `override_class_file`) VALUES
  144. ('bx_forum_preview', 'bx_forum_photos_resized', 'Storage', 'a:1:{s:6:"object";s:14:"bx_forum_files";}', 'no', '1', '2592000', '0', '', ''),
  145. ('bx_forum_preview_cmts', 'bx_forum_photos_resized', 'Storage', 'a:1:{s:6:"object";s:19:"bx_forum_files_cmts";}', 'no', '1', '2592000', '0', '', '');
  146. INSERT INTO `sys_transcoder_filters` (`transcoder_object`, `filter`, `filter_params`, `order`) VALUES
  147. ('bx_forum_preview', 'Resize', 'a:3:{s:1:"w";s:3:"300";s:1:"h";s:3:"200";s:11:"crop_resize";s:1:"1";}', '0'),
  148. ('bx_forum_preview_cmts', 'Resize', 'a:4:{s:1:"w";s:3:"100";s:1:"h";s:3:"100";s:13:"square_resize";s:1:"1";s:10:"force_type";s:3:"jpg";}', '0');
  149. -- FORMS
  150. INSERT INTO `sys_objects_form`(`object`, `module`, `title`, `action`, `form_attrs`, `table`, `key`, `uri`, `uri_title`, `submit_name`, `params`, `deletable`, `active`, `override_class_name`, `override_class_file`) VALUES
  151. (@sName, @sName, '_bx_forum_form_entry', '', 'a:1:{s:7:\"enctype\";s:19:\"multipart/form-data\";}', 'bx_forum_discussions', 'id', '', '', 'do_submit', '', 0, 1, 'BxForumFormEntry', 'modules/boonex/forum/classes/BxForumFormEntry.php'),
  152. ('bx_forum_search', @sName, '_bx_forum_form_search', '', 'a:1:{s:7:\"enctype\";s:19:\"multipart/form-data\";}', 'bx_forum_discussions', 'id', '', '', 'do_submit', '', 0, 1, 'BxForumFormSearch', 'modules/boonex/forum/classes/BxForumFormSearch.php');
  153. INSERT INTO `sys_form_displays`(`object`, `display_name`, `module`, `view_mode`, `title`) VALUES
  154. (@sName, 'bx_forum_entry_add', @sName, 0, '_bx_forum_form_entry_display_add'),
  155. (@sName, 'bx_forum_entry_delete', @sName, 0, '_bx_forum_form_entry_display_delete'),
  156. (@sName, 'bx_forum_entry_edit', @sName, 0, '_bx_forum_form_entry_display_edit'),
  157. (@sName, 'bx_forum_entry_view', @sName, 1, '_bx_forum_form_entry_display_view'),
  158. ('bx_forum_search', 'bx_forum_search_full', @sName, 0, '_bx_forum_form_search_display_full');
  159. INSERT INTO `sys_form_inputs`(`object`, `module`, `name`, `value`, `values`, `checked`, `type`, `caption_system`, `caption`, `info`, `required`, `collapsed`, `html`, `attrs`, `attrs_tr`, `attrs_wrapper`, `checker_func`, `checker_params`, `checker_error`, `db_pass`, `db_params`, `editable`, `deletable`) VALUES
  160. (@sName, @sName, 'allow_view_to', '', '', 0, 'custom', '_bx_forum_form_entry_input_sys_allow_view_to', '_bx_forum_form_entry_input_allow_view_to', '', 1, 0, 0, '', '', '', '', '', '', '', '', 0, 0),
  161. (@sName, @sName, 'delete_confirm', 1, '', 0, 'checkbox', '_bx_forum_form_entry_input_sys_delete_confirm', '_bx_forum_form_entry_input_delete_confirm', '_bx_forum_form_entry_input_delete_confirm_info', 1, 0, 0, '', '', '', 'Avail', '', '_bx_forum_form_entry_input_delete_confirm_error', '', '', 1, 0),
  162. (@sName, @sName, 'do_submit', '_bx_forum_form_entry_input_do_submit', '', 0, 'submit', '_bx_forum_form_entry_input_sys_do_submit', '', '', 0, 0, 0, '', '', '', '', '', '', '', '', 1, 0),
  163. (@sName, @sName, 'submit_text', '', '', 0, 'custom', '_bx_forum_form_entry_input_sys_submit_text', '', '', 0, 0, 0, '', '', '', '', '', '', '', '', 0, 0),
  164. (@sName, @sName, 'submit_block', '', 'do_submit,submit_text', 0, 'input_set', '_bx_forum_form_entry_input_sys_submit_block', '', '', 0, 0, 0, '', '', '', '', '', '', '', '', 0, 0),
  165. (@sName, @sName, 'draft_id', '0', '', 0, 'hidden', '_bx_forum_form_entry_input_sys_draft_id', '', '', 0, 0, 0, '', '', '', '', '', '', '', '', 0, 0),
  166. (@sName, @sName, 'text', '', '', 0, 'textarea', '_bx_forum_form_entry_input_sys_text', '_bx_forum_form_entry_input_text', '', 1, 0, 2, '', '', '', 'Avail', '', '_bx_forum_form_entry_input_text_err', 'XssHtml', '', 1, 0),
  167. (@sName, @sName, 'title', '', '', 0, 'text', '_bx_forum_form_entry_input_sys_title', '_bx_forum_form_entry_input_title', '', 1, 0, 0, '', '', '', 'Avail', '', '_bx_forum_form_entry_input_title_err', 'Xss', '', 1, 0),
  168. (@sName, @sName, 'cat', '', '#!bx_forum_cats', 0, 'select', '_bx_forum_form_entry_input_sys_cat', '_bx_forum_form_entry_input_cat', '', 1, 0, 0, '', '', '', 'avail', '', '_bx_forum_form_entry_input_cat_err', 'Xss', '', 1, 0),
  169. (@sName, @sName, 'attachments', 'a:1:{i:0;s:9:"sys_html5";}', 'a:2:{s:10:"sys_simple";s:26:"_sys_uploader_simple_title";s:9:"sys_html5";s:25:"_sys_uploader_html5_title";}', 0, 'files', '_bx_forum_form_entry_input_sys_attachments', '_bx_forum_form_entry_input_attachments', '', 0, 0, 0, '', '', '', '', '', '', '', '', 1, 0),
  170. ('bx_forum_search', @sName, 'author', '', '', 0, 'custom', '_bx_forum_form_search_input_sys_author', '_bx_forum_form_search_input_author', '', 0, 0, 0, '', '', '', '', '', '', '', '', 1, 0),
  171. ('bx_forum_search', @sName, 'category', '', '#!bx_forum_cats', 0, 'select', '_bx_forum_form_search_input_sys_category', '_bx_forum_form_search_input_category', '', 0, 0, 0, '', '', '', '', '', '', '', '', 1, 0),
  172. ('bx_forum_search', @sName, 'keyword', '', '', 0, 'text', '_bx_forum_form_search_input_sys_keyword', '_bx_forum_form_search_input_keyword', '', 0, 0, 0, '', '', '', '', '', '', '', '', 1, 0),
  173. ('bx_forum_search', @sName, 'do_submit', '_bx_forum_form_search_input_do_submit', '', 0, 'submit', '_bx_forum_form_search_input_sys_do_submit', '', '', 0, 0, 0, '', '', '', '', '', '', '', '', 1, 0);
  174. INSERT INTO `sys_form_display_inputs` (`display_name`, `input_name`, `visible_for_levels`, `active`, `order`) VALUES
  175. ('bx_forum_entry_add', 'title', 2147483647, 1, 1),
  176. ('bx_forum_entry_add', 'cat', 2147483647, 1, 2),
  177. ('bx_forum_entry_add', 'text', 2147483647, 1, 3),
  178. ('bx_forum_entry_add', 'attachments', 2147483647, 1, 4),
  179. ('bx_forum_entry_add', 'allow_view_to', 2147483647, 1, 5),
  180. ('bx_forum_entry_add', 'submit_block', 2147483647, 1, 6),
  181. ('bx_forum_entry_add', 'do_submit', 2147483647, 1, 7),
  182. ('bx_forum_entry_add', 'submit_text', 2147483647, 1, 8),
  183. ('bx_forum_entry_add', 'draft_id', 2147483647, 1, 9),
  184. ('bx_forum_entry_edit', 'title', 2147483647, 1, 1),
  185. ('bx_forum_entry_edit', 'cat', 2147483647, 1, 2),
  186. ('bx_forum_entry_edit', 'text', 2147483647, 1, 3),
  187. ('bx_forum_entry_edit', 'attachments', 2147483647, 1, 4),
  188. ('bx_forum_entry_edit', 'allow_view_to', 2147483647, 1, 5),
  189. ('bx_forum_entry_edit', 'submit_block', 2147483647, 1, 6),
  190. ('bx_forum_entry_edit', 'do_submit', 2147483647, 1, 7),
  191. ('bx_forum_entry_edit', 'submit_text', 2147483647, 1, 8),
  192. ('bx_forum_entry_edit', 'draft_id', 2147483647, 1, 9),
  193. ('bx_forum_entry_view', 'title', 2147483647, 1, 1),
  194. ('bx_forum_entry_view', 'cat', 2147483647, 1, 2),
  195. ('bx_forum_entry_view', 'text', 2147483647, 1, 3),
  196. ('bx_forum_entry_delete', 'delete_confirm', 2147483647, 1, 1),
  197. ('bx_forum_entry_delete', 'do_submit', 2147483647, 1, 2),
  198. ('bx_forum_search_full', 'author', 2147483647, 1, 1),
  199. ('bx_forum_search_full', 'category', 2147483647, 1, 2),
  200. ('bx_forum_search_full', 'keyword', 2147483647, 1, 3),
  201. ('bx_forum_search_full', 'do_submit', 2147483647, 1, 4);
  202. -- PRE-VALUES
  203. INSERT INTO `sys_form_pre_lists`(`key`, `title`, `module`, `use_for_sets`) VALUES
  204. ('bx_forum_cats', '_bx_forum_pre_lists_cats', 'bx_forum', '0');
  205. INSERT INTO `sys_form_pre_values`(`Key`, `Value`, `Order`, `LKey`, `LKey2`) VALUES
  206. ('bx_forum_cats', '', 0, '_sys_please_select', ''),
  207. ('bx_forum_cats', '1', 1, '_bx_forum_cat_General', '');
  208. -- STUDIO: page & widget
  209. INSERT INTO `sys_std_pages`(`index`, `name`, `header`, `caption`, `icon`) VALUES
  210. (3, @sName, '_bx_forum', '_bx_forum', 'bx_forum@modules/boonex/forum/|std-icon.svg');
  211. SET @iPageId = LAST_INSERT_ID();
  212. SET @iParentPageId = (SELECT `id` FROM `sys_std_pages` WHERE `name` = 'home');
  213. SET @iParentPageOrder = (SELECT MAX(`order`) FROM `sys_std_pages_widgets` WHERE `page_id` = @iParentPageId);
  214. INSERT INTO `sys_std_widgets` (`page_id`, `module`, `url`, `click`, `icon`, `caption`, `cnt_notices`, `cnt_actions`) VALUES
  215. (@iPageId, @sName, '{url_studio}module.php?name=bx_forum', '', 'bx_forum@modules/boonex/forum/|std-icon.svg', '_bx_forum', '', 'a:4:{s:6:"module";s:6:"system";s:6:"method";s:11:"get_actions";s:6:"params";a:0:{}s:5:"class";s:18:"TemplStudioModules";}');
  216. INSERT INTO `sys_std_pages_widgets` (`page_id`, `widget_id`, `order`) VALUES
  217. (@iParentPageId, LAST_INSERT_ID(), IF(ISNULL(@iParentPageOrder), 1, @iParentPageOrder + 1));