import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import cart.*;

public class CashierServlet extends HttpServlet { 

    public void doGet (HttpServletRequest request,
                       HttpServletResponse response)
	throws ServletException, IOException
    {
        // Get the user's session and shopping cart
        HttpSession session = request.getSession(true);
        ShoppingCart cart =
            (ShoppingCart)session.getValue(session.getId());
        
        // If the user has no cart, create a new one
        if (cart == null) {
            cart = new ShoppingCart();
            session.putValue(session.getId(), cart);
	}

	// set content-type header before accessing Writer
        response.setContentType("text/html");
	PrintWriter out = response.getWriter();

	// then write the data of the response
        out.println("<html>" +
                    "<head><title> Payment </title></head>" +

                    "<body  bgcolor=\"#fffed0\">" +
                    "<center>" +
                    "<h3>" +
                    "<font color=#ff0000>Payment</font>" +
                    "</h3>" +
                    "</center>" +
                    "<hr> <br> &nbsp;");

        // Determine the total price of the user's books
        Cashier cashier = new Cashier(cart);
	double total = cashier.getTotal();

        // Print out the total and the form for the user
        out.println("<p>Purchase Amount : " +
                    "<strong>" + cashier.format(total) + "</strong>" +
                    "<p>To confirm the purchase, fill the following information" +
                    "<form action=\"" +
                    response.encodeUrl("/servlet/receipt") +
                    "\" method=\"post\">" +

                    "<table>" +
                    "<tr>" +
                    "<td><strong>Name:</strong></td>" +
                    "<td><input type=\"text\" name=\"cardname\"" +
                    "value=\"\" size=\"19\"></td>" +
                    "</tr>" +

                    "<tr>" +
                    "<td><strong>Credit Card Number:</strong></td>" +
                    "<td>" +
                    "<input type=\"text\" name=\"cardnum\" " +
                    "value=\"\" size=\"19\"></td>" +
                    "</tr>" +

                    "<tr>" +
                    "<td></td>" +
                    "<td><input type=\"submit\"" +
                    "value=\"Go !!\"></td>" +
                    "</tr>" +

                    "</table>" +
                    "</form>" +
                    "</body>" +
                    "</html>");
        out.close();
    }

    public String getServletInfo() {
        return "The Cashier servlet takes the user's name and " +
               "credit-card number so that the user can buy the books.";

    }
}
