show_groups.php 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128
  1. <?php
  2. /*
  3. *
  4. * OGP - Open Game Panel
  5. * Copyright (C) Copyright (C) 2008 - 2013 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. function exec_ogp_module() {
  25. global $db;
  26. ?>
  27. <div class="center">
  28. <h2><?php print_lang('add_new_group'); ?></h2>
  29. <p><?php print_lang('info_group'); ?></p>
  30. <?php
  31. require_once('includes/form_table_class.php');
  32. $ft = new FormTable();
  33. $ft->start_form('?m=user_admin&amp;p=add_group');
  34. $ft->start_table();
  35. $ft->add_field('string','group_name','');
  36. $ft->end_table();
  37. $ft->add_button('submit','add_group',get_lang('add_group'));
  38. $ft->end_form();
  39. ?>
  40. </div>
  41. <?php
  42. echo '<h2>'.get_lang('available_groups').'</h2>';
  43. if ($db->isAdmin($_SESSION['user_id']))
  44. $result = $db->getGroupList();
  45. else
  46. $result = $db->getUserGroupList($_SESSION['user_id']);
  47. if ( $result === FALSE )
  48. {
  49. echo "<p class='note'>".get_lang('no_groups_available')."</p>";
  50. return;
  51. }
  52. $i = 0;
  53. echo "<table class='center'><tr class='tr$i'><td>".
  54. get_lang('actions')."</td><td>".get_lang('group_name')."</td><td>".
  55. get_lang('users')."</td></tr>";
  56. foreach ( $result as $row ) #loop through the groups
  57. {
  58. $i++;
  59. echo "<tr class='tr$i'><td><a href='?m=user_games&amp;p=assign&amp;group_id=".$row['group_id']."'>[".
  60. get_lang('assign_homes')."]</a><br />
  61. <a href='?m=user_admin&amp;p=del_group&amp;group_id=".
  62. $row['group_id']."'>[".get_lang('delete_group').']</a>';
  63. echo "</td><td>".$row['group_name']."</td>";
  64. echo "<td class='left'>";
  65. $subusersEnabled = $db->isModuleInstalled("subusers");
  66. $subEnabled = false;
  67. if(!$subusersEnabled){
  68. $available_users = $db->getAvailableUsersForGroup($row['group_id']);
  69. }else{
  70. if(!$db->isAdmin($_SESSION['user_id'])){
  71. $available_users = $db->getAvailableSubUsersForGroup($row['group_id'], $_SESSION['user_id']);
  72. $subEnabled = true;
  73. }else{
  74. $available_users = $db->getAvailableUsersForGroup($row['group_id']);
  75. }
  76. }
  77. if ( is_array($available_users) )
  78. {
  79. if(count($available_users) > 0){
  80. echo "<form action=\"?m=user_admin&amp;p=add_to_group\" method=\"post\">".
  81. get_lang('add_user_to_group').
  82. ": <select name=\"user_to_add\">";
  83. foreach ($available_users as $user_row )
  84. {
  85. echo "<option value=\"$user_row[user_id]\">" . htmlentities($user_row[users_login]) . "</option>";
  86. }
  87. echo "</select>\n";
  88. echo "<input type='hidden' name='group_id' value='$row[group_id]' />";
  89. echo "<input type='submit' name='add_user_to_group' value='".get_lang('add_user')."' />";
  90. echo "</form>\n";
  91. }else{
  92. if($subEnabled){
  93. echo "<p>" .get_lang('no_subusers'). "</p>";
  94. }
  95. }
  96. }else{
  97. if($subEnabled){
  98. echo "<p>" .get_lang('no_subusers'). "</p>";
  99. }
  100. }
  101. $group_users = $db->listUsersInGroup($row['group_id']);
  102. if (is_array($group_users))
  103. {
  104. echo "<ul>";
  105. foreach ($group_users as $user_id)
  106. {
  107. $user_info = $db->getUserById($user_id['user_id']);
  108. echo "<li><a href='?m=user_admin&amp;p=del_from_group&amp;group_id=".
  109. $row['group_id']."&amp;user_id=".$user_id['user_id']."'>[".get_lang('remove_from_group').
  110. "]</a> $user_info[users_login]</li>";
  111. }
  112. echo "</ul>";
  113. }
  114. echo "</td></tr>";
  115. }
  116. echo "</table>";
  117. }