package sessionTracking2;

import java.io.*;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import model.Person;


@WebServlet("/testSessions")
public class testSessions extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
 
    public testSessions() {
        super();
      
    }

	
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		
		response.setContentType("text/html)");
		PrintWriter writer = response.getWriter();
		
		HttpSession session = request.getSession();
		
		Person p = (Person)session.getAttribute("person");
		int visitCount = (Integer)session.getAttribute("visits");
		
		if(p == null){
			
			visitCount = 1;
			session.setAttribute("visits", visitCount);
			
			writer.println("<html><head><title> Testing </title></head><body>");
			writer.println("<center>");
			writer.println("<h2> Hmm never see you before...</h2>");
			writer.println("<form action = '' method='post'");
			writer.println("<table border ='5'>");
			writer.println("<tr><td><label>Firstname</label></td><td><input type='text' name='fn'></td></tr>");
			writer.println("<tr><td><label>Lastname</label></td><td><input type='text' name='ln'></td></tr>");
			writer.println("<tr><td><label>Age</label></td><td><input type='text' name='age'></td></tr>");
			writer.println("</table>");
			writer.println("<input type='submit'>");
			writer.println("</center>");
			writer.println("</form>");
			writer.println("</body></html>");
		}
		else
		{
			visitCount += 1;
			session.setAttribute("visits", visitCount);
			session.setAttribute("person", p);
			
			writer.println("<html><head><title> Testing </title></head><body>");
			writer.println("<h2> Welcome back!!! </h2>");
			writer.println("<table border='5'>");
			writer.println("<tr><td> Firstname </td><td> " + p.getFirstName() + "</td></tr>");
			writer.println("<tr><td> Lastname </td><td> " + p.getLastName() + "</td></tr>");
			writer.println("<tr><td> Age </td><td> " + p.getAge() + "</td></tr>");
			writer.println("<tr><td> Visit </td><td>" + visitCount + "</td></tr>");
			writer.println("</body></html>");
			
			
		}
	
		
		
	}

	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		
		HttpSession session = request.getSession();
		
		String ln = request.getParameter("ln");
		String fn = request.getParameter("fn");
		int age = Integer.parseInt(request.getParameter("age"));
		
		Person person = new Person(fn, ln, age);
		session.setAttribute("person", person);

		
		response.setHeader("Refresh", "1");
		
		
		
	}

}
