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.4KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243
  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("Bitcoin donations (balance)", "tools.php?action=bitcoin_balance", check_perms("admin_donor_log"));
  94. create_row("Bitcoin donations (unprocessed)", "tools.php?action=bitcoin_unproc", check_perms("admin_donor_log"));
  95. create_row("Donation log", "tools.php?action=donation_log", check_perms("admin_donor_log"));
  96. create_row("Donor rewards", "tools.php?action=donor_rewards", check_perms("users_mod"));
  97. if ($ToolsHTML) {
  98. ?>
  99. <div class="permission_subcontainer">
  100. <table class="layout">
  101. <tr class="colhead">
  102. <td>Finances</td>
  103. </tr>
  104. <?= $ToolsHTML ?>
  105. </table>
  106. </div>
  107. <?php
  108. } ?>
  109. <!-- end left column -->
  110. </div>
  111. <div class="permission_container">
  112. <!-- begin middle column -->
  113. <?php
  114. // begin Queue category
  115. $ToolsHTML = "";
  116. create_row("Auto-Enable requests", "tools.php?action=enable_requests", check_perms("users_mod"));
  117. create_row("Email deletion requests", "tools.php?action=delete_email", check_perms("users_mod"));
  118. create_row("Login watch", "tools.php?action=login_watch", check_perms("admin_login_watch"));
  119. if ($ToolsHTML) {
  120. ?>
  121. <div class="permission_subcontainer">
  122. <table class="layout">
  123. <tr class="colhead">
  124. <td>Queue</td>
  125. </tr>
  126. <?= $ToolsHTML ?>
  127. </table>
  128. </div>
  129. <?php
  130. }
  131. // begin Managers category
  132. $ToolsHTML = "";
  133. create_row("Email blacklist", "tools.php?action=email_blacklist", check_perms("users_view_email"));
  134. create_row("IP address bans", "tools.php?action=ip_ban", check_perms("admin_manage_ipbans"));
  135. create_row("Duplicate IP addresses", "tools.php?action=dupe_ips", check_perms("users_view_ips"));
  136. create_row("Manipulate invite tree", "tools.php?action=manipulate_tree", check_perms("users_mod"));
  137. if ($ToolsHTML) {
  138. ?>
  139. <div class="permission_subcontainer">
  140. <table class="layout">
  141. <tr class="colhead">
  142. <td>Managers</td>
  143. </tr>
  144. <?= $ToolsHTML ?>
  145. </table>
  146. </div>
  147. <?php
  148. }
  149. // begin Development category
  150. $ToolsHTML = "";
  151. create_row("Clear/view a cache key", "tools.php?action=clear_cache", check_perms("users_mod"));
  152. create_row("Rerender stylesheet gallery images", "tools.php?action=rerender_gallery", check_perms("site_debug") || check_perms("users_mod"));
  153. create_row("Schedule", "schedule.php?auth=$LoggedUser[AuthKey]", check_perms("site_debug"));
  154. create_row("Service stats", "tools.php?action=service_stats", check_perms("site_debug"));
  155. create_row("Miscellaneous values", "tools.php?action=misc_values", check_perms('users_mod'));
  156. create_row("Tracker info", "tools.php?action=ocelot_info", check_perms("users_mod"));
  157. create_row("Update GeoIP", "tools.php?action=update_geoip", check_perms("admin_update_geoip"));
  158. if ($ToolsHTML) {
  159. ?>
  160. <div class="permission_subcontainer">
  161. <table class="layout">
  162. <tr class="colhead">
  163. <td>Development</td>
  164. </tr>
  165. <?= $ToolsHTML ?>
  166. </table>
  167. </div>
  168. <?php
  169. } ?>
  170. <!-- end middle column -->
  171. </div>
  172. <div class="permission_container">
  173. <!-- begin right column -->
  174. <?php
  175. // begin Site Information category
  176. $ToolsHTML = "";
  177. #create_row("Database specifics", "tools.php?action=database_specifics", check_perms("site_debug"));
  178. create_row("Economic stats", "tools.php?action=economic_stats", check_perms("site_view_flow"));
  179. create_row("Invite pool", "tools.php?action=invite_pool", check_perms("users_view_invites"));
  180. create_row("Registration log", "tools.php?action=registration_log", check_perms("users_view_ips") && check_perms("users_view_email"));
  181. create_row("Torrent stats", "tools.php?action=torrent_stats", check_perms("site_view_flow"));
  182. create_row("Upscale pool", "tools.php?action=upscale_pool", check_perms("site_view_flow"));
  183. create_row("User flow", "tools.php?action=user_flow", check_perms("site_view_flow"));
  184. if ($ToolsHTML) {
  185. ?>
  186. <div class="permission_subcontainer">
  187. <table class="layout">
  188. <tr class="colhead">
  189. <td>Site Information</td>
  190. </tr>
  191. <?= $ToolsHTML ?>
  192. </table>
  193. </div>
  194. <?php
  195. }
  196. // begin Torrents category
  197. $ToolsHTML = "";
  198. create_row("Collage recovery", "collages.php?action=recover", check_perms("site_collages_recover"));
  199. create_row("\"Do Not Upload\" list", "tools.php?action=dnu", check_perms("admin_dnu"));
  200. create_row("Manage freeleech tokens", "tools.php?action=tokens", check_perms("users_mod"));
  201. create_row("Multiple freeleech", "tools.php?action=multiple_freeleech", check_perms("users_mod"));
  202. create_row("Label aliases", "tools.php?action=label_aliases", check_perms("users_mod"));
  203. create_row("Tag aliases", "tools.php?action=tag_aliases", check_perms("users_mod"));
  204. create_row("Batch tag editor", "tools.php?action=edit_tags", check_perms("users_mod"));
  205. create_row("Official tags manager", "tools.php?action=official_tags", check_perms("users_mod"));
  206. create_row("Sitewide freeleech manager", "tools.php?action=freeleech", check_perms("users_mod"));
  207. if ($ToolsHTML) {
  208. ?>
  209. <div class="permission_subcontainer">
  210. <table class="layout">
  211. <tr class="colhead">
  212. <td>Torrents</td>
  213. </tr>
  214. <?= $ToolsHTML ?>
  215. </table>
  216. </div>
  217. <?php
  218. } ?>
  219. <!-- end right column -->
  220. </div>
  221. </div>
  222. <?php View::show_footer();