install.sql 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217
  1. -- TABLE: entries
  2. CREATE TABLE IF NOT EXISTS `bx_posts_posts` (
  3. `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  4. `author` int(10) unsigned NOT NULL,
  5. `added` int(11) NOT NULL,
  6. `changed` int(11) NOT NULL,
  7. `thumb` int(11) NOT NULL,
  8. `title` varchar(255) NOT NULL,
  9. `text` text NOT NULL,
  10. `views` int(11) NOT NULL default '0',
  11. `rate` float NOT NULL default '0',
  12. `votes` int(11) NOT NULL default '0',
  13. `comments` int(11) NOT NULL default '0',
  14. `allow_view_to` int(11) NOT NULL DEFAULT '3',
  15. `status` enum('active','hidden') NOT NULL DEFAULT 'active',
  16. PRIMARY KEY (`id`),
  17. FULLTEXT KEY `title_text` (`title`,`text`)
  18. );
  19. -- TABLE: storages & transcoders
  20. CREATE TABLE IF NOT EXISTS `bx_posts_files` (
  21. `id` int(11) NOT NULL AUTO_INCREMENT,
  22. `profile_id` int(10) unsigned NOT NULL,
  23. `remote_id` varchar(255) NOT NULL,
  24. `path` varchar(255) NOT NULL,
  25. `file_name` varchar(255) NOT NULL,
  26. `mime_type` varchar(128) NOT NULL,
  27. `ext` varchar(32) NOT NULL,
  28. `size` int(11) NOT NULL,
  29. `added` int(11) NOT NULL,
  30. `modified` int(11) NOT NULL,
  31. `private` int(11) NOT NULL,
  32. PRIMARY KEY (`id`),
  33. UNIQUE KEY `remote_id` (`remote_id`)
  34. );
  35. CREATE TABLE IF NOT EXISTS `bx_posts_photos_resized` (
  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. -- TABLE: comments
  51. CREATE TABLE IF NOT EXISTS `bx_posts_cmts` (
  52. `cmt_id` int(11) NOT NULL AUTO_INCREMENT,
  53. `cmt_parent_id` int(11) NOT NULL DEFAULT '0',
  54. `cmt_vparent_id` int(11) NOT NULL DEFAULT '0',
  55. `cmt_object_id` int(11) NOT NULL DEFAULT '0',
  56. `cmt_author_id` int(10) unsigned NOT NULL DEFAULT '0',
  57. `cmt_level` int(11) NOT NULL DEFAULT '0',
  58. `cmt_text` text NOT NULL,
  59. `cmt_mood` tinyint(4) NOT NULL DEFAULT '0',
  60. `cmt_rate` int(11) NOT NULL DEFAULT '0',
  61. `cmt_rate_count` int(11) NOT NULL DEFAULT '0',
  62. `cmt_time` int(11) unsigned NOT NULL DEFAULT '0',
  63. `cmt_replies` int(11) NOT NULL DEFAULT '0',
  64. PRIMARY KEY (`cmt_id`),
  65. KEY `cmt_object_id` (`cmt_object_id`,`cmt_parent_id`)
  66. );
  67. -- TABLE: votes
  68. CREATE TABLE IF NOT EXISTS `bx_posts_votes` (
  69. `object_id` int(11) NOT NULL default '0',
  70. `count` int(11) NOT NULL default '0',
  71. `sum` int(11) NOT NULL default '0',
  72. UNIQUE KEY `object_id` (`object_id`)
  73. ) ENGINE=MYISAM DEFAULT CHARSET=utf8;
  74. CREATE TABLE IF NOT EXISTS `bx_posts_votes_track` (
  75. `object_id` int(11) NOT NULL default '0',
  76. `author_id` int(11) NOT NULL default '0',
  77. `author_nip` int(11) unsigned NOT NULL default '0',
  78. `value` tinyint(4) NOT NULL default '0',
  79. `date` int(11) NOT NULL default '0',
  80. KEY `vote` (`object_id`, `author_nip`)
  81. ) ENGINE=MYISAM DEFAULT CHARSET=utf8;
  82. -- TABLE: views
  83. CREATE TABLE `bx_posts_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. ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
  90. -- TABLE: metas
  91. CREATE TABLE `bx_posts_meta_keywords` (
  92. `object_id` int(10) unsigned NOT NULL,
  93. `keyword` varchar(255) NOT NULL,
  94. KEY `object_id` (`object_id`),
  95. KEY `keyword` (`keyword`)
  96. ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
  97. CREATE TABLE `bx_posts_meta_locations` (
  98. `object_id` int(10) unsigned NOT NULL,
  99. `lat` double NOT NULL,
  100. `lng` double NOT NULL,
  101. `country` varchar(2) NOT NULL,
  102. `state` varchar(255) NOT NULL,
  103. `city` varchar(255) NOT NULL,
  104. `zip` varchar(255) NOT NULL,
  105. PRIMARY KEY (`object_id`),
  106. KEY `country_state_city` (`country`,`state`(8),`city`(8))
  107. ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
  108. -- STORAGES & TRANSCODERS
  109. 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
  110. ('bx_posts_files', 'Local', '', 360, 2592000, 3, 'bx_posts_files', 'allow-deny', 'jpg,jpeg,jpe,gif,png', '', 0, 0, 0, 0, 0, 0),
  111. ('bx_posts_photos_resized', 'Local', '', 360, 2592000, 3, 'bx_posts_photos_resized', 'allow-deny', 'jpg,jpeg,jpe,gif,png', '', 0, 0, 0, 0, 0, 0);
  112. INSERT INTO `sys_objects_transcoder` (`object`, `storage_object`, `source_type`, `source_params`, `private`, `atime_tracking`, `atime_pruning`, `ts`) VALUES
  113. ('bx_posts_preview', 'bx_posts_photos_resized', 'Storage', 'a:1:{s:6:"object";s:14:"bx_posts_files";}', 'no', '1', '2592000', '0'),
  114. ('bx_posts_gallery', 'bx_posts_photos_resized', 'Storage', 'a:1:{s:6:"object";s:14:"bx_posts_files";}', 'no', '1', '2592000', '0');
  115. INSERT INTO `sys_transcoder_filters` (`transcoder_object`, `filter`, `filter_params`, `order`) VALUES
  116. ('bx_posts_preview', 'Resize', 'a:4:{s:1:"w";s:3:"300";s:1:"h";s:3:"200";s:11:"crop_resize";s:1:"1";s:10:"force_type";s:3:"jpg";}', '0'),
  117. ('bx_posts_gallery', 'Resize', 'a:1:{s:1:"w";s:3:"500";}', '0');
  118. -- FORMS
  119. 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
  120. ('bx_posts', 'bx_posts', '_bx_posts_form_entry', '', 'a:1:{s:7:\"enctype\";s:19:\"multipart/form-data\";}', 'bx_posts_posts', 'id', '', '', 'do_submit', '', 0, 1, 'BxPostsFormEntry', 'modules/boonex/posts/classes/BxPostsFormEntry.php');
  121. INSERT INTO `sys_form_displays`(`object`, `display_name`, `module`, `view_mode`, `title`) VALUES
  122. ('bx_posts', 'bx_posts_entry_add', 'bx_posts', 0, '_bx_posts_form_entry_display_add'),
  123. ('bx_posts', 'bx_posts_entry_edit', 'bx_posts', 0, '_bx_posts_form_entry_display_edit'),
  124. ('bx_posts', 'bx_posts_entry_delete', 'bx_posts', 0, '_bx_posts_form_entry_display_delete'),
  125. ('bx_posts', 'bx_posts_entry_view', 'bx_posts', 1, '_bx_posts_form_entry_display_view');
  126. 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
  127. ('bx_posts', 'bx_posts', 'delete_confirm', 1, '', 0, 'checkbox', '_bx_posts_form_entry_input_sys_delete_confirm', '_bx_posts_form_entry_input_delete_confirm', '_bx_posts_form_entry_input_delete_confirm_info', 1, 0, 0, '', '', '', 'Avail', '', '_bx_posts_form_entry_input_delete_confirm_error', '', '', 1, 0),
  128. ('bx_posts', 'bx_posts', 'do_submit', '_bx_posts_form_entry_input_do_submit', '', 0, 'submit', '_bx_posts_form_entry_input_sys_do_submit', '', '', 0, 0, 0, '', '', '', '', '', '', '', '', 1, 0),
  129. ('bx_posts', 'bx_posts', 'title', '', '', 0, 'text', '_bx_posts_form_entry_input_sys_title', '_bx_posts_form_entry_input_title', '', 1, 0, 0, '', '', '', 'Avail', '', '_bx_posts_form_entry_input_title_err', 'Xss', '', 1, 0),
  130. ('bx_posts', 'bx_posts', 'text', '', '', 0, 'textarea', '_bx_posts_form_entry_input_sys_text', '_bx_posts_form_entry_input_text', '', 1, 0, 2, '', '', '', 'Avail', '', '_bx_posts_form_entry_input_text_err', 'XssHtml', '', 1, 0),
  131. ('bx_posts', 'bx_posts', 'pictures', '', '', 0, 'files', '_bx_posts_form_entry_input_sys_pictures', '_bx_posts_form_entry_input_pictures', '', 0, 0, 0, '', '', '', '', '', '', '', '', 1, 0),
  132. ('bx_posts', 'bx_posts', 'allow_view_to', '', '', 0, 'custom', '_bx_posts_form_entry_input_sys_allow_view_to', '_bx_posts_form_entry_input_allow_view_to', '', 1, 0, 0, '', '', '', '', '', '', '', '', 0, 0),
  133. ('bx_posts', 'bx_posts', 'location', '', '', 0, 'custom', '_sys_form_input_sys_location', '', '', 0, 0, 0, '', '', '', '', '', '', '', '', 0, 0);
  134. INSERT INTO `sys_form_display_inputs` (`display_name`, `input_name`, `visible_for_levels`, `active`, `order`) VALUES
  135. ('bx_posts_entry_add', 'delete_confirm', 2147483647, 0, 1),
  136. ('bx_posts_entry_add', 'title', 2147483647, 1, 2),
  137. ('bx_posts_entry_add', 'text', 2147483647, 1, 3),
  138. ('bx_posts_entry_add', 'pictures', 2147483647, 1, 4),
  139. ('bx_posts_entry_add', 'allow_view_to', 2147483647, 1, 5),
  140. ('bx_posts_entry_add', 'location', 2147483647, 1, 6),
  141. ('bx_posts_entry_add', 'do_submit', 2147483647, 1, 7),
  142. ('bx_posts_entry_edit', 'delete_confirm', 2147483647, 0, 1),
  143. ('bx_posts_entry_edit', 'title', 2147483647, 1, 2),
  144. ('bx_posts_entry_edit', 'text', 2147483647, 1, 3),
  145. ('bx_posts_entry_edit', 'pictures', 2147483647, 1, 4),
  146. ('bx_posts_entry_edit', 'allow_view_to', 2147483647, 1, 5),
  147. ('bx_posts_entry_edit', 'location', 2147483647, 1, 6),
  148. ('bx_posts_entry_edit', 'do_submit', 2147483647, 1, 7),
  149. ('bx_posts_entry_view', 'delete_confirm', 2147483647, 0, 0),
  150. ('bx_posts_entry_view', 'allow_view_to', 2147483647, 0, 0),
  151. ('bx_posts_entry_view', 'do_submit', 2147483647, 0, 0),
  152. ('bx_posts_entry_view', 'text', 2147483647, 0, 0),
  153. ('bx_posts_entry_view', 'title', 2147483647, 0, 0),
  154. ('bx_posts_entry_view', 'pictures', 2147483647, 0, 0),
  155. ('bx_posts_entry_delete', 'delete_confirm', 2147483647, 1, 1),
  156. ('bx_posts_entry_delete', 'do_submit', 2147483647, 1, 2),
  157. ('bx_posts_entry_delete', 'allow_view_to', 2147483647, 0, 0),
  158. ('bx_posts_entry_delete', 'pictures', 2147483647, 0, 0),
  159. ('bx_posts_entry_delete', 'text', 2147483647, 0, 0),
  160. ('bx_posts_entry_delete', 'title', 2147483647, 0, 0);
  161. -- COMMENTS
  162. INSERT INTO `sys_objects_cmts` (`Name`, `Table`, `CharsPostMin`, `CharsPostMax`, `CharsDisplayMax`, `Nl2br`, `PerView`, `PerViewReplies`, `BrowseType`, `IsBrowseSwitch`, `PostFormPosition`, `NumberOfLevels`, `IsDisplaySwitch`, `IsRatable`, `ViewingThreshold`, `IsOn`, `RootStylePrefix`, `BaseUrl`, `ObjectVote`, `TriggerTable`, `TriggerFieldId`, `TriggerFieldTitle`, `TriggerFieldComments`, `ClassName`, `ClassFile`) VALUES
  163. ('bx_posts', 'bx_posts_cmts', 1, 5000, 1000, 1, 5, 3, 'tail', 1, 'bottom', 1, 1, 1, -3, 1, 'cmt', 'page.php?i=view-post&id={object_id}', '', 'bx_posts_posts', 'id', 'title', 'comments', '', '');
  164. -- VOTES
  165. INSERT INTO `sys_objects_vote` (`Name`, `TableMain`, `TableTrack`, `PostTimeout`, `MinValue`, `MaxValue`, `IsUndo`, `IsOn`, `TriggerTable`, `TriggerFieldId`, `TriggerFieldRate`, `TriggerFieldRateCount`, `ClassName`, `ClassFile`) VALUES
  166. ('bx_posts', 'bx_posts_votes', 'bx_posts_votes_track', '604800', '1', '1', '0', '1', 'bx_posts_posts', 'id', 'rate', 'votes', '', '');
  167. -- VIEWS
  168. INSERT INTO `sys_objects_view` (`name`, `table_track`, `period`, `is_on`, `trigger_table`, `trigger_field_id`, `trigger_field_count`, `class_name`, `class_file`) VALUES
  169. ('bx_posts', 'bx_posts_views_track', '86400', '1', 'bx_posts_posts', 'id', 'views', '', '');
  170. -- STUDIO: page & widget
  171. INSERT INTO `sys_std_pages`(`index`, `name`, `header`, `caption`, `icon`) VALUES
  172. (3, 'bx_posts', '_bx_posts', '_bx_posts', 'bx_posts@modules/boonex/posts/|std-pi.png');
  173. SET @iPageId = LAST_INSERT_ID();
  174. SET @iParentPageId = (SELECT `id` FROM `sys_std_pages` WHERE `name` = 'home');
  175. SET @iParentPageOrder = (SELECT MAX(`order`) FROM `sys_std_pages_widgets` WHERE `page_id` = @iParentPageId);
  176. INSERT INTO `sys_std_widgets` (`page_id`, `module`, `url`, `click`, `icon`, `caption`, `cnt_notices`, `cnt_actions`) VALUES
  177. (@iPageId, 'bx_posts', '{url_studio}module.php?name=bx_posts', '', 'bx_posts@modules/boonex/posts/|std-wi.png', '_bx_posts', '', '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";}');
  178. INSERT INTO `sys_std_pages_widgets` (`page_id`, `widget_id`, `order`) VALUES
  179. (@iParentPageId, LAST_INSERT_ID(), IF(ISNULL(@iParentPageOrder), 1, @iParentPageOrder + 1));