banip.html 2.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <!-- Standard Meta -->
  5. <meta charset="utf-8" />
  6. <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
  7. <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0">
  8. <!-- Site Properties -->
  9. <title>Minecraft Server</title>
  10. <script src="https://code.jquery.com/jquery-3.1.1.min.js" crossorigin="anonymous"></script>
  11. <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/semantic-ui@2.4.2/dist/semantic.min.css">
  12. <script src="https://cdn.jsdelivr.net/npm/semantic-ui@2.4.2/dist/semantic.min.js"></script>
  13. <!-- MC Skin-->
  14. <link rel="stylesheet" href="/css/minecraft-skinviewer.css">
  15. </head>
  16. <body>
  17. <div class="ui divided items" id="userlist">
  18. </div>
  19. <div class="ui fluid input" style="position: fixed;bottom: 10px;width: 99vw;">
  20. <input type="text" id="ip" placeholder="IP">
  21. <div style="width:10px"></div>
  22. <input type="text" id="reason" placeholder="Reason">
  23. <div style="width:10px"></div>
  24. <div class="ui button" onclick="submit()">Submit</div>
  25. </div>
  26. </body>
  27. <script>
  28. updateInfo();
  29. setInterval(function() {
  30. updateInfo()
  31. }, 5000);
  32. function updateInfo() {
  33. $.get("/ban-ip", function(data) {
  34. if (data.length == 0) {
  35. $("#userlist").html(`
  36. <div class="item">
  37. <div class="content">
  38. <div class="header"No record.</div>
  39. </div>
  40. </div>
  41. `)
  42. return
  43. }
  44. $("#userlist").html("");
  45. $.each(data, function(i, item) {
  46. $("#userlist").append(`
  47. <div class="item">
  48. <div class="content">
  49. <div class="header">` + item.ip + `</div>
  50. <div class="meta">
  51. <span>` + item.reason + `</span>
  52. </div>
  53. </div>
  54. <div class="ui right floated buttons" style="display:block;margin:auto" ip="` + item.ip + `">
  55. <button onclick="unban(this)" class="ui red button">UnBan</button>
  56. </div>
  57. </div>
  58. `)
  59. })
  60. $("#userlist").append('<div style="height:40px"></div>');
  61. });
  62. }
  63. function unban(btn) {
  64. var data = $(btn).parent().attr("ip");
  65. $.get("/ban-ip/remove?field=ip&search=" + data);
  66. }
  67. function submit() {
  68. var ip = $("#ip").val();
  69. var reason = $("#reason").val();
  70. $.get("/ban-ip/add?ip=" + ip + "&reason=" + reason);
  71. }
  72. </script>
  73. </html>