package efrei.ngo.servlet;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.json.JSONException;
import org.json.JSONObject;
import efrei.ngo.entity.User;
import efrei.ngo.util.DatabaseAccess;
/**
* Servlet implementation class LoginVldtServlet
*/
public class LoginVldtServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
public static int p_id;
/**
* Default constructor.
*/
public LoginVldtServlet() {
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse
* response)
*/
protected void doGet(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse
* response)
*/
protected void doPost(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
String logUNOrEM = request.getParameter("usernameORemail");
String logPassword = request.getParameter("psw");
boolean logIsEmail = request.getParameter("isEmail").equals("true") ? true
: false;
User temp;
JSONObject jObResponse = new JSONObject();
if (logIsEmail) {
temp = new User(logUNOrEM, "");
} else {
temp = new User("", logUNOrEM);
}
DatabaseAccess.connectToDB();
try {
if (temp.validate(logPassword)) {
jObResponse.accumulate("result", true);
} else {
jObResponse.accumulate("result", false);
}
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
DatabaseAccess.endConnectionToDB();
try {
if(jObResponse.getBoolean("result")){
request.getSession().setAttribute("user", temp);
LoginVldtServlet.p_id=((User)request.getSession().getAttribute("user")).getU_id();
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println(jObResponse.toString());
response.getWriter().write(jObResponse.toString());
}
}