proccess.java 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111
  1. /* This is the proccessing page of the captive portal.
  2. * Copy right: Deben Oldert
  3. * Here classes are called to check and update database query's and to configure iptables.
  4. * Called classe are: {Database, Command}
  5. */
  6. package captiveportal;
  7. import java.io.IOException;
  8. import java.io.PrintWriter;
  9. import javax.servlet.ServletException;
  10. import javax.servlet.annotation.WebServlet;
  11. import javax.servlet.http.HttpServlet;
  12. import javax.servlet.http.HttpServletRequest;
  13. import javax.servlet.http.HttpServletResponse;
  14. /**
  15. * Servlet implementation class proccess
  16. */
  17. @WebServlet("/proccess")
  18. public class proccess extends HttpServlet {
  19. private static final long serialVersionUID = 1L;
  20. /**
  21. * @see HttpServlet#HttpServlet()
  22. */
  23. public proccess() {
  24. super();
  25. // TODO Auto-generated constructor stub
  26. }
  27. /**
  28. * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
  29. */
  30. protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  31. // Set the MIME type for the page
  32. response.setContentType("text/html");
  33. PrintWriter out = response.getWriter();
  34. // Send user back to login form
  35. try {
  36. out.println("<script>window.location.replace('http://corendon.nl/Captive%20Portal');</script>");
  37. } finally {
  38. out.close(); // Close the output writer
  39. }
  40. }
  41. /**
  42. * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
  43. */
  44. protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  45. // Set the MIME type for the page
  46. response.setContentType("text/html");
  47. // Define variables
  48. //#####################################
  49. String ticket = request.getParameter("ticket");
  50. String lastName = request.getParameter("lastname");
  51. int exitCode = 1;
  52. String javaReturn0 = "<script>setTimeout(function(){window.location.replace('http://corendon.nl')},10000);</script>";
  53. String javaReturnErrorS = "<script>window.location.replace('http://corendon.nl/Captive_Portal/?err=";
  54. String javaReturnErrorE = "');</script>";
  55. //#####################################
  56. PrintWriter out = response.getWriter();
  57. Database SQL = new Database();
  58. Command CMD = new Command();
  59. try {
  60. if(SQL.Select(ticket, lastName)) {
  61. if(SQL.Update(ticket, lastName)) {
  62. if(CMD.Grand(request.getRemoteAddr())) {
  63. exitCode = 0;
  64. }
  65. else {
  66. if(SQL.Reset(ticket, lastName)) {
  67. exitCode = 2;
  68. }
  69. else {
  70. exitCode = 3;
  71. }
  72. }
  73. }
  74. else {
  75. exitCode = 2;
  76. }
  77. }
  78. else {
  79. exitCode = 1;
  80. }
  81. } catch (Exception e) {
  82. e.printStackTrace();
  83. exitCode = 4;
  84. }
  85. switch (exitCode) {
  86. case 0:
  87. out.println(javaReturn0);
  88. break;
  89. case 1:
  90. out.println(javaReturnErrorS+exitCode+javaReturnErrorE);
  91. break;
  92. case 2:
  93. out.println(javaReturnErrorS+exitCode+javaReturnErrorE);
  94. break;
  95. case 3:
  96. out.println(javaReturnErrorS+exitCode+javaReturnErrorE);
  97. break;
  98. case 4:
  99. out.println(javaReturnErrorS+exitCode+javaReturnErrorE);
  100. break;
  101. }
  102. }
  103. }