install.sql 30 KB

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