import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import beans.AccountDB;
import beans.ColorDB;

public class Login extends HttpServlet {
  @Override
  protected void doPost(HttpServletRequest request, HttpServletResponse response) 
  throws ServletException, IOException {
    request.setCharacterEncoding("Windows-31J");
    String account = request.getParameter("account");
    String passwd  = request.getParameter("passwd");
    String tmp;
    HashMap<String, String> accounts = AccountDB.getAccounts();// DB情報の読み込み
    HashMap<String, Integer> colors = ColorDB.getColors();
    
    if (account!=null && passwd!=null && 
        (tmp=accounts.get(account))!=null && tmp.equals(passwd)) {
      // ログインに成功した。      
      HttpSession session = request.getSession();
      session.setAttribute("account", account);
      session.setAttribute("colors", colors);
      session.setAttribute("cart", new ArrayList<String>()); // 買い物カートを用意
      response.sendRedirect(response.encodeRedirectURL("jsp/secret/ItemList.jsp")); // 商品一覧を表示
    } else {
      response.sendRedirect(response.encodeRedirectURL("jsp/LoginFailed.jsp"));    // エラーページを表示
    }   
  }
}
