install.sql 30 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501
  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. `cf` int(11) NOT NULL default '1',
  26. `join_confirmation` tinyint(4) NOT NULL DEFAULT '0',
  27. `allow_view_to` varchar(16) NOT NULL DEFAULT '3',
  28. `allow_post_to` varchar(16) NOT NULL DEFAULT '3',
  29. `status` enum('active','awaiting','hidden') NOT NULL DEFAULT 'active',
  30. `status_admin` enum('active','hidden','pending') NOT NULL DEFAULT 'active',
  31. PRIMARY KEY (`id`),
  32. FULLTEXT KEY `search_fields` (`name`, `desc`)
  33. );
  34. -- TABLE: STORAGES & TRANSCODERS
  35. CREATE TABLE IF NOT EXISTS `bx_courses_pics` (
  36. `id` int(11) NOT NULL AUTO_INCREMENT,
  37. `profile_id` int(10) unsigned NOT NULL,
  38. `remote_id` varchar(128) 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` bigint(20) 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_courses_pics_resized` (
  51. `id` int(11) NOT NULL AUTO_INCREMENT,
  52. `profile_id` int(10) unsigned NOT NULL,
  53. `remote_id` varchar(128) 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` bigint(20) 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_courses_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(11) 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. `cmt_pinned` int(11) NOT NULL default '0',
  80. `cmt_cf` int(11) NOT NULL default '1',
  81. PRIMARY KEY (`cmt_id`),
  82. KEY `cmt_object_id` (`cmt_object_id`,`cmt_parent_id`),
  83. FULLTEXT KEY `search_fields` (`cmt_text`)
  84. );
  85. CREATE TABLE IF NOT EXISTS `bx_courses_cmts_notes` (
  86. `cmt_id` int(11) NOT NULL AUTO_INCREMENT,
  87. `cmt_parent_id` int(11) NOT NULL DEFAULT '0',
  88. `cmt_vparent_id` int(11) NOT NULL DEFAULT '0',
  89. `cmt_object_id` int(11) NOT NULL DEFAULT '0',
  90. `cmt_author_id` int(11) NOT NULL DEFAULT '0',
  91. `cmt_level` int(11) NOT NULL DEFAULT '0',
  92. `cmt_text` text NOT NULL,
  93. `cmt_mood` tinyint(4) NOT NULL DEFAULT '0',
  94. `cmt_rate` int(11) NOT NULL DEFAULT '0',
  95. `cmt_rate_count` int(11) NOT NULL DEFAULT '0',
  96. `cmt_time` int(11) unsigned NOT NULL DEFAULT '0',
  97. `cmt_replies` int(11) NOT NULL DEFAULT '0',
  98. `cmt_pinned` int(11) NOT NULL default '0',
  99. PRIMARY KEY (`cmt_id`),
  100. KEY `cmt_object_id` (`cmt_object_id`,`cmt_parent_id`),
  101. FULLTEXT KEY `search_fields` (`cmt_text`)
  102. );
  103. -- TABLE: VIEWS
  104. CREATE TABLE IF NOT EXISTS `bx_courses_views_track` (
  105. `id` int(11) NOT NULL AUTO_INCREMENT,
  106. `object_id` int(11) NOT NULL default '0',
  107. `viewer_id` int(11) NOT NULL default '0',
  108. `viewer_nip` int(11) unsigned NOT NULL default '0',
  109. `date` int(11) NOT NULL default '0',
  110. PRIMARY KEY (`id`),
  111. KEY `id` (`object_id`,`viewer_id`,`viewer_nip`)
  112. );
  113. -- TABLE: VOTES
  114. CREATE TABLE IF NOT EXISTS `bx_courses_votes` (
  115. `id` int(11) NOT NULL AUTO_INCREMENT,
  116. `object_id` int(11) NOT NULL default '0',
  117. `count` int(11) NOT NULL default '0',
  118. `sum` int(11) NOT NULL default '0',
  119. PRIMARY KEY (`id`),
  120. UNIQUE KEY `object_id` (`object_id`)
  121. );
  122. CREATE TABLE IF NOT EXISTS `bx_courses_votes_track` (
  123. `id` int(11) NOT NULL AUTO_INCREMENT,
  124. `object_id` int(11) NOT NULL default '0',
  125. `author_id` int(11) NOT NULL default '0',
  126. `author_nip` int(11) unsigned NOT NULL default '0',
  127. `value` tinyint(4) NOT NULL default '0',
  128. `date` int(11) NOT NULL default '0',
  129. PRIMARY KEY (`id`),
  130. KEY `vote` (`object_id`, `author_nip`)
  131. );
  132. -- TABLE: REPORTS
  133. CREATE TABLE IF NOT EXISTS `bx_courses_reports` (
  134. `id` int(11) NOT NULL AUTO_INCREMENT,
  135. `object_id` int(11) NOT NULL default '0',
  136. `count` int(11) NOT NULL default '0',
  137. PRIMARY KEY (`id`),
  138. UNIQUE KEY `object_id` (`object_id`)
  139. );
  140. CREATE TABLE IF NOT EXISTS `bx_courses_reports_track` (
  141. `id` int(11) NOT NULL AUTO_INCREMENT,
  142. `object_id` int(11) NOT NULL default '0',
  143. `author_id` int(11) NOT NULL default '0',
  144. `author_nip` int(11) unsigned NOT NULL default '0',
  145. `type` varchar(32) NOT NULL default '',
  146. `text` text NOT NULL default '',
  147. `date` int(11) NOT NULL default '0',
  148. `checked_by` int(11) NOT NULL default '0',
  149. `status` tinyint(11) NOT NULL default '0',
  150. PRIMARY KEY (`id`),
  151. KEY `report` (`object_id`, `author_nip`)
  152. );
  153. -- TABLE: metas
  154. CREATE TABLE IF NOT EXISTS `bx_courses_meta_keywords` (
  155. `id` int(11) NOT NULL AUTO_INCREMENT,
  156. `object_id` int(10) unsigned NOT NULL,
  157. `keyword` varchar(255) NOT NULL,
  158. PRIMARY KEY (`id`),
  159. KEY `object_id` (`object_id`),
  160. KEY `keyword` (`keyword`)
  161. );
  162. CREATE TABLE IF NOT EXISTS `bx_courses_meta_locations` (
  163. `object_id` int(10) unsigned NOT NULL,
  164. `lat` double NOT NULL,
  165. `lng` double NOT NULL,
  166. `country` varchar(2) NOT NULL,
  167. `state` varchar(255) NOT NULL,
  168. `city` varchar(255) NOT NULL,
  169. `zip` varchar(255) NOT NULL,
  170. `street` varchar(255) NOT NULL,
  171. `street_number` varchar(255) NOT NULL,
  172. PRIMARY KEY (`object_id`),
  173. KEY `country_state_city` (`country`,`state`(8),`city`(8))
  174. );
  175. CREATE TABLE IF NOT EXISTS `bx_courses_meta_mentions` (
  176. `id` int(11) NOT NULL AUTO_INCREMENT,
  177. `object_id` int(10) unsigned NOT NULL,
  178. `profile_id` int(10) unsigned NOT NULL,
  179. PRIMARY KEY (`id`),
  180. KEY `object_id` (`object_id`),
  181. KEY `profile_id` (`profile_id`)
  182. );
  183. -- TABLE: fans
  184. CREATE TABLE IF NOT EXISTS `bx_courses_fans` (
  185. `id` int(11) NOT NULL AUTO_INCREMENT,
  186. `initiator` int(11) NOT NULL,
  187. `content` int(11) NOT NULL,
  188. `mutual` tinyint(4) NOT NULL,
  189. `added` int(10) unsigned NOT NULL,
  190. PRIMARY KEY (`id`),
  191. UNIQUE KEY `initiator` (`initiator`,`content`),
  192. KEY `content` (`content`)
  193. );
  194. -- TABLE: admins
  195. CREATE TABLE IF NOT EXISTS `bx_courses_admins` (
  196. `id` int(11) NOT NULL AUTO_INCREMENT,
  197. `group_profile_id` int(10) unsigned NOT NULL,
  198. `fan_id` int(10) unsigned NOT NULL,
  199. `role` int(10) unsigned NOT NULL default '0',
  200. `order` varchar(32) NOT NULL default '',
  201. `added` int(11) unsigned NOT NULL default '0',
  202. `expired` int(11) unsigned NOT NULL default '0',
  203. PRIMARY KEY (`id`),
  204. UNIQUE KEY `admin` (`group_profile_id`,`fan_id`)
  205. );
  206. -- TABLE: favorites
  207. CREATE TABLE IF NOT EXISTS `bx_courses_favorites_track` (
  208. `id` int(11) NOT NULL AUTO_INCREMENT,
  209. `object_id` int(11) NOT NULL default '0',
  210. `author_id` int(11) NOT NULL default '0',
  211. `list_id` int(11) NOT NULL default '0',
  212. `date` int(11) NOT NULL default '0',
  213. PRIMARY KEY (`id`),
  214. KEY `id` (`object_id`,`author_id`)
  215. );
  216. CREATE TABLE `bx_courses_favorites_lists` (
  217. `id` int(11) NOT NULL AUTO_INCREMENT,
  218. `title` varchar(255) NOT NULL,
  219. `author_id` int(11) NOT NULL default '0',
  220. `date` int(11) NOT NULL default '0',
  221. `allow_view_favorite_list_to` varchar(16) NOT NULL DEFAULT '3',
  222. PRIMARY KEY (`id`)
  223. );
  224. -- TABLE: scores
  225. CREATE TABLE IF NOT EXISTS `bx_courses_scores` (
  226. `id` int(11) NOT NULL AUTO_INCREMENT,
  227. `object_id` int(11) NOT NULL default '0',
  228. `count_up` int(11) NOT NULL default '0',
  229. `count_down` int(11) NOT NULL default '0',
  230. PRIMARY KEY (`id`),
  231. UNIQUE KEY `object_id` (`object_id`)
  232. );
  233. CREATE TABLE IF NOT EXISTS `bx_courses_scores_track` (
  234. `id` int(11) NOT NULL AUTO_INCREMENT,
  235. `object_id` int(11) NOT NULL default '0',
  236. `author_id` int(11) NOT NULL default '0',
  237. `author_nip` int(11) unsigned NOT NULL default '0',
  238. `type` varchar(8) NOT NULL default '',
  239. `date` int(11) NOT NULL default '0',
  240. PRIMARY KEY (`id`),
  241. KEY `vote` (`object_id`, `author_nip`)
  242. );
  243. CREATE TABLE IF NOT EXISTS `bx_courses_invites` (
  244. `id` int(11) NOT NULL AUTO_INCREMENT,
  245. `key` varchar(128) NOT NULL default '0',
  246. `group_profile_id` int(11) NOT NULL default '0',
  247. `author_profile_id` int(11) NOT NULL default '0',
  248. `invited_profile_id` int(11) NOT NULL default '0',
  249. `added` int(11) NOT NULL default '0',
  250. PRIMARY KEY (`id`)
  251. );
  252. -- TABLE: Pricing
  253. CREATE TABLE IF NOT EXISTS `bx_courses_prices` (
  254. `id` int(11) NOT NULL auto_increment,
  255. `profile_id` int(11) NOT NULL default '0',
  256. `role_id` int(11) unsigned NOT NULL default '0',
  257. `name` varchar(128) NOT NULL default '',
  258. `period` int(11) unsigned NOT NULL default '1',
  259. `period_unit` varchar(32) NOT NULL default '',
  260. `price` float unsigned NOT NULL default '1',
  261. `order` int(11) NOT NULL,
  262. PRIMARY KEY (`id`),
  263. UNIQUE KEY `name` (`name`),
  264. UNIQUE KEY `type` (`profile_id`, `role_id`,`period`, `period_unit`)
  265. );
  266. -- STORAGES & TRANSCODERS
  267. 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
  268. ('bx_courses_pics', @sStorageEngine, '', 360, 2592000, 3, 'bx_courses_pics', 'allow-deny', 'jpg,jpeg,jpe,gif,png', '', 0, 0, 0, 0, 0, 0),
  269. ('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);
  270. INSERT INTO `sys_objects_transcoder` (`object`, `storage_object`, `source_type`, `source_params`, `private`, `atime_tracking`, `atime_pruning`, `ts`) VALUES
  271. ('bx_courses_icon', 'bx_courses_pics_resized', 'Storage', 'a:1:{s:6:"object";s:15:"bx_courses_pics";}', 'no', '1', '2592000', '0'),
  272. ('bx_courses_thumb', 'bx_courses_pics_resized', 'Storage', 'a:1:{s:6:"object";s:15:"bx_courses_pics";}', 'no', '1', '2592000', '0'),
  273. ('bx_courses_avatar', 'bx_courses_pics_resized', 'Storage', 'a:1:{s:6:"object";s:15:"bx_courses_pics";}', 'no', '1', '2592000', '0'),
  274. ('bx_courses_avatar_big', 'bx_courses_pics_resized', 'Storage', 'a:1:{s:6:"object";s:15:"bx_courses_pics";}', 'no', '1', '2592000', '0'),
  275. ('bx_courses_picture', 'bx_courses_pics_resized', 'Storage', 'a:1:{s:6:"object";s:15:"bx_courses_pics";}', 'no', '1', '2592000', '0'),
  276. ('bx_courses_cover', 'bx_courses_pics_resized', 'Storage', 'a:1:{s:6:"object";s:15:"bx_courses_pics";}', 'no', '1', '2592000', '0'),
  277. ('bx_courses_cover_thumb', 'bx_courses_pics_resized', 'Storage', 'a:1:{s:6:"object";s:15:"bx_courses_pics";}', 'no', '1', '2592000', '0'),
  278. ('bx_courses_gallery', 'bx_courses_pics_resized', 'Storage', 'a:1:{s:6:"object";s:15:"bx_courses_pics";}', 'no', '1', '2592000', '0');
  279. INSERT INTO `sys_transcoder_filters` (`transcoder_object`, `filter`, `filter_params`, `order`) VALUES
  280. ('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'),
  281. ('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'),
  282. ('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'),
  283. ('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'),
  284. ('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'),
  285. ('bx_courses_cover', 'Resize', 'a:1:{s:1:"w";s:4:"2000";}', '0'),
  286. ('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'),
  287. ('bx_courses_gallery', 'Resize', 'a:1:{s:1:"w";s:3:"500";}', '0');
  288. -- FORMS
  289. 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
  290. ('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');
  291. INSERT INTO `sys_form_displays`(`object`, `display_name`, `module`, `view_mode`, `title`) VALUES
  292. ('bx_course', 'bx_course_add', 'bx_courses', 0, '_bx_courses_form_profile_display_add'),
  293. ('bx_course', 'bx_course_delete', 'bx_courses', 0, '_bx_courses_form_profile_display_delete'),
  294. ('bx_course', 'bx_course_edit', 'bx_courses', 0, '_bx_courses_form_profile_display_edit'),
  295. ('bx_course', 'bx_course_edit_cover', 'bx_courses', 0, '_bx_courses_form_profile_display_edit_cover'),
  296. ('bx_course', 'bx_course_view', 'bx_courses', 1, '_bx_courses_form_profile_display_view'),
  297. ('bx_course', 'bx_course_view_full', 'bx_courses', 1, '_bx_courses_form_profile_display_view_full'),
  298. ('bx_course', 'bx_course_invite', 'bx_courses', 0, '_bx_courses_form_profile_display_invite');
  299. 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
  300. ('bx_course', 'bx_courses', 'cf', '', '#!sys_content_filter', 0, 'select', '_sys_form_entry_input_sys_cf', '_sys_form_entry_input_cf', '', 0, 0, 0, '', '', '', '', '', '', 'Int', '', 1, 0),
  301. ('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),
  302. ('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),
  303. ('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),
  304. ('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),
  305. ('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),
  306. ('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),
  307. ('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),
  308. ('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),
  309. ('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),
  310. ('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),
  311. ('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),
  312. ('bx_course', 'bx_courses', 'location', '', '', 0, 'location', '_sys_form_input_sys_location', '_sys_form_input_location', '', 0, 0, 0, '', '', '', '', '', '', '', '', 1, 0),
  313. ('bx_course', 'bx_courses', 'labels', '', '', 0, 'custom', '_sys_form_input_sys_labels', '_sys_form_input_labels', '', 0, 0, 0, '', '', '', '', '', '', '', '', 1, 0);
  314. INSERT INTO `sys_form_display_inputs`(`display_name`, `input_name`, `visible_for_levels`, `active`, `order`) VALUES
  315. ('bx_course_add', 'initial_members', 2147483647, 1, 1),
  316. ('bx_course_add', 'name', 2147483647, 1, 2),
  317. ('bx_course_add', 'cat', 2147483647, 1, 3),
  318. ('bx_course_add', 'desc', 2147483647, 1, 4),
  319. ('bx_course_add', 'location', 2147483647, 1, 5),
  320. ('bx_course_add', 'join_confirmation', 2147483647, 1, 6),
  321. ('bx_course_add', 'allow_view_to', 2147483647, 1, 7),
  322. ('bx_course_add', 'allow_post_to', 2147483647, 1, 8),
  323. ('bx_course_add', 'cf', 2147483647, 1, 9),
  324. ('bx_course_add', 'do_submit', 2147483647, 1, 10),
  325. ('bx_course_invite', 'initial_members', 2147483647, 1, 1),
  326. ('bx_course_invite', 'do_submit', 2147483647, 1, 2),
  327. ('bx_course_delete', 'delete_confirm', 2147483647, 1, 1),
  328. ('bx_course_delete', 'do_submit', 2147483647, 1, 2),
  329. ('bx_course_edit', 'name', 2147483647, 1, 1),
  330. ('bx_course_edit', 'cat', 2147483647, 1, 2),
  331. ('bx_course_edit', 'desc', 2147483647, 1, 3),
  332. ('bx_course_edit', 'location', 2147483647, 1, 4),
  333. ('bx_course_edit', 'join_confirmation', 2147483647, 1, 5),
  334. ('bx_course_edit', 'allow_view_to', 2147483647, 1, 6),
  335. ('bx_course_edit', 'allow_post_to', 2147483647, 1, 7),
  336. ('bx_course_edit', 'cf', 2147483647, 1, 8),
  337. ('bx_course_edit', 'do_submit', 2147483647, 1, 9),
  338. ('bx_course_edit_cover', 'cover', 2147483647, 1, 1),
  339. ('bx_course_edit_cover', 'do_submit', 2147483647, 1, 2),
  340. ('bx_course_view', 'name', 2147483647, 1, 1),
  341. ('bx_course_view', 'cat', 2147483647, 1, 2),
  342. ('bx_course_view_full', 'name', 2147483647, 1, 1),
  343. ('bx_course_view_full', 'cat', 2147483647, 1, 2),
  344. ('bx_course_view_full', 'desc', 2147483647, 1, 3);
  345. -- FORMS: Price
  346. 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
  347. ('bx_courses_price', 'bx_courses', '_bx_courses_form_price', '', '', 'do_submit', 'bx_courses_prices', 'id', '', '', '', 0, 1, 'BxCoursesFormPrice', 'modules/boonex/courses/classes/BxCoursesFormPrice.php');
  348. INSERT INTO `sys_form_displays` (`display_name`, `module`, `object`, `title`, `view_mode`) VALUES
  349. ('bx_courses_price_add', 'bx_courses', 'bx_courses_price', '_bx_courses_form_price_display_add', 0),
  350. ('bx_courses_price_edit', 'bx_courses', 'bx_courses_price', '_bx_courses_form_price_display_edit', 0);
  351. 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
  352. ('bx_courses_price', 'bx_courses', 'id', '', '', 0, 'hidden', '_bx_courses_form_price_input_sys_id', '', '', 1, 0, 0, '', '', '', '', '', '', 'Int', '', 1, 0),
  353. ('bx_courses_price', 'bx_courses', 'role_id', '', '', 0, 'hidden', '_bx_courses_form_price_input_sys_role_id', '', '', 1, 0, 0, '', '', '', '', '', '', 'Int', '', 1, 0),
  354. ('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),
  355. ('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),
  356. ('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),
  357. ('bx_courses_price', 'bx_courses', 'price', '', '', 0, 'price', '_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),
  358. ('bx_courses_price', 'bx_courses', 'controls', '', 'do_submit,do_cancel', 0, 'input_set', '', '', '', 0, 0, 0, '', '', '', '', '', '', '', '', 1, 0),
  359. ('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),
  360. ('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);
  361. INSERT INTO `sys_form_display_inputs` (`display_name`, `input_name`, `visible_for_levels`, `active`, `order`) VALUES
  362. ('bx_courses_price_add', 'id', 2147483647, 0, 1),
  363. ('bx_courses_price_add', 'role_id', 2147483647, 1, 2),
  364. ('bx_courses_price_add', 'name', 2147483647, 1, 3),
  365. ('bx_courses_price_add', 'price', 2147483647, 1, 4),
  366. ('bx_courses_price_add', 'period', 2147483647, 1, 5),
  367. ('bx_courses_price_add', 'period_unit', 2147483647, 1, 6),
  368. ('bx_courses_price_add', 'controls', 2147483647, 1, 7),
  369. ('bx_courses_price_add', 'do_submit', 2147483647, 1, 8),
  370. ('bx_courses_price_add', 'do_cancel', 2147483647, 1, 9),
  371. ('bx_courses_price_edit', 'id', 2147483647, 1, 1),
  372. ('bx_courses_price_edit', 'role_id', 2147483647, 1, 2),
  373. ('bx_courses_price_edit', 'name', 2147483647, 1, 3),
  374. ('bx_courses_price_edit', 'price', 2147483647, 1, 4),
  375. ('bx_courses_price_edit', 'period', 2147483647, 1, 5),
  376. ('bx_courses_price_edit', 'period_unit', 2147483647, 1, 6),
  377. ('bx_courses_price_edit', 'controls', 2147483647, 1, 7),
  378. ('bx_courses_price_edit', 'do_submit', 2147483647, 1, 8),
  379. ('bx_courses_price_edit', 'do_cancel', 2147483647, 1, 9);
  380. -- PRE-VALUES
  381. INSERT INTO `sys_form_pre_lists`(`key`, `title`, `module`, `use_for_sets`) VALUES
  382. ('bx_courses_cats', '_bx_courses_pre_lists_cats', 'bx_courses', '0');
  383. INSERT INTO `sys_form_pre_values`(`Key`, `Value`, `Order`, `LKey`, `LKey2`) VALUES
  384. ('bx_courses_cats', '', 0, '_sys_please_select', ''),
  385. ('bx_courses_cats', '1', 1, '_bx_courses_cat_General', '');
  386. INSERT INTO `sys_form_pre_lists`(`key`, `title`, `module`, `use_for_sets`) VALUES
  387. ('bx_courses_roles', '_bx_courses_pre_lists_roles', 'bx_courses', '1');
  388. INSERT INTO `sys_form_pre_values`(`Key`, `Value`, `Order`, `LKey`, `LKey2`) VALUES
  389. ('bx_courses_roles', '0', 1, '_bx_courses_role_regular', ''),
  390. ('bx_courses_roles', '1', 2, '_bx_courses_role_administrator', ''),
  391. ('bx_courses_roles', '2', 3, '_bx_courses_role_moderator', '');
  392. INSERT INTO `sys_form_pre_lists`(`key`, `title`, `module`, `use_for_sets`) VALUES
  393. ('bx_courses_period_units', '_bx_courses_pre_lists_period_units', 'bx_courses', '0');
  394. INSERT INTO `sys_form_pre_values`(`Key`, `Value`, `Order`, `LKey`, `LKey2`) VALUES
  395. ('bx_courses_period_units', '', 0, '_sys_please_select', ''),
  396. ('bx_courses_period_units', 'day', 1, '_bx_courses_period_unit_day', ''),
  397. ('bx_courses_period_units', 'week', 2, '_bx_courses_period_unit_week', ''),
  398. ('bx_courses_period_units', 'month', 3, '_bx_courses_period_unit_month', ''),
  399. ('bx_courses_period_units', 'year', 4, '_bx_courses_period_unit_year', '');
  400. -- COMMENTS
  401. 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
  402. ('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'),
  403. ('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', '');
  404. -- VIEWS
  405. 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
  406. ('bx_courses', 'bx_courses_views_track', '86400', '1', 'bx_courses_data', 'id', 'author', 'views', '', '');
  407. -- VOTES
  408. INSERT INTO `sys_objects_vote` (`Name`, `TableMain`, `TableTrack`, `PostTimeout`, `MinValue`, `MaxValue`, `IsUndo`, `IsOn`, `TriggerTable`, `TriggerFieldId`, `TriggerFieldAuthor`, `TriggerFieldRate`, `TriggerFieldRateCount`, `ClassName`, `ClassFile`) VALUES
  409. ('bx_courses', 'bx_courses_votes', 'bx_courses_votes_track', '604800', '1', '1', '0', '1', 'bx_courses_data', 'id', 'author', 'rate', 'votes', '', '');
  410. -- SCORES
  411. 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
  412. ('bx_courses', 'bx_courses', 'bx_courses_scores', 'bx_courses_scores_track', '604800', '0', 'bx_courses_data', 'id', 'author', 'score', 'sc_up', 'sc_down', '', '');
  413. -- REPORTS
  414. INSERT INTO `sys_objects_report` (`name`, `module`, `table_main`, `table_track`, `is_on`, `base_url`, `object_comment`, `trigger_table`, `trigger_field_id`, `trigger_field_author`, `trigger_field_count`, `class_name`, `class_file`) VALUES
  415. ('bx_courses', 'bx_courses', 'bx_courses_reports', 'bx_courses_reports_track', '1', 'page.php?i=view-course-profile&id={object_id}', 'bx_courses_notes', 'bx_courses_data', 'id', 'author', 'reports', '', '');
  416. -- FAFORITES
  417. 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
  418. ('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', '', '');
  419. -- FEATURED
  420. 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
  421. ('bx_courses', 'bx_courses', '1', '1', 'page.php?i=view-course-profile&id={object_id}', 'bx_courses_data', 'id', 'author', 'featured', '', '');
  422. -- CONTENT INFO
  423. INSERT INTO `sys_objects_content_info` (`name`, `title`, `alert_unit`, `alert_action_add`, `alert_action_update`, `alert_action_delete`, `class_name`, `class_file`) VALUES
  424. ('bx_courses', '_bx_courses', 'bx_courses', 'added', 'edited', 'deleted', '', ''),
  425. ('bx_courses_cmts', '_bx_courses_cmts', 'bx_courses', 'commentPost', 'commentUpdated', 'commentRemoved', 'BxDolContentInfoCmts', '');
  426. INSERT INTO `sys_content_info_grids` (`object`, `grid_object`, `grid_field_id`, `condition`, `selection`) VALUES
  427. ('bx_courses', 'bx_courses_administration', 'td`.`id', '', ''),
  428. ('bx_courses', 'bx_courses_common', 'td`.`id', '', '');
  429. -- SEARCH EXTENDED
  430. INSERT INTO `sys_objects_search_extended` (`object`, `object_content_info`, `module`, `title`, `active`, `class_name`, `class_file`) VALUES
  431. ('bx_courses', 'bx_courses', 'bx_courses', '_bx_courses_search_extended', 1, '', ''),
  432. ('bx_courses_cmts', 'bx_courses_cmts', 'bx_courses', '_bx_courses_search_extended_cmts', 1, 'BxTemplSearchExtendedCmts', '');
  433. -- STUDIO PAGE & WIDGET
  434. INSERT INTO `sys_std_pages`(`index`, `name`, `header`, `caption`, `icon`) VALUES
  435. (3, 'bx_courses', '_bx_courses', '_bx_courses', 'bx_courses@modules/boonex/courses/|std-icon.svg');
  436. SET @iPageId = LAST_INSERT_ID();
  437. SET @iParentPageId = (SELECT `id` FROM `sys_std_pages` WHERE `name` = 'home');
  438. SET @iParentPageOrder = (SELECT MAX(`order`) FROM `sys_std_pages_widgets` WHERE `page_id` = @iParentPageId);
  439. INSERT INTO `sys_std_widgets` (`page_id`, `module`, `type`, `url`, `click`, `icon`, `caption`, `cnt_notices`, `cnt_actions`) VALUES
  440. (@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";}');
  441. INSERT INTO `sys_std_pages_widgets` (`page_id`, `widget_id`, `order`) VALUES
  442. (@iParentPageId, LAST_INSERT_ID(), IF(ISNULL(@iParentPageOrder), 1, @iParentPageOrder + 1));