PageRenderTime 61ms CodeModel.GetById 13ms RepoModel.GetById 0ms app.codeStats 0ms

/inc/install_inc.php

https://bitbucket.org/ryanhowdy/family-connections
PHP | 976 lines | 793 code | 72 blank | 111 comment | 0 complexity | d18eae09822fdfa0cd0c529f572f2bae MD5 | raw file
Possible License(s): Apache-2.0, GPL-2.0
  1. <?php
  2. include_once 'thirdparty/gettext.inc';
  3. /**
  4. * dropTables
  5. *
  6. * @return void
  7. */
  8. function dropTables ()
  9. {
  10. mysql_query("DROP TABLE IF EXISTS `fcms_config`") or die("fcms_config<br/>" . mysql_error());
  11. mysql_query("DROP TABLE IF EXISTS `fcms_notification`") or die("fcms_notification<br/>" . mysql_error());
  12. mysql_query("DROP TABLE IF EXISTS `fcms_video_comment`") or die("fcms_video_comment<br/>" . mysql_error());
  13. mysql_query("DROP TABLE IF EXISTS `fcms_video`") or die("fcms_video<br/>" . mysql_error());
  14. mysql_query("DROP TABLE IF EXISTS `fcms_changelog`") or die("fcms_changelog<br/>" . mysql_error());
  15. mysql_query("DROP TABLE IF EXISTS `fcms_schedule`") or die("fcms_schedule<br/>" . mysql_error());
  16. mysql_query("DROP TABLE IF EXISTS `fcms_status`") or die("fcms_status<br/>" . mysql_error());
  17. mysql_query("DROP TABLE IF EXISTS `fcms_navigation`") or die("fcms_navigation<br/>" . mysql_error());
  18. mysql_query("DROP TABLE IF EXISTS `fcms_chat_online`") or die("fcms_chat_oneline<br/>" . mysql_error());
  19. mysql_query("DROP TABLE IF EXISTS `fcms_chat_messages`") or die("fcms_chat_messages<br/>" . mysql_error());
  20. mysql_query("DROP TABLE IF EXISTS `fcms_address`") or die("fcms_address<br/>" . mysql_error());
  21. mysql_query("DROP TABLE IF EXISTS `fcms_alerts`") or die("fcms_alerts<br/>" . mysql_error());
  22. mysql_query("DROP TABLE IF EXISTS `fcms_privatemsg`") or die("fcms_privatemsg<br/>" . mysql_error());
  23. mysql_query("DROP TABLE IF EXISTS `fcms_documents`") or die("fcms_documents<br/>" . mysql_error());
  24. mysql_query("DROP TABLE IF EXISTS `fcms_calendar`") or die("fcms_calendar<br/>" . mysql_error());
  25. mysql_query("DROP TABLE IF EXISTS `fcms_invitation`") or die("fcms_invitation<br/>" . mysql_error());
  26. mysql_query("DROP TABLE IF EXISTS `fcms_gallery_photo_comment`") or die("fcms_gallery_photo_comment<br/>" . mysql_error());
  27. mysql_query("DROP TABLE IF EXISTS `fcms_gallery_category_comment`") or die("fcms_gallery_category_comment<br/>" . mysql_error());
  28. mysql_query("DROP TABLE IF EXISTS `fcms_gallery_photos_tags`") or die("fcms_gallery_photos_tags<br/>" . mysql_error());
  29. mysql_query("DROP TABLE IF EXISTS `fcms_gallery_photos`") or die("fcms_gallery_photos<br/>" . mysql_error());
  30. mysql_query("DROP TABLE IF EXISTS `fcms_news_comments`") or die("fcms_news_comments<br/>" . mysql_error());
  31. mysql_query("DROP TABLE IF EXISTS `fcms_news`") or die("fcms_news<br/>" . mysql_error());
  32. mysql_query("DROP TABLE IF EXISTS `fcms_poll_comment`") or die("fcms_poll_comment<br/>" . mysql_error());
  33. mysql_query("DROP TABLE IF EXISTS `fcms_poll_votes`") or die("fcms_poll_votes<br/>" . mysql_error());
  34. mysql_query("DROP TABLE IF EXISTS `fcms_poll_options`") or die("fcms_poll_options<br/>" . mysql_error());
  35. mysql_query("DROP TABLE IF EXISTS `fcms_polls`") or die("fcms_polls<br/>" . mysql_error());
  36. mysql_query("DROP TABLE IF EXISTS `fcms_prayers`") or die("fcms_prayers<br/>" . mysql_error());
  37. mysql_query("DROP TABLE IF EXISTS `fcms_board_posts`") or die("fcms_board_posts<br/>" . mysql_error());
  38. mysql_query("DROP TABLE IF EXISTS `fcms_board_threads`") or die("fcms_board_threads<br/>" . mysql_error());
  39. mysql_query("DROP TABLE IF EXISTS `fcms_recipes`") or die("fcms_recipes<br/>" . mysql_error());
  40. mysql_query("DROP TABLE IF EXISTS `fcms_recipe_comment`") or die("fcms_recipe_comment<br/>" . mysql_error());
  41. mysql_query("DROP TABLE IF EXISTS `fcms_category`") or die("fcms_category<br/>" . mysql_error());
  42. mysql_query("DROP TABLE IF EXISTS `fcms_user_awards`") or die("fcms_user_awards<br/>" . mysql_error());
  43. mysql_query("DROP TABLE IF EXISTS `fcms_user_settings`") or die("fcms_user_settings<br/>" . mysql_error());
  44. mysql_query("DROP TABLE IF EXISTS `fcms_relationship`") or die("fcms_relationship<br/>" . mysql_error());
  45. mysql_query("DROP TABLE IF EXISTS `fcms_users`") or die("fcms_users<br/>" . mysql_error());
  46. mysql_query("SET NAMES utf8") or die("Encoding<br/>" . mysql_error());
  47. }
  48. /**
  49. * installConfig
  50. *
  51. * @param string $sitename
  52. * @param string $contact
  53. * @param string $version
  54. *
  55. * @return void
  56. */
  57. function installConfig ($sitename, $contact, $version)
  58. {
  59. $sql = "CREATE TABLE `fcms_config` (
  60. `name` VARCHAR(50) NOT NULL,
  61. `value` VARCHAR(255) NULL
  62. )
  63. ENGINE=InnoDB DEFAULT CHARSET=utf8";
  64. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  65. $sql = "INSERT INTO `fcms_config` (`name`, `value`)
  66. VALUES
  67. ('sitename', '$sitename'),
  68. ('contact', '$contact'),
  69. ('current_version', '$version'),
  70. ('auto_activate', '0'),
  71. ('registration', '1'),
  72. ('full_size_photos', '0'),
  73. ('site_off', '0'),
  74. ('log_errors', '0'),
  75. ('fs_client_id', NULL),
  76. ('fs_client_secret', NULL),
  77. ('fs_callback_url', NULL),
  78. ('external_news_date', NULL),
  79. ('fb_app_id', NULL),
  80. ('fb_secret', NULL),
  81. ('youtube_key', NULL),
  82. ('running_job', '0'),
  83. ('start_week', '0'),
  84. ('debug', '0'),
  85. ('country', 'US'),
  86. ('instagram_client_id', NULL),
  87. ('instagram_client_secret', NULL)";
  88. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  89. }
  90. /**
  91. * installNavigation
  92. *
  93. * @param string $sections
  94. *
  95. * @return void
  96. */
  97. function installNavigation ($sections)
  98. {
  99. $sql = "CREATE TABLE `fcms_navigation` (
  100. `id` INT(25) NOT NULL AUTO_INCREMENT,
  101. `link` VARCHAR(30) NOT NULL,
  102. `col` TINYINT(1) NOT NULL,
  103. `order` TINYINT(2) NOT NULL,
  104. `req` TINYINT(1) NOT NULL DEFAULT 0,
  105. PRIMARY KEY (`id`)
  106. ) ENGINE=InnoDB DEFAULT CHARSET=utf8";
  107. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  108. $sql = "INSERT INTO `fcms_navigation` (`link`, `col`, `order`, `req`)
  109. VALUES ('home', 1, 1, 1),
  110. ('profile', 2, 1, 1),
  111. ('settings', 2, 2, 1),
  112. ('pm', 2, 3, 1),
  113. ('notification', 2, 4, 1),
  114. ('messageboard', 3, 1, 1),
  115. ('photogallery', 4, 1, 1),
  116. ('videogallery', 4, 2, 1),
  117. ('addressbook', 4, 3, 1),
  118. ('calendar', 4, 4, 1),
  119. ('members', 5, 1, 1),
  120. ('contact', 5, 2, 1),
  121. ('help', 5, 3, 1),
  122. ('admin_upgrade', 6, 1, 1),
  123. ('admin_configuration', 6, 2, 1),
  124. ('admin_members', 6, 3, 1),
  125. ('admin_photogallery', 6, 4, 1),
  126. ('admin_polls', 6, 5, 1),
  127. ('admin_scheduler', 6, 10, 1),
  128. ('admin_facebook', 6, 6, 1),
  129. ('admin_youtube', 6, 7, 1),
  130. ('admin_foursquare', 6, 8, 1),
  131. ('admin_instagram', 6, 9, 1)";
  132. mysql_query($sql) or die("$sql<br/>".mysql_error());
  133. $sql = "INSERT INTO `fcms_navigation` (`link`, `col`, `order`, `req`)
  134. VALUES ";
  135. foreach ($sections as $table => $section)
  136. {
  137. $sql .= "('$table', $section[0], $section[1], $section[2]), ";
  138. }
  139. $sql = substr($sql, 0, -2); // Remove the comma at the end
  140. mysql_query($sql) or die($sql . "<br/><br/>" . mysql_error());
  141. }
  142. /**
  143. * installUsers
  144. *
  145. * Installs the users, user_settings and address tables.
  146. *
  147. * @param string $fname
  148. * @param string $lname
  149. * @param string $email
  150. * @param string $dobYear
  151. * @param string $dobMonth
  152. * @param string $dobDay
  153. * @param string $username
  154. * @param string $password
  155. *
  156. * @return void
  157. */
  158. function installUsers ($fname, $lname, $email, $dobYear, $dobMonth, $dobDay, $username, $password)
  159. {
  160. $sql = "CREATE TABLE `fcms_users` (
  161. `id` INT(25) NOT NULL AUTO_INCREMENT,
  162. `access` TINYINT(1) NOT NULL DEFAULT '3',
  163. `activity` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
  164. `joindate` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
  165. `fname` VARCHAR(25) NOT NULL DEFAULT 'fname',
  166. `mname` VARCHAR(25) NULL,
  167. `lname` VARCHAR(25) NOT NULL DEFAULT 'lname',
  168. `maiden` VARCHAR(25) NULL,
  169. `sex` CHAR(1) NOT NULL DEFAULT 'M',
  170. `email` VARCHAR(50) NOT NULL DEFAULT 'me@mail.com',
  171. `dob_year` CHAR(4),
  172. `dob_month` CHAR(2),
  173. `dob_day` CHAR(2),
  174. `dod_year` CHAR(4),
  175. `dod_month` CHAR(2),
  176. `dod_day` CHAR(2),
  177. `username` VARCHAR(25) NOT NULL DEFAULT '0',
  178. `password` VARCHAR(255) NOT NULL DEFAULT '0',
  179. `avatar` VARCHAR(25) NOT NULL DEFAULT 'no_avatar.jpg',
  180. `gravatar` VARCHAR(255) NULL,
  181. `bio` VARCHAR(200) NULL,
  182. `activate_code` CHAR(13) NULL,
  183. `activated` TINYINT(1) NOT NULL DEFAULT '0',
  184. `login_attempts` TINYINT(1) NOT NULL DEFAULT '0',
  185. `locked` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
  186. PRIMARY KEY (`id`),
  187. UNIQUE KEY `username` (`username`)
  188. )
  189. ENGINE=InnoDB DEFAULT CHARSET=utf8";
  190. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  191. // insert users
  192. $sql = "INSERT INTO `fcms_users` (
  193. `id`, `access`, `joindate`, `fname`, `lname`, `email`, `dob_year`, `dob_month`, `dob_day`, `username`, `password`, `activated`
  194. ) VALUES (
  195. 1,
  196. 1,
  197. NOW(),
  198. '$fname',
  199. '$lname',
  200. '$email',
  201. '$dobYear',
  202. '$dobMonth',
  203. '$dobDay',
  204. '$username',
  205. '$password',
  206. 1
  207. )";
  208. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  209. // create user_settings
  210. $sql = "CREATE TABLE `fcms_user_settings` (
  211. `id` INT(11) NOT NULL AUTO_INCREMENT,
  212. `user` INT(11) NOT NULL,
  213. `theme` VARCHAR(25) NOT NULL DEFAULT 'default',
  214. `boardsort` SET('ASC', 'DESC') NOT NULL DEFAULT 'ASC',
  215. `displayname` SET('1','2','3') NOT NULL DEFAULT '1',
  216. `frontpage` SET('1','2') NOT NULL DEFAULT '1',
  217. `timezone` set('-12 hours', '-11 hours', '-10 hours', '-9 hours', '-8 hours', '-7 hours', '-6 hours', '-5 hours', '-4 hours', '-3 hours -30 minutes', '-3 hours', '-2 hours', '-1 hours', '-0 hours', '+1 hours', '+2 hours', '+3 hours', '+3 hours +30 minutes', '+4 hours', '+4 hours +30 minutes', '+5 hours', '+5 hours +30 minutes', '+6 hours', '+7 hours', '+8 hours', '+9 hours', '+9 hours +30 minutes', '+10 hours', '+11 hours', '+12 hours') NOT NULL DEFAULT '-5 hours',
  218. `dst` TINYINT(1) NOT NULL DEFAULT '0',
  219. `email_updates` TINYINT(1) NOT NULL DEFAULT '0',
  220. `advanced_upload` TINYINT(1) NOT NULL DEFAULT '1',
  221. `advanced_tagging` TINYINT(1) NOT NULL DEFAULT '1',
  222. `language` VARCHAR(6) NOT NULL DEFAULT 'en_US',
  223. `fs_user_id` INT(11) NULL,
  224. `fs_access_token` CHAR(50) NULL,
  225. `blogger` VARCHAR(255) NULL,
  226. `tumblr` VARCHAR(255) NULL,
  227. `wordpress` VARCHAR(255) NULL,
  228. `posterous` VARCHAR(255) NULL,
  229. `fb_access_token` VARCHAR(255) NULL,
  230. `youtube_session_token` VARCHAR(255) NULL,
  231. `instagram_access_token` VARCHAR(255) NULL,
  232. PRIMARY KEY (`id`),
  233. KEY `user_ind` (`user`)
  234. )
  235. ENGINE=InnoDB DEFAULT CHARSET=utf8";
  236. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  237. // alter user_settings
  238. $sql = "ALTER TABLE `fcms_user_settings`
  239. ADD CONSTRAINT `fcms_user_stgs_ibfk_1`
  240. FOREIGN KEY (`user`)
  241. REFERENCES `fcms_users` (`id`) ON DELETE CASCADE";
  242. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  243. // insert user_settings
  244. $sql = "INSERT INTO `fcms_user_settings` (`id`, `user`)
  245. VALUES (NULL, 1)";
  246. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  247. // create address
  248. $sql = "CREATE TABLE `fcms_address` (
  249. `id` INT(11) NOT NULL AUTO_INCREMENT,
  250. `user` INT(11) NOT NULL DEFAULT '0',
  251. `country` CHAR(2) DEFAULT NULL,
  252. `address` VARCHAR(50) DEFAULT NULL,
  253. `city` VARCHAR(50) DEFAULT NULL,
  254. `state` VARCHAR(50) DEFAULT NULL,
  255. `zip` VARCHAR(10) DEFAULT NULL,
  256. `home` VARCHAR(20) DEFAULT NULL,
  257. `work` VARCHAR(20) DEFAULT NULL,
  258. `cell` VARCHAR(20) DEFAULT NULL,
  259. `created_id` INT(11) NOT NULL DEFAULT '0',
  260. `created` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
  261. `updated_id` INT(11) NOT NULL DEFAULT '0',
  262. `updated` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
  263. PRIMARY KEY (`id`),
  264. KEY `user_ind` (`user`),
  265. KEY `create_ind` (`created_id`),
  266. KEY `update_ind` (`updated_id`)
  267. )
  268. ENGINE=InnoDB DEFAULT CHARSET=utf8";
  269. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  270. // alter address
  271. $sql = "ALTER TABLE `fcms_address`
  272. ADD CONSTRAINT `fcms_address_ibfk_1`
  273. FOREIGN KEY (`user`)
  274. REFERENCES `fcms_users` (`id`)
  275. ON DELETE CASCADE";
  276. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  277. // insert address
  278. $sql = "INSERT INTO `fcms_address` (`id`, `user`, `created_id`, `created`, `updated_id`, `updated`)
  279. VALUES (NULL, 1, 1, NOW(), 1, NOW())";
  280. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  281. }
  282. /**
  283. * installCategory
  284. *
  285. * @return void
  286. */
  287. function installCategory ()
  288. {
  289. // create fcms_category
  290. $sql = "CREATE TABLE `fcms_category` (
  291. `id` INT(11) NOT NULL AUTO_INCREMENT,
  292. `name` VARCHAR(50) NOT NULL,
  293. `type` VARCHAR(20) NOT NULL,
  294. `user` INT(11) NOT NULL,
  295. `date` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
  296. `color` VARCHAR(20) NULL,
  297. `description` VARCHAR(255) NULL,
  298. PRIMARY KEY (`id`),
  299. KEY `user_ind` (`user`)
  300. )
  301. ENGINE=InnoDB DEFAULT CHARSET=utf8";
  302. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  303. // insert fcms_category
  304. $sql = "INSERT INTO `fcms_category` (`name`, `type`, `user`, `date`, `color`)
  305. VALUES
  306. ('', 'calendar', 1, NOW(), 'none'),
  307. ('".T_('Anniversary')."', 'calendar', 1, NOW(), 'green'),
  308. ('".T_('Birthday')."', 'calendar', 1, NOW(), 'red'),
  309. ('".T_('Holiday')."', 'calendar', 1, NOW(), 'indigo')";
  310. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  311. }
  312. /**
  313. * installCalendar
  314. *
  315. * @return void
  316. */
  317. function installCalendar ()
  318. {
  319. // create calendar
  320. $sql = "CREATE TABLE `fcms_calendar` (
  321. `id` INT(11) NOT NULL AUTO_INCREMENT,
  322. `date` DATE NOT NULL DEFAULT '0000-00-00',
  323. `time_start` TIME NULL,
  324. `time_end` TIME NULL,
  325. `date_added` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
  326. `title` VARCHAR(50) NOT NULL DEFAULT 'MyDate',
  327. `desc` TEXT,
  328. `created_by` INT(11) NOT NULL DEFAULT '0',
  329. `category` INT(11) NOT NULL DEFAULT '0',
  330. `repeat` VARCHAR(20) NULL,
  331. `private` TINYINT(1) NOT NULL DEFAULT '0',
  332. `invite` TINYINT(1) NOT NULL DEFAULT '0',
  333. PRIMARY KEY (`id`),
  334. KEY `by_ind` (`created_by`)
  335. )
  336. ENGINE=InnoDB DEFAULT CHARSET=utf8";
  337. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  338. // alter calendar
  339. $sql = "ALTER TABLE `fcms_calendar`
  340. ADD CONSTRAINT `fcms_calendar_ibfk_1`
  341. FOREIGN KEY (`created_by`)
  342. REFERENCES `fcms_users` (`id`)
  343. ON DELETE CASCADE";
  344. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  345. $sql = "INSERT INTO `fcms_calendar`
  346. (`id`, `date`, `date_added`, `title`, `created_by`, `category`, `repeat`)
  347. VALUES
  348. (NULL, '2007-12-25', '2007-12-25 01:00:00', \"".T_('Christmas')."\", 1, 4, 'yearly'),
  349. (NULL, '2007-02-14', '2007-02-14 01:00:00', \"".T_('Valentine\'s Day')."\", 1, 4, 'yearly'),
  350. (NULL, '2007-01-01', '2007-01-01 01:00:00', \"".T_('New Year\'s Day')."\", 1, 4, 'yearly'),
  351. (NULL, '2007-07-04', '2007-07-04 01:00:00', \"".T_('Independence Day')."\", 1, 4, 'yearly'),
  352. (NULL, '2007-02-02', '2007-02-02 01:00:00', \"".T_('Groundhog Day')."\", 1, 4, 'yearly'),
  353. (NULL, '2007-03-17', '2007-03-17 01:00:00', \"".T_('St. Patrick\'s Day')."\", 1, 4, 'yearly'),
  354. (NULL, '2007-04-01', '2007-04-01 01:00:00', \"".T_('April Fools Day')."\", 1, 4, 'yearly'),
  355. (NULL, '2007-10-31', '2007-10-31 01:00:00', \"".T_('Halloween')."\", 1, 4, 'yearly')";
  356. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  357. }
  358. /**
  359. * installTables
  360. *
  361. * @return void
  362. */
  363. function installTables ()
  364. {
  365. // create video
  366. $sql = "CREATE TABLE `fcms_video` (
  367. `id` INT(25) NOT NULL AUTO_INCREMENT,
  368. `source_id` VARCHAR(255) NOT NULL,
  369. `title` VARCHAR(255) NOT NULL DEFAULT 'untitled',
  370. `description` VARCHAR(255) NULL,
  371. `duration` INT(25) NULL,
  372. `source` VARCHAR(50) NULL,
  373. `height` INT(4) NOT NULL DEFAULT '420',
  374. `width` INT(4) NOT NULL DEFAULT '780',
  375. `active` TINYINT(1) NOT NULL DEFAULT '1',
  376. `created` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
  377. `created_id` INT(25) NOT NULL,
  378. `updated` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
  379. `updated_id` INT(25) NOT NULL,
  380. PRIMARY KEY (`id`)
  381. ) ENGINE=InnoDB DEFAULT CHARSET=utf8";
  382. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  383. $sql = "CREATE TABLE `fcms_video_comment` (
  384. `id` INT(25) NOT NULL AUTO_INCREMENT,
  385. `video_id` INT(25) NOT NULL,
  386. `comment` TEXT NOT NULL,
  387. `created` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
  388. `created_id` INT(25) NOT NULL,
  389. `updated` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
  390. `updated_id` INT(25) NOT NULL,
  391. PRIMARY KEY (`id`),
  392. CONSTRAINT FOREIGN KEY (`video_id`) REFERENCES `fcms_video` (`id`)
  393. ) ENGINE=InnoDB DEFAULT CHARSET=utf8";
  394. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  395. // create schedule
  396. $sql = "CREATE TABLE `fcms_schedule` (
  397. `id` INT(25) NOT NULL AUTO_INCREMENT,
  398. `type` VARCHAR(50) NOT NULL DEFAULT 'familynews',
  399. `repeat` VARCHAR(50) NOT NULL DEFAULT 'hourly',
  400. `lastrun` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
  401. `status` TINYINT(1) NOT NULL DEFAULT 0,
  402. PRIMARY KEY (`id`)
  403. ) ENGINE=InnoDB DEFAULT CHARSET=utf8";
  404. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  405. // populate schedule
  406. $sql = "INSERT INTO `fcms_schedule` (`type`, `repeat`)
  407. VALUES
  408. ('awards', 'daily'),
  409. ('familynews', 'hourly'),
  410. ('youtube', 'hourly'),
  411. ('instagram', 'hourly')";
  412. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  413. // create changelog
  414. $sql = "CREATE TABLE `fcms_changelog` (
  415. `id` INT(25) NOT NULL AUTO_INCREMENT,
  416. `user` INT(25) NOT NULL DEFAULT '0',
  417. `table` VARCHAR(50) NOT NULL,
  418. `column` VARCHAR(50) NOT NULL,
  419. `created` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
  420. PRIMARY KEY (`id`),
  421. CONSTRAINT FOREIGN KEY (`user`) REFERENCES `fcms_users` (`id`)
  422. ) ENGINE=InnoDB DEFAULT CHARSET=utf8";
  423. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  424. // create invitation
  425. $sql = "CREATE TABLE `fcms_invitation` (
  426. `id` INT(25) NOT NULL AUTO_INCREMENT,
  427. `event_id` INT(25) NOT NULL DEFAULT '0',
  428. `user` INT(25) NOT NULL DEFAULT '0',
  429. `email` VARCHAR(50) NULL,
  430. `created` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
  431. `updated` DATETIME DEFAULT NULL,
  432. `attending` TINYINT(1) DEFAULT NULL,
  433. `code` CHAR(13) DEFAULT NULL,
  434. `response` TEXT DEFAULT NULL,
  435. PRIMARY KEY (`id`),
  436. KEY `event_id` (`event_id`)
  437. ) ENGINE=InnoDB DEFAULT CHARSET=utf8";
  438. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  439. // create gallery_photos
  440. $sql = "CREATE TABLE `fcms_gallery_photos` (
  441. `id` INT(11) NOT NULL AUTO_INCREMENT,
  442. `date` TIMESTAMP NOT NULL DEFAULT '0000-00-00 00:00:00',
  443. `filename` VARCHAR(25) NOT NULL DEFAULT 'noimage.gif',
  444. `external_id` INT(11) DEFAULT NULL,
  445. `caption` TEXT,
  446. `category` INT(11) NOT NULL DEFAULT '0',
  447. `user` INT(11) NOT NULL DEFAULT '0',
  448. `views` SMALLINT(6) NOT NULL DEFAULT '0',
  449. `votes` SMALLINT(6) NOT NULL DEFAULT '0',
  450. `rating` FLOAT NOT NULL DEFAULT '0',
  451. PRIMARY KEY (`id`),
  452. KEY `cat_ind` (`category`),
  453. KEY `user_ind` (`user`)
  454. )
  455. ENGINE=InnoDB DEFAULT CHARSET=utf8";
  456. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  457. // alter gallery_photos
  458. $sql = "ALTER TABLE `fcms_gallery_photos`
  459. ADD CONSTRAINT `fcms_gallery_photos_ibfk_1`
  460. FOREIGN KEY (`user`)
  461. REFERENCES `fcms_users` (`id`)
  462. ON DELETE CASCADE,
  463. ADD CONSTRAINT `fcms_gallery_photos_ibfk_2`
  464. FOREIGN KEY (`category`)
  465. REFERENCES `fcms_category` (`id`)
  466. ON DELETE CASCADE";
  467. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  468. // create gallery_photo_comment
  469. $sql = "CREATE TABLE `fcms_gallery_photo_comment` (
  470. `id` INT(11) NOT NULL AUTO_INCREMENT,
  471. `photo` INT(11) NOT NULL DEFAULT '0',
  472. `comment` TEXT NOT NULL,
  473. `date` TIMESTAMP NOT NULL DEFAULT '0000-00-00 00:00:00',
  474. `user` INT(11) NOT NULL DEFAULT '0',
  475. PRIMARY KEY (`id`),
  476. KEY `photo_ind` (`photo`),
  477. KEY `user_ind` (`user`)
  478. )
  479. ENGINE=InnoDB DEFAULT CHARSET=utf8";
  480. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  481. // alter gallery_photo_comment
  482. $sql = "ALTER TABLE `fcms_gallery_photo_comment`
  483. ADD CONSTRAINT `fcms_gallery_photo_comment_ibfk_1`
  484. FOREIGN KEY (`user`)
  485. REFERENCES `fcms_users` (`id`)
  486. ON DELETE CASCADE,
  487. ADD CONSTRAINT `fcms_gallery_photo_comment_ibfk_2`
  488. FOREIGN KEY (`photo`)
  489. REFERENCES `fcms_gallery_photos` (`id`)
  490. ON DELETE CASCADE";
  491. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  492. // create gallery_category_comment
  493. $sql = "CREATE TABLE `fcms_gallery_category_comment` (
  494. `id` INT(11) NOT NULL AUTO_INCREMENT,
  495. `category_id` INT(11) NOT NULL,
  496. `comment` TEXT NOT NULL,
  497. `created` TIMESTAMP NOT NULL DEFAULT '0000-00-00 00:00:00',
  498. `created_id` INT(11) NOT NULL,
  499. PRIMARY KEY (`id`)
  500. )
  501. ENGINE=InnoDB DEFAULT CHARSET=utf8";
  502. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  503. // create gallery_photos_tags
  504. $sql = "CREATE TABLE `fcms_gallery_photos_tags` (
  505. `id` INT(11) NOT NULL AUTO_INCREMENT,
  506. `user` INT(11) NOT NULL DEFAULT '0',
  507. `photo` INT(11) NOT NULL DEFAULT '0',
  508. PRIMARY KEY (`id`),
  509. KEY `tag_photo_ind` (`photo`),
  510. KEY `tag_user_ind` (`user`)
  511. )
  512. ENGINE=InnoDB DEFAULT CHARSET=utf8";
  513. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  514. // alter gallery_photos_tags
  515. $sql = "ALTER TABLE `fcms_gallery_photos_tags`
  516. ADD CONSTRAINT `fcms_gallery_photos_tags_ibfk_1`
  517. FOREIGN KEY (`user`)
  518. REFERENCES `fcms_users` (`id`)
  519. ON DELETE CASCADE,
  520. ADD CONSTRAINT `fcms_gallery_photos_tags_ibfk_2`
  521. FOREIGN KEY (`photo`)
  522. REFERENCES `fcms_gallery_photos` (`id`)
  523. ON DELETE CASCADE";
  524. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  525. // create gallery_external_photo
  526. $sql = "CREATE TABLE `fcms_gallery_external_photo` (
  527. `id` INT(11) NOT NULL AUTO_INCREMENT,
  528. `source_id` VARCHAR(255) NOT NULL,
  529. `thumbnail` VARCHAR(255) NOT NULL,
  530. `medium` VARCHAR(255) NOT NULL,
  531. `full` VARCHAR(255) NOT NULL,
  532. PRIMARY KEY (`id`)
  533. )
  534. ENGINE=InnoDB DEFAULT CHARSET=utf8";
  535. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  536. // create news
  537. $sql = "CREATE TABLE `fcms_news` (
  538. `id` INT(11) NOT NULL AUTO_INCREMENT,
  539. `title` VARCHAR(50) NOT NULL DEFAULT '',
  540. `news` TEXT NOT NULL,
  541. `user` INT(11) NOT NULL DEFAULT '0',
  542. `created` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
  543. `updated` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
  544. `external_type` VARCHAR(20) NULL,
  545. `external_id` VARCHAR(255) NULL,
  546. PRIMARY KEY (`id`),
  547. KEY `userindx` (`user`)
  548. )
  549. ENGINE=InnoDB DEFAULT CHARSET=utf8";
  550. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  551. // alter news
  552. $sql = "ALTER TABLE `fcms_news`
  553. ADD CONSTRAINT `fcms_news_ibfk_1`
  554. FOREIGN KEY (`user`)
  555. REFERENCES `fcms_users` (`id`)
  556. ON DELETE CASCADE";
  557. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  558. // create news_comments
  559. $sql = "CREATE TABLE `fcms_news_comments` (
  560. `id` INT(11) NOT NULL AUTO_INCREMENT,
  561. `news` INT(11) NOT NULL DEFAULT '0',
  562. `comment` TEXT NOT NULL,
  563. `date` TIMESTAMP NOT NULL DEFAULT '0000-00-00 00:00:00',
  564. `user` INT(11) NOT NULL DEFAULT '0',
  565. PRIMARY KEY (`id`),
  566. KEY `photo_ind` (`news`),
  567. KEY `user_ind` (`user`)
  568. )
  569. ENGINE=InnoDB DEFAULT CHARSET=utf8";
  570. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  571. // alter news_comments
  572. $sql = "ALTER TABLE `fcms_news_comments`
  573. ADD CONSTRAINT `fcms_news_comments_ibfk_2`
  574. FOREIGN KEY (`user`)
  575. REFERENCES `fcms_users` (`id`)
  576. ON DELETE CASCADE,
  577. ADD CONSTRAINT `fcms_news_comments_ibfk_1`
  578. FOREIGN KEY (`news`)
  579. REFERENCES `fcms_news` (`id`)
  580. ON DELETE CASCADE";
  581. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  582. // create polls
  583. $sql = "CREATE TABLE `fcms_polls` (
  584. `id` INT(11) NOT NULL AUTO_INCREMENT,
  585. `question` TEXT NOT NULL,
  586. `started` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
  587. PRIMARY KEY (`id`)
  588. )
  589. ENGINE=InnoDB DEFAULT CHARSET=utf8";
  590. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  591. // insert poll
  592. $sql = "INSERT INTO `fcms_polls` (`id`, `question`, `started`)
  593. VALUES (NULL, '".T_('Family Connections software is...')."', NOW())";
  594. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  595. // create poll_options
  596. $sql = "CREATE TABLE `fcms_poll_options` (
  597. `id` INT(11) NOT NULL AUTO_INCREMENT,
  598. `poll_id` INT(11) NOT NULL DEFAULT '0',
  599. `option` TEXT NOT NULL,
  600. `votes` INT(11) NOT NULL DEFAULT '0',
  601. PRIMARY KEY (`id`),
  602. KEY `pollid_ind` (`poll_id`)
  603. )
  604. ENGINE=InnoDB DEFAULT CHARSET=utf8";
  605. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  606. // alter poll_options
  607. $sql = "ALTER TABLE `fcms_poll_options`
  608. ADD CONSTRAINT `fcms_poll_options_ibfk_1`
  609. FOREIGN KEY (`poll_id`)
  610. REFERENCES `fcms_polls` (`id`)
  611. ON DELETE CASCADE";
  612. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  613. // insert poll_options
  614. $sql = "INSERT INTO `fcms_poll_options` (`id`, `poll_id`, `option`, `votes`)
  615. VALUES
  616. (NULL, 1, '".T_('Easy to use!')."', 0),
  617. (NULL, 1, '".T_('Visually appealing!')."', 0),
  618. (NULL, 1, '".T_('Just what our family needed!')."', 0)";
  619. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  620. // create poll_votes
  621. $sql = "CREATE TABLE `fcms_poll_votes` (
  622. `id` INT(11) NOT NULL AUTO_INCREMENT,
  623. `user` INT(11) NOT NULL DEFAULT '0',
  624. `option` INT(11) NOT NULL DEFAULT '0',
  625. `poll_id` INT(11) NOT NULL DEFAULT '0',
  626. PRIMARY KEY (`id`),
  627. KEY `user_ind` (`user`),
  628. KEY `option_ind` (`option`),
  629. KEY `poll_id_ind` (`poll_id`)
  630. )
  631. ENGINE=InnoDB DEFAULT CHARSET=utf8";
  632. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  633. // alter poll_votes
  634. $sql = "ALTER TABLE `fcms_poll_votes`
  635. ADD CONSTRAINT `fcms_poll_votes_ibfk_1`
  636. FOREIGN KEY (`user`)
  637. REFERENCES `fcms_users` (`id`)
  638. ON DELETE CASCADE,
  639. ADD CONSTRAINT `fcms_poll_votes_ibfk_2`
  640. FOREIGN KEY (`option`)
  641. REFERENCES `fcms_poll_options` (`id`)
  642. ON DELETE CASCADE,
  643. ADD CONSTRAINT `fcms_poll_votes_ibfk_3`
  644. FOREIGN KEY (`poll_id`)
  645. REFERENCES `fcms_polls` (`id`)
  646. ON DELETE CASCADE";
  647. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  648. // create poll_comment
  649. $sql = "CREATE TABLE `fcms_poll_comment` (
  650. `id` INT(11) NOT NULL AUTO_INCREMENT,
  651. `poll_id` INT(11) NOT NULL,
  652. `comment` TEXT NOT NULL,
  653. `created` TIMESTAMP NOT NULL DEFAULT '0000-00-00 00:00:00',
  654. `created_id` INT(11) NOT NULL,
  655. PRIMARY KEY (`id`)
  656. )
  657. ENGINE=InnoDB DEFAULT CHARSET=utf8";
  658. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  659. // create prayers
  660. $sql = "CREATE TABLE `fcms_prayers` (
  661. `id` INT(11) NOT NULL AUTO_INCREMENT,
  662. `for` VARCHAR(50) NOT NULL DEFAULT '',
  663. `desc` TEXT NOT NULL,
  664. `user` INT(11) NOT NULL DEFAULT '0',
  665. `date` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
  666. PRIMARY KEY (`id`),
  667. KEY `userindx` (`user`)
  668. )
  669. ENGINE=InnoDB DEFAULT CHARSET=utf8";
  670. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  671. // alter prayers
  672. $sql = "ALTER TABLE `fcms_prayers`
  673. ADD CONSTRAINT `fcms_prayers_ibfk_1`
  674. FOREIGN KEY (`user`)
  675. REFERENCES `fcms_users` (`id`)
  676. ON DELETE CASCADE";
  677. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  678. // create board_threads
  679. $sql = "CREATE TABLE `fcms_board_threads` (
  680. `id` INT(11) NOT NULL AUTO_INCREMENT,
  681. `subject` VARCHAR(50) NOT NULL DEFAULT 'Subject',
  682. `started_by` INT(11) NOT NULL DEFAULT '0',
  683. `updated` TIMESTAMP NOT NULL DEFAULT '0000-00-00 00:00:00',
  684. `updated_by` INT(11) NOT NULL DEFAULT '0',
  685. `views` SMALLINT(6) NOT NULL DEFAULT '0',
  686. PRIMARY KEY (`id`),
  687. KEY `start_ind` (`started_by`),
  688. KEY `up_ind` (`updated_by`)
  689. )
  690. ENGINE=InnoDB DEFAULT CHARSET=utf8";
  691. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  692. // alter board_threads
  693. $sql = "ALTER TABLE `fcms_board_threads`
  694. ADD CONSTRAINT `fcms_threads_ibfk_1`
  695. FOREIGN KEY (`started_by`)
  696. REFERENCES `fcms_users` (`id`)
  697. ON DELETE CASCADE,
  698. ADD CONSTRAINT `fcms_threads_ibfk_2`
  699. FOREIGN KEY (`updated_by`)
  700. REFERENCES `fcms_users` (`id`)
  701. ON DELETE CASCADE";
  702. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  703. // insert board_threads
  704. $sql = "INSERT INTO `fcms_board_threads` (`id`, `subject`, `started_by`, `updated`, `updated_by`, `views`)
  705. VALUES (1, '".T_('Welcome')."', 1, NOW(), 1, 0)";
  706. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  707. // create board_posts
  708. $sql = "CREATE TABLE `fcms_board_posts` (
  709. `id` INT(11) NOT NULL AUTO_INCREMENT,
  710. `date` TIMESTAMP NOT NULL DEFAULT '0000-00-00 00:00:00',
  711. `thread` INT(11) NOT NULL DEFAULT '0',
  712. `user` INT(11) NOT NULL DEFAULT '0',
  713. `post` TEXT NOT NULL,
  714. PRIMARY KEY (`id`),
  715. KEY `thread_ind` (`thread`),
  716. KEY `user_ind` (`user`)
  717. )
  718. ENGINE=InnoDB DEFAULT CHARSET=utf8";
  719. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  720. // altert board_posts
  721. $sql = "ALTER TABLE `fcms_board_posts`
  722. ADD CONSTRAINT `fcms_posts_ibfk_1`
  723. FOREIGN KEY (`thread`)
  724. REFERENCES `fcms_board_threads` (`id`)
  725. ON DELETE CASCADE,
  726. ADD CONSTRAINT `fcms_posts_ibfk_2`
  727. FOREIGN KEY (`user`)
  728. REFERENCES `fcms_users` (`id`)
  729. ON DELETE CASCADE";
  730. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  731. // insert board_posts
  732. $sql = "INSERT INTO `fcms_board_posts` (`id`, `date`, `thread`, `user`, `post`)
  733. VALUES (NULL, NOW(), 1, 1, '".sprintf(T_('Welcome to the %s Message Board.'), 'Family Connections')."')";
  734. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  735. // create recipes
  736. $sql = "CREATE TABLE `fcms_recipes` (
  737. `id` INT(11) NOT NULL AUTO_INCREMENT,
  738. `name` VARCHAR(50) NOT NULL DEFAULT 'My Recipe',
  739. `thumbnail` VARCHAR(255) NOT NULL DEFAULT 'no_recipe.jpg',
  740. `category` INT(11) NOT NULL,
  741. `ingredients` TEXT NOT NULL,
  742. `directions` TEXT NOT NULL,
  743. `user` INT(11) NOT NULL,
  744. `date` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
  745. PRIMARY KEY (`id`)
  746. )
  747. ENGINE=InnoDB DEFAULT CHARSET=utf8";
  748. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  749. // alter recipes
  750. $sql = "ALTER TABLE `fcms_recipes`
  751. ADD CONSTRAINT `fcms_recipes_ibfk_1`
  752. FOREIGN KEY (`user`)
  753. REFERENCES `fcms_users` (`id`)
  754. ON DELETE CASCADE";
  755. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  756. // recipe comments
  757. $sql = "CREATE TABLE `fcms_recipe_comment` (
  758. `id` INT(25) NOT NULL AUTO_INCREMENT,
  759. `recipe` INT(25) NOT NULL,
  760. `comment` TEXT NOT NULL,
  761. `date` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
  762. `user` INT(25) NOT NULL,
  763. PRIMARY KEY (`id`),
  764. KEY `recipe` (`recipe`)
  765. ) ENGINE=InnoDB DEFAULT CHARSET=utf8";
  766. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  767. // create privatemsg
  768. $sql = "CREATE TABLE `fcms_privatemsg` (
  769. `id` INT(11) NOT NULL AUTO_INCREMENT,
  770. `to` INT(11) NOT NULL,
  771. `from` INT(11) NOT NULL,
  772. `date` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
  773. `title` VARCHAR(50) NOT NULL DEFAULT 'PM Title',
  774. `msg` TEXT,
  775. `read` TINYINT(1) NOT NULL DEFAULT '0',
  776. PRIMARY KEY (`id`),
  777. KEY `to_ind` (`to`),
  778. KEY `from_ind` (`from`)
  779. )
  780. ENGINE=InnoDB DEFAULT CHARSET=utf8";
  781. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  782. // alter privatemsg
  783. $sql = "ALTER TABLE `fcms_privatemsg`
  784. ADD CONSTRAINT `fcms_privatemsg_ibfk_1`
  785. FOREIGN KEY (`to`)
  786. REFERENCES `fcms_users` (`id`)
  787. ON DELETE CASCADE,
  788. ADD CONSTRAINT `fcms_privatemsg_ibfk_2`
  789. FOREIGN KEY (`from`)
  790. REFERENCES `fcms_users` (`id`)
  791. ON DELETE CASCADE";
  792. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  793. // create documents
  794. $sql = "CREATE TABLE `fcms_documents` (
  795. `id` INT(11) NOT NULL AUTO_INCREMENT,
  796. `name` VARCHAR(50) NOT NULL,
  797. `description` TEXT NOT NULL,
  798. `mime` VARCHAR(50) NOT NULL DEFAULT 'application/download',
  799. `user` INT(11) NOT NULL,
  800. `date` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
  801. PRIMARY KEY (`id`)
  802. )
  803. ENGINE=InnoDB DEFAULT CHARSET=utf8";
  804. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  805. // alter documents
  806. $sql = "ALTER TABLE `fcms_documents`
  807. ADD CONSTRAINT `fcms_documents_ibfk_1`
  808. FOREIGN KEY (`user`)
  809. REFERENCES `fcms_users` (`id`)
  810. ON DELETE CASCADE";
  811. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  812. // create family tree
  813. $sql = "CREATE TABLE `fcms_relationship` (
  814. `id` INT(25) NOT NULL AUTO_INCREMENT,
  815. `user` INT(25) NOT NULL,
  816. `relationship` VARCHAR(4) NOT NULL,
  817. `rel_user` INT(25) NOT NULL,
  818. PRIMARY KEY (`id`),
  819. KEY `user_ind` (`user`),
  820. KEY `rel_user` (`rel_user`)
  821. ) ENGINE=InnoDB DEFAULT CHARSET=utf8";
  822. mysql_query($sql) or die("$sql<br/>".mysql_error());
  823. // creat fcms_chat_online
  824. $sql = "CREATE TABLE fcms_chat_online (
  825. userID INT(11) NOT NULL,
  826. userName VARCHAR(64) NOT NULL,
  827. userRole INT(1) NOT NULL,
  828. channel INT(11) NOT NULL,
  829. dateTime DATETIME NOT NULL,
  830. ip VARBINARY(16) NOT NULL
  831. ) DEFAULT CHARSET=utf8 COLLATE=utf8_bin";
  832. mysql_query($sql) or die("$sql<br/>".mysql_error());
  833. // creat fcms_chat_messages
  834. $sql = "CREATE TABLE fcms_chat_messages (
  835. id INT(11) NOT NULL AUTO_INCREMENT,
  836. userID INT(11) NOT NULL,
  837. userName VARCHAR(64) NOT NULL,
  838. userRole INT(1) NOT NULL,
  839. channel INT(11) NOT NULL,
  840. dateTime DATETIME NOT NULL,
  841. ip VARBINARY(16) NOT NULL,
  842. text TEXT,
  843. PRIMARY KEY (id)
  844. ) DEFAULT CHARSET=utf8 COLLATE=utf8_bin";
  845. mysql_query($sql) or die("$sql<br/>".mysql_error());
  846. // create user_awards
  847. $sql = "CREATE TABLE `fcms_user_awards` (
  848. `id` INT(11) NOT NULL AUTO_INCREMENT,
  849. `user` INT(11) NOT NULL DEFAULT '0',
  850. `award` VARCHAR(100) NOT NULL,
  851. `month` INT(6) NOT NULL,
  852. `date` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
  853. `item_id` INT(11) NULL,
  854. `count` SMALLINT(4) NOT NULL default '0',
  855. PRIMARY KEY (`id`),
  856. KEY `user` (`user`)
  857. )
  858. ENGINE=InnoDB DEFAULT CHARSET=utf8";
  859. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  860. // alter user_awards
  861. $sql = "ALTER TABLE `fcms_user_awards`
  862. ADD CONSTRAINT `fcms_user_awards_ibfk_1`
  863. FOREIGN KEY (`user`)
  864. REFERENCES `fcms_users` (`id`)
  865. ON DELETE CASCADE";
  866. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  867. // create fcms_alerts
  868. $sql = "CREATE TABLE `fcms_alerts` (
  869. `id` INT(25) NOT NULL AUTO_INCREMENT,
  870. `alert` VARCHAR(50) NOT NULL DEFAULT '0',
  871. `user` INT(25) NOT NULL DEFAULT '0',
  872. `hide` TINYINT(1) NOT NULL DEFAULT '1',
  873. PRIMARY KEY (`id`),
  874. KEY `alert_ind` (`alert`),
  875. KEY `user_ind` (`user`)
  876. ) ENGINE=InnoDB DEFAULT CHARSET=utf8";
  877. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  878. // create fcms_status
  879. $sql = "CREATE TABLE `fcms_status` (
  880. `id` INT(25) NOT NULL AUTO_INCREMENT,
  881. `user` INT(25) NOT NULL DEFAULT '0',
  882. `status` TEXT DEFAULT NULL,
  883. `parent` INT(25) NOT NULL DEFAULT '0',
  884. `created` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
  885. `updated` DATETIME DEFAULT NULL,
  886. PRIMARY KEY (`id`),
  887. CONSTRAINT FOREIGN KEY (`user`) REFERENCES `fcms_users` (`id`)
  888. ) ENGINE=InnoDB DEFAULT CHARSET=utf8";
  889. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  890. // create fcms_notification
  891. $sql = "CREATE TABLE `fcms_notification` (
  892. `id` INT(25) NOT NULL AUTO_INCREMENT,
  893. `user` INT(25) NOT NULL DEFAULT '0',
  894. `created_id` INT(25) NOT NULL DEFAULT '0',
  895. `notification` VARCHAR(50) DEFAULT NULL,
  896. `data` VARCHAR(50) NOT NULL,
  897. `read` TINYINT(1) NOT NULL DEFAULT '0',
  898. `created` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
  899. `updated` DATETIME DEFAULT NULL,
  900. PRIMARY KEY (`id`),
  901. CONSTRAINT FOREIGN KEY (`user`) REFERENCES `fcms_users` (`id`)
  902. ) ENGINE=InnoDB DEFAULT CHARSET=utf8";
  903. mysql_query($sql) or die($sql . '<br/>' . mysql_error());
  904. }