status.html 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. <div id="serverstatus" class="ui message">
  2. <h3 class="ui header">
  3. <i class="exchange icon"></i>
  4. <div class="content">
  5. <span id="statusTitle">Offline</span>
  6. <div class="sub header" id="statusText">Reverse proxy server is offline</div>
  7. </div>
  8. </h3>
  9. </div>
  10. <div class="ui divider"></div>
  11. <p>Inbound Port (Port to be proxied)</p>
  12. <div class="ui action fluid input">
  13. <input type="text" id="incomingPort" placeholder="Incoming Port" value="80">
  14. <button class="ui button" onclick="handlePortChange();">Apply</button>
  15. </div>
  16. <Br>
  17. <button id="startbtn" class="ui teal button" onclick="startService();">Start Service</button>
  18. <button id="stopbtn" class="ui red disabled button" onclick="stopService();">Stop Service</button>
  19. <script>
  20. //Get the latest server status from proxy server
  21. function initRPStaste(){
  22. $.get("status", function(data){
  23. if (data.Running == true){
  24. $("#startbtn").addClass("disabled");
  25. $("#stopbtn").removeClass("disabled");
  26. $("#serverstatus").addClass("green");
  27. $("#statusTitle").text("Online");
  28. $("#statusText").text("Reverse proxying request on port: " + data.ListenPort);
  29. }else{
  30. $("#startbtn").removeClass("disabled");
  31. $("#stopbtn").addClass("disabled");
  32. $("#statusTitle").text("Offline");
  33. $("#statusText").text("Reverse proxy server is offline");
  34. $("#serverstatus").removeClass("green");
  35. }
  36. $("#incomingPort").val(data.ListenPort);
  37. });
  38. }
  39. //Start and stop service button
  40. function startService(){
  41. $.post("enable", {enable: true}, function(data){
  42. if (data.error != undefined){
  43. errmsg(data.error);
  44. }
  45. initRPStaste();
  46. });
  47. }
  48. function stopService(){
  49. $.post("enable", {enable: false}, function(data){
  50. if (data.error != undefined){
  51. errmsg(data.error);
  52. }
  53. initRPStaste();
  54. });
  55. }
  56. function handlePortChange(){
  57. var newPortValue = $("#incomingPort").val();
  58. if (isNaN(newPortValue - 1)){
  59. alert("Invalid incoming port value");
  60. return;
  61. }
  62. $.post("setIncoming", {incoming: newPortValue}, function(data){
  63. if (data.error != undefined){
  64. errmsg(data.error);
  65. }
  66. initRPStaste();
  67. });
  68. }
  69. </script>