module.php 4.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. <?php
  2. /*
  3. *
  4. * OGP - Open Game Panel
  5. * Copyright (C) 2008 - 2018 The OGP Development Team
  6. *
  7. * http://www.opengamepanel.org/
  8. *
  9. * This program is free software; you can redistribute it and/or
  10. * modify it under the terms of the GNU General Public License
  11. * as published by the Free Software Foundation; either version 2
  12. * of the License, or any later version.
  13. *
  14. * This program is distributed in the hope that it will be useful,
  15. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  16. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  17. * GNU General Public License for more details.
  18. *
  19. * You should have received a copy of the GNU General Public License
  20. * along with this program; if not, write to the Free Software
  21. * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
  22. *
  23. */
  24. // Module general information
  25. $module_title = "User admin";
  26. $module_version = "1.1";
  27. $db_version = 7;
  28. $module_required = TRUE;
  29. $module_menus = array(
  30. array( 'subpage' => '', 'name'=>'User Admin', 'group'=>'admin' ),
  31. array( 'subpage' => 'show_groups', 'name'=>'Group Admin', 'group'=>'admin' )
  32. );
  33. $install_queries = array();
  34. $install_queries[0] = array(
  35. "DROP TABLE IF EXISTS ".OGP_DB_PREFIX."users;",
  36. "CREATE TABLE ".OGP_DB_PREFIX."users (
  37. `user_id` int(11) NOT NULL auto_increment,
  38. `users_login` varchar(255) NOT NULL,
  39. `users_passwd` varchar(255) NOT NULL,
  40. `users_lang` varchar(20) NOT NULL default 'English',
  41. `users_role` varchar(30) NOT NULL default 'user',
  42. `users_group` varchar(100) NULL,
  43. `users_fname` varchar(255) NULL,
  44. `users_lname` varchar(255) NULL,
  45. `users_email` varchar(255) NULL,
  46. `users_phone` varchar(12) NULL,
  47. `users_city` varchar(255) NULL,
  48. `users_province` varchar(255) NULL,
  49. `users_country` varchar(255) NULL,
  50. `users_comment` text NULL,
  51. `users_theme` varchar(255) NULL,
  52. `user_expires` varchar(30) NOT NULL default 'X',
  53. PRIMARY KEY (`users_login`),
  54. UNIQUE KEY `id` (`user_id`)
  55. ) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4;",
  56. "DROP TABLE IF EXISTS ".OGP_DB_PREFIX."user_groups;",
  57. "CREATE TABLE ".OGP_DB_PREFIX."user_groups (
  58. `user_id` int(11) NOT NULL,
  59. `role_id` int(11) NULL,
  60. `group_id` int(11) NOT NULL,
  61. PRIMARY KEY (`user_id`,`group_id`)
  62. ) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4;",
  63. "DROP TABLE IF EXISTS ".OGP_DB_PREFIX."user_role_info;",
  64. "CREATE TABLE ".OGP_DB_PREFIX."user_role_info (
  65. `role_id` int(11) NOT NULL auto_increment,
  66. `role_name` varchar(100) NULL,
  67. PRIMARY KEY (`role_id`), UNIQUE KEY (`role_name`)
  68. ) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4;",
  69. "DROP TABLE IF EXISTS ".OGP_DB_PREFIX."user_group_info;",
  70. "CREATE TABLE ".OGP_DB_PREFIX."user_group_info (
  71. `group_id` int(11) NOT NULL auto_increment,
  72. `group_name` varchar(255), PRIMARY KEY (`group_id`),
  73. UNIQUE KEY (`group_name`)
  74. ) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4;");
  75. $install_queries[1] = array("ALTER TABLE `".OGP_DB_PREFIX."user_group_info` ADD `main_user_id` int(11) NULL;");
  76. $install_queries[2] = array("ALTER TABLE `".OGP_DB_PREFIX."users` ADD `users_parent` int(11) NULL;");
  77. $install_queries[3] = array(
  78. "ALTER TABLE `".OGP_DB_PREFIX."users` CHANGE `users_email` `users_email` VARCHAR( 255 ) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL",
  79. "UPDATE ".OGP_DB_PREFIX."users
  80. JOIN (
  81. SELECT users_email, MIN(user_id) minID
  82. FROM ".OGP_DB_PREFIX."users
  83. GROUP BY users_email
  84. HAVING COUNT(*) > 1
  85. ) t2 ON ".OGP_DB_PREFIX."users.users_email = t2.users_email AND ".OGP_DB_PREFIX."users.user_id != t2.minID
  86. SET ".OGP_DB_PREFIX."users.users_email = DEFAULT;",
  87. "ALTER TABLE `".OGP_DB_PREFIX."users` ADD UNIQUE `email` (`users_email`);");
  88. $install_queries[4] = array("UPDATE ".OGP_DB_PREFIX."users SET users_email = DEFAULT WHERE users_email = '';");
  89. $install_queries[5] = array("ALTER TABLE `".OGP_DB_PREFIX."user_groups` MODIFY group_id int(11) NOT NULL;");
  90. $install_queries[6] = array("ALTER TABLE `".OGP_DB_PREFIX."users` ADD `users_page_limit` int(11) NULL DEFAULT 25;");
  91. $install_queries[7] = array("ALTER TABLE `".OGP_DB_PREFIX."users` ADD `user_receives_emails` tinyint(1) NOT NULL DEFAULT 1;");
  92. ?>