BioTorrents.de’s version of Gazelle
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

tools.php 8.1KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240
  1. <?php
  2. /***********************************************
  3. * This file displays the list of available tools in the staff toolbox.
  4. *
  5. * Because there are various subcontainers and various permissions, it
  6. * is possible to have empty subcontainers. The $ToolsHTML variable is
  7. * used to display only non-empty subcontainers.
  8. *
  9. ***********************************************
  10. */
  11. if (!check_perms('users_mod')) {
  12. error(403);
  13. }
  14. /**
  15. * Used for rendering a single table row in the staff toolbox. The
  16. * $ToolsHTML variable is incrementally expanded with each function call
  17. * in a given subcontainer and gets reset at the beginning of each new
  18. * subcontainer.
  19. *
  20. * @param string $Title - the displayed name of the tool
  21. * @param string $URL - the relative URL of the tool
  22. * @param bool $HasPermission - whether the user has permission to view/use the tool
  23. * @param string $Tooltip - optional tooltip
  24. *
  25. */
  26. function create_row($Title, $URL, $HasPermission = false, $Tooltip = false)
  27. {
  28. if ($HasPermission) {
  29. global $ToolsHTML;
  30. $TooltipHTML = $Tooltip !== false ? " class=\"tooltip\" title=\"$Tooltip\"" : "";
  31. $ToolsHTML .= "\t\t\t\t<tr><td><a href=\"$URL\"$TooltipHTML>$Title</a></td></tr>\n";
  32. }
  33. }
  34. View::show_header('Staff Tools');
  35. ?>
  36. <div class="permissions">
  37. <div class="permission_container">
  38. <!-- begin left column -->
  39. <?php
  40. // begin Administration category
  41. $ToolsHTML = "";
  42. create_row("Client whitelist", "tools.php?action=whitelist", check_perms("admin_whitelist"));
  43. create_row("Create user", "tools.php?action=create_user", check_perms("admin_create_users"));
  44. create_row("Permissions manager", "tools.php?action=permissions", check_perms("admin_manage_permissions"));
  45. create_row("Special users", "tools.php?action=special_users", check_perms("admin_manage_permissions"));
  46. create_row("Database key", "tools.php?action=database_key", check_perms("admin_manage_permissions"));
  47. if ($ToolsHTML) {
  48. ?>
  49. <div class="permission_subcontainer">
  50. <table class="layout">
  51. <tr class="colhead">
  52. <td>Administration</td>
  53. </tr>
  54. <?= $ToolsHTML ?>
  55. </table>
  56. </div>
  57. <?php
  58. }
  59. // begin Announcements category
  60. $ToolsHTML = "";
  61. create_row("Global notification", "tools.php?action=global_notification", check_perms("users_mod"));
  62. create_row("Mass PM", "tools.php?action=mass_pm", check_perms("users_mod"));
  63. create_row("News post", "tools.php?action=news", check_perms("admin_manage_news"));
  64. if ($ToolsHTML) {
  65. ?>
  66. <div class="permission_subcontainer">
  67. <table class="layout">
  68. <tr class="colhead">
  69. <td>Announcements</td>
  70. </tr>
  71. <?= $ToolsHTML ?>
  72. </table>
  73. </div>
  74. <?php
  75. }
  76. // begin Community category
  77. $ToolsHTML = "";
  78. create_row("Forum manager", "tools.php?action=forum", check_perms("admin_manage_forums"));
  79. if ($ToolsHTML) {
  80. ?>
  81. <div class="permission_subcontainer">
  82. <table class="layout">
  83. <tr class="colhead">
  84. <td>Community</td>
  85. </tr>
  86. <?= $ToolsHTML ?>
  87. </table>
  88. </div>
  89. <?php
  90. }
  91. // begin Finances category
  92. $ToolsHTML = "";
  93. create_row("Donation log", "tools.php?action=donation_log", check_perms("admin_donor_log"));
  94. create_row("Donor rewards", "tools.php?action=donor_rewards", check_perms("users_mod"));
  95. if ($ToolsHTML) {
  96. ?>
  97. <div class="permission_subcontainer">
  98. <table class="layout">
  99. <tr class="colhead">
  100. <td>Finances</td>
  101. </tr>
  102. <?= $ToolsHTML ?>
  103. </table>
  104. </div>
  105. <?php
  106. } ?>
  107. <!-- end left column -->
  108. </div>
  109. <div class="permission_container">
  110. <!-- begin middle column -->
  111. <?php
  112. // begin Queue category
  113. $ToolsHTML = "";
  114. create_row("Auto-Enable requests", "tools.php?action=enable_requests", check_perms("users_mod"));
  115. create_row("Email deletion requests", "tools.php?action=delete_email", check_perms("users_mod"));
  116. create_row("Login watch", "tools.php?action=login_watch", check_perms("admin_login_watch"));
  117. if ($ToolsHTML) {
  118. ?>
  119. <div class="permission_subcontainer">
  120. <table class="layout">
  121. <tr class="colhead">
  122. <td>Queue</td>
  123. </tr>
  124. <?= $ToolsHTML ?>
  125. </table>
  126. </div>
  127. <?php
  128. }
  129. // begin Managers category
  130. $ToolsHTML = "";
  131. create_row("Email blacklist", "tools.php?action=email_blacklist", check_perms("users_view_email"));
  132. create_row("IP address bans", "tools.php?action=ip_ban", check_perms("admin_manage_ipbans"));
  133. create_row("Duplicate IP addresses", "tools.php?action=dupe_ips", check_perms("users_view_ips"));
  134. create_row("Manipulate invite tree", "tools.php?action=manipulate_tree", check_perms("users_mod"));
  135. if ($ToolsHTML) {
  136. ?>
  137. <div class="permission_subcontainer">
  138. <table class="layout">
  139. <tr class="colhead">
  140. <td>Managers</td>
  141. </tr>
  142. <?= $ToolsHTML ?>
  143. </table>
  144. </div>
  145. <?php
  146. }
  147. // begin Development category
  148. $ToolsHTML = "";
  149. create_row("Clear/view a cache key", "tools.php?action=clear_cache", check_perms("users_mod"));
  150. create_row("Rerender stylesheet gallery images", "tools.php?action=rerender_gallery", check_perms("site_debug") || check_perms("users_mod"));
  151. create_row("Schedule", "schedule.php?auth=$LoggedUser[AuthKey]", check_perms("site_debug"));
  152. create_row("Service stats", "tools.php?action=service_stats", check_perms("site_debug"));
  153. create_row("Miscellaneous values", "tools.php?action=misc_values", check_perms('users_mod'));
  154. create_row("Tracker info", "tools.php?action=ocelot_info", check_perms("users_mod"));
  155. create_row("Update GeoIP", "tools.php?action=update_geoip", check_perms("admin_update_geoip"));
  156. if ($ToolsHTML) {
  157. ?>
  158. <div class="permission_subcontainer">
  159. <table class="layout">
  160. <tr class="colhead">
  161. <td>Development</td>
  162. </tr>
  163. <?= $ToolsHTML ?>
  164. </table>
  165. </div>
  166. <?php
  167. } ?>
  168. <!-- end middle column -->
  169. </div>
  170. <div class="permission_container">
  171. <!-- begin right column -->
  172. <?php
  173. // begin Site Information category
  174. $ToolsHTML = "";
  175. #create_row("Database specifics", "tools.php?action=database_specifics", check_perms("site_debug"));
  176. create_row("Economic stats", "tools.php?action=economic_stats", check_perms("site_view_flow"));
  177. create_row("Invite pool", "tools.php?action=invite_pool", check_perms("users_view_invites"));
  178. create_row("Registration log", "tools.php?action=registration_log", check_perms("users_view_ips") && check_perms("users_view_email"));
  179. create_row("Torrent stats", "tools.php?action=torrent_stats", check_perms("site_view_flow"));
  180. create_row("Upscale pool", "tools.php?action=upscale_pool", check_perms("site_view_flow"));
  181. create_row("User flow", "tools.php?action=user_flow", check_perms("site_view_flow"));
  182. if ($ToolsHTML) {
  183. ?>
  184. <div class="permission_subcontainer">
  185. <table class="layout">
  186. <tr class="colhead">
  187. <td>Site Information</td>
  188. </tr>
  189. <?= $ToolsHTML ?>
  190. </table>
  191. </div>
  192. <?php
  193. }
  194. // begin Torrents category
  195. $ToolsHTML = "";
  196. create_row("Collage recovery", "collages.php?action=recover", check_perms("site_collages_recover"));
  197. create_row("Manage freeleech tokens", "tools.php?action=tokens", check_perms("users_mod"));
  198. create_row("Multiple freeleech", "tools.php?action=multiple_freeleech", check_perms("users_mod"));
  199. create_row("Label aliases", "tools.php?action=label_aliases", check_perms("users_mod"));
  200. create_row("Tag aliases", "tools.php?action=tag_aliases", check_perms("users_mod"));
  201. create_row("Batch tag editor", "tools.php?action=edit_tags", check_perms("users_mod"));
  202. create_row("Official tags manager", "tools.php?action=official_tags", check_perms("users_mod"));
  203. create_row("Sitewide freeleech manager", "tools.php?action=freeleech", check_perms("users_mod"));
  204. if ($ToolsHTML) {
  205. ?>
  206. <div class="permission_subcontainer">
  207. <table class="layout">
  208. <tr class="colhead">
  209. <td>Torrents</td>
  210. </tr>
  211. <?= $ToolsHTML ?>
  212. </table>
  213. </div>
  214. <?php
  215. } ?>
  216. <!-- end right column -->
  217. </div>
  218. </div>
  219. <?php View::show_footer();