players.html 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  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. </body>
  20. <script>
  21. var currentOnlineUser = [];
  22. setInterval(function() {
  23. updateInfo()
  24. }, 3000);
  25. function updateInfo() {
  26. $.get("serverinfo", function(data) {
  27. if (data.sample == null) {
  28. $("#userlist").html(`
  29. <div class="item">
  30. <div class="content">
  31. <div class="header">No one here :(</div>
  32. </div>
  33. </div>
  34. `)
  35. return
  36. }
  37. if (data.sample.length == 0) {
  38. $("#userlist").html(`
  39. <div class="item">
  40. <div class="content">
  41. <div class="header">No one here :(</div>
  42. </div>
  43. </div>
  44. `)
  45. return
  46. }
  47. $("#userlist").html("");
  48. $.each(data.sample, function(i, item) {
  49. $("#userlist").append(`
  50. <div class="item">
  51. <div class="ui mini image" style="width:64px">
  52. <div class="mc-face-viewer-8x" style="background-image:url('/skin/` + item.uuid + `.png')"></div>
  53. </div>
  54. <div class="content">
  55. <div class="header">` + item.name + `</div>
  56. <div class="meta">
  57. <span>` + item.uuid + `</span>
  58. </div>
  59. </div>
  60. <div class="ui right floated buttons" username="` + item.name + `">
  61. <button onclick="op(this)" class="ui green button">Op</button>
  62. <button onclick="deop(this)" class="ui yellow button">De-Op</button>
  63. <button onclick="kick(this)" class="ui orange button">Kick</button>
  64. <button onclick="ban(this)" class="ui red button">Ban</button>
  65. </div>
  66. </div>
  67. `)
  68. })
  69. currentOnlineUser = data.sample;
  70. });
  71. }
  72. function op(btn) {
  73. var username = $(btn).parent().attr("username");
  74. sendCmd("op " + username);
  75. }
  76. function deop(btn) {
  77. var username = $(btn).parent().attr("username");
  78. sendCmd("deop " + username);
  79. }
  80. function kick(btn) {
  81. var username = $(btn).parent().attr("username");
  82. sendCmd("kick " + username);
  83. }
  84. function ban(btn) {
  85. var username = $(btn).parent().attr("username");
  86. sendCmd("ban " + username);
  87. }
  88. function sendCmd(cmdVal) {
  89. $.get("sendcommand?command=" + cmdVal, function(data) {});
  90. }
  91. </script>
  92. </html>