install.sql 29 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481
  1. SET @sStorageEngine = (SELECT `value` FROM `sys_options` WHERE `name` = 'sys_storage_default');
  2. -- TABLE: PROFILES
  3. CREATE TABLE IF NOT EXISTS `bx_courses_data` (
  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. `picture` int(11) NOT NULL,
  9. `cover` int(11) NOT NULL,
  10. `name` varchar(255) NOT NULL,
  11. `cat` int(11) NOT NULL,
  12. `desc` text NOT NULL,
  13. `labels` text NOT NULL,
  14. `location` text NOT NULL,
  15. `views` int(11) NOT NULL default '0',
  16. `rate` float NOT NULL default '0',
  17. `votes` int(11) NOT NULL default '0',
  18. `score` int(11) NOT NULL default '0',
  19. `sc_up` int(11) NOT NULL default '0',
  20. `sc_down` int(11) NOT NULL default '0',
  21. `favorites` int(11) NOT NULL default '0',
  22. `comments` int(11) NOT NULL default '0',
  23. `reports` int(11) NOT NULL default '0',
  24. `featured` int(11) NOT NULL default '0',
  25. `join_confirmation` tinyint(4) NOT NULL DEFAULT '0',
  26. `allow_view_to` varchar(16) NOT NULL DEFAULT '3',
  27. `allow_post_to` varchar(16) NOT NULL DEFAULT '3',
  28. `status` enum('active','awaiting','hidden') NOT NULL DEFAULT 'active',
  29. PRIMARY KEY (`id`),
  30. FULLTEXT KEY `search_fields` (`name`, `desc`)
  31. );
  32. -- TABLE: STORAGES & TRANSCODERS
  33. CREATE TABLE IF NOT EXISTS `bx_courses_pics` (
  34. `id` int(11) NOT NULL AUTO_INCREMENT,
  35. `profile_id` int(10) unsigned NOT NULL,
  36. `remote_id` varchar(128) NOT NULL,
  37. `path` varchar(255) NOT NULL,
  38. `file_name` varchar(255) NOT NULL,
  39. `mime_type` varchar(128) NOT NULL,
  40. `ext` varchar(32) NOT NULL,
  41. `size` bigint(20) NOT NULL,
  42. `added` int(11) NOT NULL,
  43. `modified` int(11) NOT NULL,
  44. `private` int(11) NOT NULL,
  45. PRIMARY KEY (`id`),
  46. UNIQUE KEY `remote_id` (`remote_id`)
  47. );
  48. CREATE TABLE IF NOT EXISTS `bx_courses_pics_resized` (
  49. `id` int(11) NOT NULL AUTO_INCREMENT,
  50. `profile_id` int(10) unsigned NOT NULL,
  51. `remote_id` varchar(128) NOT NULL,
  52. `path` varchar(255) NOT NULL,
  53. `file_name` varchar(255) NOT NULL,
  54. `mime_type` varchar(128) NOT NULL,
  55. `ext` varchar(32) NOT NULL,
  56. `size` bigint(20) NOT NULL,
  57. `added` int(11) NOT NULL,
  58. `modified` int(11) NOT NULL,
  59. `private` int(11) NOT NULL,
  60. PRIMARY KEY (`id`),
  61. UNIQUE KEY `remote_id` (`remote_id`)
  62. );
  63. -- TABLE: comments
  64. CREATE TABLE IF NOT EXISTS `bx_courses_cmts` (
  65. `cmt_id` int(11) NOT NULL AUTO_INCREMENT,
  66. `cmt_parent_id` int(11) NOT NULL DEFAULT '0',
  67. `cmt_vparent_id` int(11) NOT NULL DEFAULT '0',
  68. `cmt_object_id` int(11) NOT NULL DEFAULT '0',
  69. `cmt_author_id` int(11) NOT NULL DEFAULT '0',
  70. `cmt_level` int(11) NOT NULL DEFAULT '0',
  71. `cmt_text` text NOT NULL,
  72. `cmt_mood` tinyint(4) NOT NULL DEFAULT '0',
  73. `cmt_rate` int(11) NOT NULL DEFAULT '0',
  74. `cmt_rate_count` int(11) NOT NULL DEFAULT '0',
  75. `cmt_time` int(11) unsigned NOT NULL DEFAULT '0',
  76. `cmt_replies` int(11) NOT NULL DEFAULT '0',
  77. `cmt_pinned` int(11) NOT NULL default '0',
  78. PRIMARY KEY (`cmt_id`),
  79. KEY `cmt_object_id` (`cmt_object_id`,`cmt_parent_id`),
  80. FULLTEXT KEY `search_fields` (`cmt_text`)
  81. );
  82. CREATE TABLE IF NOT EXISTS `bx_courses_cmts_notes` (
  83. `cmt_id` int(11) NOT NULL AUTO_INCREMENT,
  84. `cmt_parent_id` int(11) NOT NULL DEFAULT '0',
  85. `cmt_vparent_id` int(11) NOT NULL DEFAULT '0',
  86. `cmt_object_id` int(11) NOT NULL DEFAULT '0',
  87. `cmt_author_id` int(11) NOT NULL DEFAULT '0',
  88. `cmt_level` int(11) NOT NULL DEFAULT '0',
  89. `cmt_text` text NOT NULL,
  90. `cmt_mood` tinyint(4) NOT NULL DEFAULT '0',
  91. `cmt_rate` int(11) NOT NULL DEFAULT '0',
  92. `cmt_rate_count` int(11) NOT NULL DEFAULT '0',
  93. `cmt_time` int(11) unsigned NOT NULL DEFAULT '0',
  94. `cmt_replies` int(11) NOT NULL DEFAULT '0',
  95. `cmt_pinned` int(11) NOT NULL default '0',
  96. PRIMARY KEY (`cmt_id`),
  97. KEY `cmt_object_id` (`cmt_object_id`,`cmt_parent_id`),
  98. FULLTEXT KEY `search_fields` (`cmt_text`)
  99. );
  100. -- TABLE: VIEWS
  101. CREATE TABLE IF NOT EXISTS `bx_courses_views_track` (
  102. `object_id` int(11) NOT NULL default '0',
  103. `viewer_id` int(11) NOT NULL default '0',
  104. `viewer_nip` int(11) unsigned NOT NULL default '0',
  105. `date` int(11) NOT NULL default '0',
  106. KEY `id` (`object_id`,`viewer_id`,`viewer_nip`)
  107. );
  108. -- TABLE: VOTES
  109. CREATE TABLE IF NOT EXISTS `bx_courses_votes` (
  110. `object_id` int(11) NOT NULL default '0',
  111. `count` int(11) NOT NULL default '0',
  112. `sum` int(11) NOT NULL default '0',
  113. UNIQUE KEY `object_id` (`object_id`)
  114. );
  115. CREATE TABLE IF NOT EXISTS `bx_courses_votes_track` (
  116. `id` int(11) NOT NULL AUTO_INCREMENT,
  117. `object_id` int(11) NOT NULL default '0',
  118. `author_id` int(11) NOT NULL default '0',
  119. `author_nip` int(11) unsigned NOT NULL default '0',
  120. `value` tinyint(4) NOT NULL default '0',
  121. `date` int(11) NOT NULL default '0',
  122. PRIMARY KEY (`id`),
  123. KEY `vote` (`object_id`, `author_nip`)
  124. );
  125. -- TABLE: REPORTS
  126. CREATE TABLE IF NOT EXISTS `bx_courses_reports` (
  127. `object_id` int(11) NOT NULL default '0',
  128. `count` int(11) NOT NULL default '0',
  129. UNIQUE KEY `object_id` (`object_id`)
  130. );
  131. CREATE TABLE IF NOT EXISTS `bx_courses_reports_track` (
  132. `id` int(11) NOT NULL AUTO_INCREMENT,
  133. `object_id` int(11) NOT NULL default '0',
  134. `author_id` int(11) NOT NULL default '0',
  135. `author_nip` int(11) unsigned NOT NULL default '0',
  136. `type` varchar(32) NOT NULL default '',
  137. `text` text NOT NULL default '',
  138. `date` int(11) NOT NULL default '0',
  139. `checked_by` int(11) NOT NULL default '0',
  140. `status` tinyint(11) NOT NULL default '0',
  141. PRIMARY KEY (`id`),
  142. KEY `report` (`object_id`, `author_nip`)
  143. );
  144. -- TABLE: metas
  145. CREATE TABLE IF NOT EXISTS `bx_courses_meta_keywords` (
  146. `object_id` int(10) unsigned NOT NULL,
  147. `keyword` varchar(255) NOT NULL,
  148. KEY `object_id` (`object_id`),
  149. KEY `keyword` (`keyword`)
  150. );
  151. CREATE TABLE IF NOT EXISTS `bx_courses_meta_locations` (
  152. `object_id` int(10) unsigned NOT NULL,
  153. `lat` double NOT NULL,
  154. `lng` double NOT NULL,
  155. `country` varchar(2) NOT NULL,
  156. `state` varchar(255) NOT NULL,
  157. `city` varchar(255) NOT NULL,
  158. `zip` varchar(255) NOT NULL,
  159. `street` varchar(255) NOT NULL,
  160. `street_number` varchar(255) NOT NULL,
  161. PRIMARY KEY (`object_id`),
  162. KEY `country_state_city` (`country`,`state`(8),`city`(8))
  163. );
  164. CREATE TABLE IF NOT EXISTS `bx_courses_meta_mentions` (
  165. `object_id` int(10) unsigned NOT NULL,
  166. `profile_id` int(10) unsigned NOT NULL,
  167. KEY `object_id` (`object_id`),
  168. KEY `profile_id` (`profile_id`)
  169. );
  170. -- TABLE: fans
  171. CREATE TABLE IF NOT EXISTS `bx_courses_fans` (
  172. `id` int(11) NOT NULL AUTO_INCREMENT,
  173. `initiator` int(11) NOT NULL,
  174. `content` int(11) NOT NULL,
  175. `mutual` tinyint(4) NOT NULL,
  176. `added` int(10) unsigned NOT NULL,
  177. PRIMARY KEY (`id`),
  178. UNIQUE KEY `initiator` (`initiator`,`content`),
  179. KEY `content` (`content`)
  180. );
  181. -- TABLE: admins
  182. CREATE TABLE IF NOT EXISTS `bx_courses_admins` (
  183. `id` int(11) NOT NULL AUTO_INCREMENT,
  184. `group_profile_id` int(10) unsigned NOT NULL,
  185. `fan_id` int(10) unsigned NOT NULL,
  186. `role` int(10) unsigned NOT NULL default '0',
  187. `order` varchar(32) NOT NULL default '',
  188. `added` int(11) unsigned NOT NULL default '0',
  189. `expired` int(11) unsigned NOT NULL default '0',
  190. PRIMARY KEY (`id`),
  191. UNIQUE KEY `admin` (`group_profile_id`,`fan_id`)
  192. );
  193. -- TABLE: favorites
  194. CREATE TABLE IF NOT EXISTS `bx_courses_favorites_track` (
  195. `object_id` int(11) NOT NULL default '0',
  196. `author_id` int(11) NOT NULL default '0',
  197. `list_id` int(11) NOT NULL default '0',
  198. `date` int(11) NOT NULL default '0',
  199. KEY `id` (`object_id`,`author_id`)
  200. );
  201. CREATE TABLE `bx_courses_favorites_lists` (
  202. `id` int(11) NOT NULL AUTO_INCREMENT,
  203. `title` varchar(255) NOT NULL,
  204. `author_id` int(11) NOT NULL default '0',
  205. `date` int(11) NOT NULL default '0',
  206. `allow_view_favorite_list_to` varchar(16) NOT NULL DEFAULT '3',
  207. PRIMARY KEY (`id`)
  208. );
  209. -- TABLE: scores
  210. CREATE TABLE IF NOT EXISTS `bx_courses_scores` (
  211. `object_id` int(11) NOT NULL default '0',
  212. `count_up` int(11) NOT NULL default '0',
  213. `count_down` int(11) NOT NULL default '0',
  214. UNIQUE KEY `object_id` (`object_id`)
  215. );
  216. CREATE TABLE IF NOT EXISTS `bx_courses_scores_track` (
  217. `id` int(11) NOT NULL AUTO_INCREMENT,
  218. `object_id` int(11) NOT NULL default '0',
  219. `author_id` int(11) NOT NULL default '0',
  220. `author_nip` int(11) unsigned NOT NULL default '0',
  221. `type` varchar(8) NOT NULL default '',
  222. `date` int(11) NOT NULL default '0',
  223. PRIMARY KEY (`id`),
  224. KEY `vote` (`object_id`, `author_nip`)
  225. );
  226. CREATE TABLE IF NOT EXISTS `bx_courses_invites` (
  227. `id` int(11) NOT NULL AUTO_INCREMENT,
  228. `key` varchar(128) NOT NULL default '0',
  229. `group_profile_id` int(11) NOT NULL default '0',
  230. `author_profile_id` int(11) NOT NULL default '0',
  231. `invited_profile_id` int(11) NOT NULL default '0',
  232. `added` int(11) NOT NULL default '0',
  233. PRIMARY KEY (`id`)
  234. );
  235. -- TABLE: Pricing
  236. CREATE TABLE IF NOT EXISTS `bx_courses_prices` (
  237. `id` int(11) NOT NULL auto_increment,
  238. `profile_id` int(11) NOT NULL default '0',
  239. `role_id` int(11) unsigned NOT NULL default '0',
  240. `name` varchar(128) NOT NULL default '',
  241. `period` int(11) unsigned NOT NULL default '1',
  242. `period_unit` varchar(32) NOT NULL default '',
  243. `price` float unsigned NOT NULL default '1',
  244. `order` int(11) NOT NULL,
  245. PRIMARY KEY (`id`),
  246. UNIQUE KEY `name` (`name`),
  247. UNIQUE KEY `type` (`profile_id`, `role_id`,`period`, `period_unit`)
  248. );
  249. -- STORAGES & TRANSCODERS
  250. 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
  251. ('bx_courses_pics', @sStorageEngine, '', 360, 2592000, 3, 'bx_courses_pics', 'allow-deny', 'jpg,jpeg,jpe,gif,png', '', 0, 0, 0, 0, 0, 0),
  252. ('bx_courses_pics_resized', @sStorageEngine, '', 360, 2592000, 3, 'bx_courses_pics_resized', 'allow-deny', 'jpg,jpeg,jpe,gif,png', '', 0, 0, 0, 0, 0, 0);
  253. INSERT INTO `sys_objects_transcoder` (`object`, `storage_object`, `source_type`, `source_params`, `private`, `atime_tracking`, `atime_pruning`, `ts`) VALUES
  254. ('bx_courses_icon', 'bx_courses_pics_resized', 'Storage', 'a:1:{s:6:"object";s:15:"bx_courses_pics";}', 'no', '1', '2592000', '0'),
  255. ('bx_courses_thumb', 'bx_courses_pics_resized', 'Storage', 'a:1:{s:6:"object";s:15:"bx_courses_pics";}', 'no', '1', '2592000', '0'),
  256. ('bx_courses_avatar', 'bx_courses_pics_resized', 'Storage', 'a:1:{s:6:"object";s:15:"bx_courses_pics";}', 'no', '1', '2592000', '0'),
  257. ('bx_courses_avatar_big', 'bx_courses_pics_resized', 'Storage', 'a:1:{s:6:"object";s:15:"bx_courses_pics";}', 'no', '1', '2592000', '0'),
  258. ('bx_courses_picture', 'bx_courses_pics_resized', 'Storage', 'a:1:{s:6:"object";s:15:"bx_courses_pics";}', 'no', '1', '2592000', '0'),
  259. ('bx_courses_cover', 'bx_courses_pics_resized', 'Storage', 'a:1:{s:6:"object";s:15:"bx_courses_pics";}', 'no', '1', '2592000', '0'),
  260. ('bx_courses_cover_thumb', 'bx_courses_pics_resized', 'Storage', 'a:1:{s:6:"object";s:15:"bx_courses_pics";}', 'no', '1', '2592000', '0'),
  261. ('bx_courses_gallery', 'bx_courses_pics_resized', 'Storage', 'a:1:{s:6:"object";s:15:"bx_courses_pics";}', 'no', '1', '2592000', '0');
  262. INSERT INTO `sys_transcoder_filters` (`transcoder_object`, `filter`, `filter_params`, `order`) VALUES
  263. ('bx_courses_icon', 'Resize', 'a:3:{s:1:"w";s:2:"30";s:1:"h";s:2:"30";s:13:"square_resize";s:1:"1";}', '0'),
  264. ('bx_courses_thumb', 'Resize', 'a:3:{s:1:"w";s:2:"50";s:1:"h";s:2:"50";s:13:"square_resize";s:1:"1";}', '0'),
  265. ('bx_courses_avatar', 'Resize', 'a:3:{s:1:"w";s:3:"100";s:1:"h";s:3:"100";s:13:"square_resize";s:1:"1";}', '0'),
  266. ('bx_courses_avatar_big', 'Resize', 'a:3:{s:1:"w";s:3:"200";s:1:"h";s:3:"200";s:13:"square_resize";s:1:"1";}', '0'),
  267. ('bx_courses_picture', 'Resize', 'a:3:{s:1:"w";s:4:"1024";s:1:"h";s:4:"1024";s:13:"square_resize";s:1:"0";}', '0'),
  268. ('bx_courses_cover', 'Resize', 'a:1:{s:1:"w";s:4:"2000";}', '0'),
  269. ('bx_courses_cover_thumb', 'Resize', 'a:3:{s:1:"w";s:2:"48";s:1:"h";s:2:"48";s:13:"square_resize";s:1:"1";}', '0'),
  270. ('bx_courses_gallery', 'Resize', 'a:1:{s:1:"w";s:3:"500";}', '0');
  271. -- FORMS
  272. 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
  273. ('bx_course', 'bx_courses', '_bx_courses_form_profile', '', 'a:1:{s:7:\"enctype\";s:19:\"multipart/form-data\";}', 'bx_courses_data', 'id', '', '', 'do_submit', '', 0, 1, 'BxCoursesFormEntry', 'modules/boonex/courses/classes/BxCoursesFormEntry.php');
  274. INSERT INTO `sys_form_displays`(`object`, `display_name`, `module`, `view_mode`, `title`) VALUES
  275. ('bx_course', 'bx_course_add', 'bx_courses', 0, '_bx_courses_form_profile_display_add'),
  276. ('bx_course', 'bx_course_delete', 'bx_courses', 0, '_bx_courses_form_profile_display_delete'),
  277. ('bx_course', 'bx_course_edit', 'bx_courses', 0, '_bx_courses_form_profile_display_edit'),
  278. ('bx_course', 'bx_course_edit_cover', 'bx_courses', 0, '_bx_courses_form_profile_display_edit_cover'),
  279. ('bx_course', 'bx_course_view', 'bx_courses', 1, '_bx_courses_form_profile_display_view'),
  280. ('bx_course', 'bx_course_view_full', 'bx_courses', 1, '_bx_courses_form_profile_display_view_full'),
  281. ('bx_course', 'bx_course_invite', 'bx_courses', 0, '_bx_courses_form_profile_display_invite');
  282. 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
  283. ('bx_course', 'bx_courses', 'allow_view_to', 3, '', 0, 'custom', '_bx_courses_form_profile_input_sys_allow_view_to', '_bx_courses_form_profile_input_allow_view_to', '_bx_courses_form_profile_input_allow_view_to_desc', 0, 0, 0, '', '', '', '', '', '', '', '', 1, 0),
  284. ('bx_course', 'bx_courses', 'allow_post_to', 3, '', 0, 'custom', '_bx_courses_form_profile_input_sys_allow_post_to', '_bx_courses_form_profile_input_allow_post_to', '', 0, 0, 0, '', '', '', '', '', '', '', '', 1, 0),
  285. ('bx_course', 'bx_courses', 'delete_confirm', 1, '', 0, 'checkbox', '_bx_courses_form_profile_input_sys_delete_confirm', '_bx_courses_form_profile_input_delete_confirm', '_bx_courses_form_profile_input_delete_confirm_info', 1, 0, 0, '', '', '', 'avail', '', '_bx_courses_form_profile_input_delete_confirm_error', '', '', 1, 0),
  286. ('bx_course', 'bx_courses', 'do_submit', '_sys_form_account_input_submit', '', 0, 'submit', '_bx_courses_form_profile_input_sys_do_submit', '', '', 0, 0, 0, '', '', '', '', '', '', '', '', 1, 0),
  287. ('bx_course', 'bx_courses', 'desc', '', '', 0, 'textarea', '_bx_courses_form_profile_input_sys_desc', '_bx_courses_form_profile_input_desc', '', 0, 0, 2, '', '', '', '', '', '', 'XssHtml', '', 1, 1),
  288. ('bx_course', 'bx_courses', 'cat', '', '#!bx_courses_cats', 0, 'select', '_bx_courses_form_profile_input_sys_cat', '_bx_courses_form_profile_input_cat', '', 1, 0, 0, '', '', '', 'avail', '', '_bx_courses_form_profile_input_cat_err', 'Xss', '', 1, 1),
  289. ('bx_course', 'bx_courses', 'name', '', '', 0, 'text', '_bx_courses_form_profile_input_sys_name', '_bx_courses_form_profile_input_name', '', 1, 0, 0, '', '', '', 'avail', '', '_bx_courses_form_profile_input_name_err', 'Xss', '', 1, 0),
  290. ('bx_course', 'bx_courses', 'initial_members', '', '', 0, 'custom', '_bx_courses_form_profile_input_sys_initial_members', '_bx_courses_form_profile_input_initial_members', '', 0, 0, 0, '', '', '', '', '', '', '', '', 1, 1),
  291. ('bx_course', 'bx_courses', 'join_confirmation', 1, '', 0, 'switcher', '_bx_courses_form_profile_input_sys_join_confirm', '_bx_courses_form_profile_input_join_confirm', '', 0, 0, 0, '', '', '', '', '', '', 'Xss', '', 1, 0),
  292. ('bx_course', 'bx_courses', 'cover', 'a:1:{i:0;s:21:"bx_courses_cover_crop";}', 'a:1:{s:21:"bx_courses_cover_crop";s:24:"_sys_uploader_crop_title";}', 0, 'files', '_bx_courses_form_profile_input_sys_cover', '_bx_courses_form_profile_input_cover', '', 0, 0, 0, '', '', '', '', '', '', '', '', 1, 0),
  293. ('bx_course', 'bx_courses', 'picture', 'a:1:{i:0;s:23:"bx_courses_picture_crop";}', 'a:1:{s:23:"bx_courses_picture_crop";s:24:"_sys_uploader_crop_title";}', 0, 'files', '_bx_courses_form_profile_input_sys_picture', '_bx_courses_form_profile_input_picture', '', 0, 0, 0, '', '', '', '', '', '_bx_courses_form_profile_input_picture_err', '', '', 1, 0),
  294. ('bx_course', 'bx_courses', 'location', '', '', 0, 'location', '_sys_form_input_sys_location', '_sys_form_input_location', '', 0, 0, 0, '', '', '', '', '', '', '', '', 1, 0),
  295. ('bx_course', 'bx_courses', 'labels', '', '', 0, 'custom', '_sys_form_input_sys_labels', '_sys_form_input_labels', '', 0, 0, 0, '', '', '', '', '', '', '', '', 1, 0);
  296. INSERT INTO `sys_form_display_inputs`(`display_name`, `input_name`, `visible_for_levels`, `active`, `order`) VALUES
  297. ('bx_course_add', 'initial_members', 2147483647, 1, 1),
  298. ('bx_course_add', 'name', 2147483647, 1, 2),
  299. ('bx_course_add', 'cat', 2147483647, 1, 3),
  300. ('bx_course_add', 'desc', 2147483647, 1, 4),
  301. ('bx_course_add', 'location', 2147483647, 1, 5),
  302. ('bx_course_add', 'join_confirmation', 2147483647, 1, 6),
  303. ('bx_course_add', 'allow_view_to', 2147483647, 1, 7),
  304. ('bx_course_add', 'allow_post_to', 2147483647, 1, 8),
  305. ('bx_course_add', 'do_submit', 2147483647, 1, 9),
  306. ('bx_course_invite', 'initial_members', 2147483647, 1, 1),
  307. ('bx_course_invite', 'do_submit', 2147483647, 1, 2),
  308. ('bx_course_delete', 'delete_confirm', 2147483647, 1, 1),
  309. ('bx_course_delete', 'do_submit', 2147483647, 1, 2),
  310. ('bx_course_edit', 'name', 2147483647, 1, 1),
  311. ('bx_course_edit', 'cat', 2147483647, 1, 2),
  312. ('bx_course_edit', 'desc', 2147483647, 1, 3),
  313. ('bx_course_edit', 'location', 2147483647, 1, 4),
  314. ('bx_course_edit', 'join_confirmation', 2147483647, 1, 5),
  315. ('bx_course_edit', 'allow_view_to', 2147483647, 1, 6),
  316. ('bx_course_edit', 'allow_post_to', 2147483647, 1, 7),
  317. ('bx_course_edit', 'do_submit', 2147483647, 1, 8),
  318. ('bx_course_edit_cover', 'cover', 2147483647, 1, 1),
  319. ('bx_course_edit_cover', 'do_submit', 2147483647, 1, 2),
  320. ('bx_course_view', 'name', 2147483647, 1, 1),
  321. ('bx_course_view', 'cat', 2147483647, 1, 2),
  322. ('bx_course_view_full', 'name', 2147483647, 1, 1),
  323. ('bx_course_view_full', 'cat', 2147483647, 1, 2),
  324. ('bx_course_view_full', 'desc', 2147483647, 1, 3);
  325. -- FORMS: Price
  326. INSERT INTO `sys_objects_form` (`object`, `module`, `title`, `action`, `form_attrs`, `submit_name`, `table`, `key`, `uri`, `uri_title`, `params`, `deletable`, `active`, `override_class_name`, `override_class_file`) VALUES
  327. ('bx_courses_price', 'bx_courses', '_bx_courses_form_price', '', '', 'do_submit', 'bx_courses_prices', 'id', '', '', '', 0, 1, 'BxCoursesFormPrice', 'modules/boonex/courses/classes/BxCoursesFormPrice.php');
  328. INSERT INTO `sys_form_displays` (`display_name`, `module`, `object`, `title`, `view_mode`) VALUES
  329. ('bx_courses_price_add', 'bx_courses', 'bx_courses_price', '_bx_courses_form_price_display_add', 0),
  330. ('bx_courses_price_edit', 'bx_courses', 'bx_courses_price', '_bx_courses_form_price_display_edit', 0);
  331. 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
  332. ('bx_courses_price', 'bx_courses', 'id', '', '', 0, 'hidden', '_bx_courses_form_price_input_sys_id', '', '', 1, 0, 0, '', '', '', '', '', '', 'Int', '', 1, 0),
  333. ('bx_courses_price', 'bx_courses', 'role_id', '', '', 0, 'hidden', '_bx_courses_form_price_input_sys_role_id', '', '', 1, 0, 0, '', '', '', '', '', '', 'Int', '', 1, 0),
  334. ('bx_courses_price', 'bx_courses', 'name', '', '', 0, 'text', '_bx_courses_form_price_input_sys_name', '_bx_courses_form_price_input_name', '_bx_courses_form_price_input_inf_name', 1, 0, 0, '', '', '', 'Avail', '', '_bx_courses_form_price_input_err_name', 'Xss', '', 1, 0),
  335. ('bx_courses_price', 'bx_courses', 'period', '', '', 0, 'text', '_bx_courses_form_price_input_sys_period', '_bx_courses_form_price_input_period', '_bx_courses_form_price_input_inf_period', 1, 0, 0, '', '', '', '', '', '', 'Int', '', 1, 0),
  336. ('bx_courses_price', 'bx_courses', 'period_unit', '', '#!bx_courses_period_units', 0, 'select', '_bx_courses_form_price_input_sys_period_unit', '_bx_courses_form_price_input_period_unit', '_bx_courses_form_price_input_inf_period_unit', 1, 0, 0, '', '', '', '', '', '', 'Xss', '', 1, 0),
  337. ('bx_courses_price', 'bx_courses', 'price', '', '', 0, 'text', '_bx_courses_form_price_input_sys_price', '_bx_courses_form_price_input_price', '_bx_courses_form_price_input_inf_price', 1, 0, 0, '', '', '', '', '', '', 'Float', '', 1, 0),
  338. ('bx_courses_price', 'bx_courses', 'controls', '', 'do_submit,do_cancel', 0, 'input_set', '', '', '', 0, 0, 0, '', '', '', '', '', '', '', '', 1, 0),
  339. ('bx_courses_price', 'bx_courses', 'do_submit', '_bx_courses_form_price_input_do_submit', '', 0, 'submit', '_bx_courses_form_price_input_sys_do_submit', '', '', 0, 0, 0, '', '', '', '', '', '', '', '', 1, 0),
  340. ('bx_courses_price', 'bx_courses', 'do_cancel', '_bx_courses_form_price_input_do_cancel', '', 0, 'button', '_bx_courses_form_price_input_sys_do_cancel', '', '', 0, 0, 0, 'a:2:{s:7:"onclick";s:45:"$(''.bx-popup-applied:visible'').dolPopupHide()";s:5:"class";s:22:"bx-def-margin-sec-left";}', '', '', '', '', '', '', '', 1, 0);
  341. INSERT INTO `sys_form_display_inputs` (`display_name`, `input_name`, `visible_for_levels`, `active`, `order`) VALUES
  342. ('bx_courses_price_add', 'id', 2147483647, 0, 1),
  343. ('bx_courses_price_add', 'role_id', 2147483647, 1, 2),
  344. ('bx_courses_price_add', 'name', 2147483647, 1, 3),
  345. ('bx_courses_price_add', 'price', 2147483647, 1, 4),
  346. ('bx_courses_price_add', 'period', 2147483647, 1, 5),
  347. ('bx_courses_price_add', 'period_unit', 2147483647, 1, 6),
  348. ('bx_courses_price_add', 'controls', 2147483647, 1, 7),
  349. ('bx_courses_price_add', 'do_submit', 2147483647, 1, 8),
  350. ('bx_courses_price_add', 'do_cancel', 2147483647, 1, 9),
  351. ('bx_courses_price_edit', 'id', 2147483647, 1, 1),
  352. ('bx_courses_price_edit', 'role_id', 2147483647, 1, 2),
  353. ('bx_courses_price_edit', 'name', 2147483647, 1, 3),
  354. ('bx_courses_price_edit', 'price', 2147483647, 1, 4),
  355. ('bx_courses_price_edit', 'period', 2147483647, 1, 5),
  356. ('bx_courses_price_edit', 'period_unit', 2147483647, 1, 6),
  357. ('bx_courses_price_edit', 'controls', 2147483647, 1, 7),
  358. ('bx_courses_price_edit', 'do_submit', 2147483647, 1, 8),
  359. ('bx_courses_price_edit', 'do_cancel', 2147483647, 1, 9);
  360. -- PRE-VALUES
  361. INSERT INTO `sys_form_pre_lists`(`key`, `title`, `module`, `use_for_sets`) VALUES
  362. ('bx_courses_cats', '_bx_courses_pre_lists_cats', 'bx_courses', '0');
  363. INSERT INTO `sys_form_pre_values`(`Key`, `Value`, `Order`, `LKey`, `LKey2`) VALUES
  364. ('bx_courses_cats', '', 0, '_sys_please_select', ''),
  365. ('bx_courses_cats', '1', 1, '_bx_courses_cat_General', '');
  366. INSERT INTO `sys_form_pre_lists`(`key`, `title`, `module`, `use_for_sets`) VALUES
  367. ('bx_courses_roles', '_bx_courses_pre_lists_roles', 'bx_courses', '1');
  368. INSERT INTO `sys_form_pre_values`(`Key`, `Value`, `Order`, `LKey`, `LKey2`) VALUES
  369. ('bx_courses_roles', '0', 1, '_bx_courses_role_regular', ''),
  370. ('bx_courses_roles', '1', 2, '_bx_courses_role_administrator', ''),
  371. ('bx_courses_roles', '2', 3, '_bx_courses_role_moderator', '');
  372. INSERT INTO `sys_form_pre_lists`(`key`, `title`, `module`, `use_for_sets`) VALUES
  373. ('bx_courses_period_units', '_bx_courses_pre_lists_period_units', 'bx_courses', '0');
  374. INSERT INTO `sys_form_pre_values`(`Key`, `Value`, `Order`, `LKey`, `LKey2`) VALUES
  375. ('bx_courses_period_units', '', 0, '_sys_please_select', ''),
  376. ('bx_courses_period_units', 'day', 1, '_bx_courses_period_unit_day', ''),
  377. ('bx_courses_period_units', 'week', 2, '_bx_courses_period_unit_week', ''),
  378. ('bx_courses_period_units', 'month', 3, '_bx_courses_period_unit_month', ''),
  379. ('bx_courses_period_units', 'year', 4, '_bx_courses_period_unit_year', '');
  380. -- COMMENTS
  381. INSERT INTO `sys_objects_cmts` (`Name`, `Module`, `Table`, `CharsPostMin`, `CharsPostMax`, `CharsDisplayMax`, `Html`, `PerView`, `PerViewReplies`, `BrowseType`, `IsBrowseSwitch`, `PostFormPosition`, `NumberOfLevels`, `IsDisplaySwitch`, `IsRatable`, `ViewingThreshold`, `IsOn`, `RootStylePrefix`, `BaseUrl`, `ObjectVote`, `TriggerTable`, `TriggerFieldId`, `TriggerFieldAuthor`, `TriggerFieldTitle`, `TriggerFieldComments`, `ClassName`, `ClassFile`) VALUES
  382. ('bx_courses', 'bx_courses', 'bx_courses_cmts', 1, 5000, 1000, 3, 5, 3, 'tail', 1, 'bottom', 1, 1, 1, -3, 1, 'cmt', 'page.php?i=view-course-profile&id={object_id}', '', 'bx_courses_data', 'id', 'author', 'name', 'comments', 'BxCoursesCmts', 'modules/boonex/courses/classes/BxCoursesCmts.php'),
  383. ('bx_courses_notes', 'bx_courses', 'bx_courses_cmts_notes', 1, 5000, 1000, 0, 5, 3, 'tail', 1, 'bottom', 1, 1, 1, -3, 1, 'cmt', 'page.php?i=view-course-profile&id={object_id}', '', 'bx_courses_data', 'id', 'author', 'name', '', 'BxTemplCmtsNotes', '');
  384. -- VIEWS
  385. INSERT INTO `sys_objects_view` (`name`, `table_track`, `period`, `is_on`, `trigger_table`, `trigger_field_id`, `trigger_field_author`, `trigger_field_count`, `class_name`, `class_file`) VALUES
  386. ('bx_courses', 'bx_courses_views_track', '86400', '1', 'bx_courses_data', 'id', 'author', 'views', '', '');
  387. -- VOTES
  388. INSERT INTO `sys_objects_vote` (`Name`, `TableMain`, `TableTrack`, `PostTimeout`, `MinValue`, `MaxValue`, `IsUndo`, `IsOn`, `TriggerTable`, `TriggerFieldId`, `TriggerFieldAuthor`, `TriggerFieldRate`, `TriggerFieldRateCount`, `ClassName`, `ClassFile`) VALUES
  389. ('bx_courses', 'bx_courses_votes', 'bx_courses_votes_track', '604800', '1', '1', '0', '1', 'bx_courses_data', 'id', 'author', 'rate', 'votes', '', '');
  390. -- SCORES
  391. INSERT INTO `sys_objects_score` (`name`, `module`, `table_main`, `table_track`, `post_timeout`, `is_on`, `trigger_table`, `trigger_field_id`, `trigger_field_author`, `trigger_field_score`, `trigger_field_cup`, `trigger_field_cdown`, `class_name`, `class_file`) VALUES
  392. ('bx_courses', 'bx_courses', 'bx_courses_scores', 'bx_courses_scores_track', '604800', '0', 'bx_courses_data', 'id', 'author', 'score', 'sc_up', 'sc_down', '', '');
  393. -- REPORTS
  394. INSERT INTO `sys_objects_report` (`name`, `module`, `table_main`, `table_track`, `is_on`, `base_url`, `trigger_table`, `trigger_field_id`, `trigger_field_author`, `trigger_field_count`, `class_name`, `class_file`) VALUES
  395. ('bx_courses', 'bx_courses', 'bx_courses_reports', 'bx_courses_reports_track', '1', 'page.php?i=view-course-profile&id={object_id}', 'bx_courses_data', 'id', 'author', 'reports', '', '');
  396. -- FAFORITES
  397. INSERT INTO `sys_objects_favorite` (`name`, `table_track`, `table_lists`, `is_on`, `is_undo`, `is_public`, `base_url`, `trigger_table`, `trigger_field_id`, `trigger_field_author`, `trigger_field_count`, `class_name`, `class_file`) VALUES
  398. ('bx_courses', 'bx_courses_favorites_track', 'bx_courses_favorites_lists', '1', '1', '1', 'page.php?i=view-course-profile&id={object_id}', 'bx_courses_data', 'id', 'author', 'favorites', '', '');
  399. -- FEATURED
  400. INSERT INTO `sys_objects_feature` (`name`, `module`, `is_on`, `is_undo`, `base_url`, `trigger_table`, `trigger_field_id`, `trigger_field_author`, `trigger_field_flag`, `class_name`, `class_file`) VALUES
  401. ('bx_courses', 'bx_courses', '1', '1', 'page.php?i=view-course-profile&id={object_id}', 'bx_courses_data', 'id', 'author', 'featured', '', '');
  402. -- CONTENT INFO
  403. INSERT INTO `sys_objects_content_info` (`name`, `title`, `alert_unit`, `alert_action_add`, `alert_action_update`, `alert_action_delete`, `class_name`, `class_file`) VALUES
  404. ('bx_courses', '_bx_courses', 'bx_courses', 'added', 'edited', 'deleted', '', ''),
  405. ('bx_courses_cmts', '_bx_courses_cmts', 'bx_courses', 'commentPost', 'commentUpdated', 'commentRemoved', 'BxDolContentInfoCmts', '');
  406. INSERT INTO `sys_content_info_grids` (`object`, `grid_object`, `grid_field_id`, `condition`, `selection`) VALUES
  407. ('bx_courses', 'bx_courses_administration', 'td`.`id', '', ''),
  408. ('bx_courses', 'bx_courses_common', 'td`.`id', '', '');
  409. -- SEARCH EXTENDED
  410. INSERT INTO `sys_objects_search_extended` (`object`, `object_content_info`, `module`, `title`, `active`, `class_name`, `class_file`) VALUES
  411. ('bx_courses', 'bx_courses', 'bx_courses', '_bx_courses_search_extended', 1, '', ''),
  412. ('bx_courses_cmts', 'bx_courses_cmts', 'bx_courses', '_bx_courses_search_extended_cmts', 1, 'BxTemplSearchExtendedCmts', '');
  413. -- STUDIO PAGE & WIDGET
  414. INSERT INTO `sys_std_pages`(`index`, `name`, `header`, `caption`, `icon`) VALUES
  415. (3, 'bx_courses', '_bx_courses', '_bx_courses', 'bx_courses@modules/boonex/courses/|std-icon.svg');
  416. SET @iPageId = LAST_INSERT_ID();
  417. SET @iParentPageId = (SELECT `id` FROM `sys_std_pages` WHERE `name` = 'home');
  418. SET @iParentPageOrder = (SELECT MAX(`order`) FROM `sys_std_pages_widgets` WHERE `page_id` = @iParentPageId);
  419. INSERT INTO `sys_std_widgets` (`page_id`, `module`, `type`, `url`, `click`, `icon`, `caption`, `cnt_notices`, `cnt_actions`) VALUES
  420. (@iPageId, 'bx_courses', 'content', '{url_studio}module.php?name=bx_courses', '', 'bx_courses@modules/boonex/courses/|std-icon.svg', '_bx_courses', '', '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";}');
  421. INSERT INTO `sys_std_pages_widgets` (`page_id`, `widget_id`, `order`) VALUES
  422. (@iParentPageId, LAST_INSERT_ID(), IF(ISNULL(@iParentPageOrder), 1, @iParentPageOrder + 1));