
package contact;

import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;

import oracle.jdbc.pool.OracleDataSource;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;



public class login extends HttpServlet {
    public void doPost(HttpServletRequest request,
		      HttpServletResponse response)
	throws ServletException, IOException {

	String address="/index.html";
    String loginid = request.getParameter("loginid");
    String password = request.getParameter("password");
    String slogin; // from our database
    String spassword; // from our database
    String slastname;
	String sfirstname;
	String html="";
	int sidnum;
	int slevel;                                                                                                  



	PrintWriter out = response.getWriter();
 



	if ((loginid!=null) && (loginid.length()!=0)) {

	    String dbtime;
	    String dbUrl = "jdbc:mysql://localhost/contact?user=zdouglas&password=cheese";
	    String dbClass = "com.mysql.jdbc.Driver";
	    //String query = "Select * FROM employee where login='"+loginid.trim()+"'";

	    //String connect_string = "jdbc:oracle:thin:cs4500/cs4500@//localhost:1521/orcl.oracle.com";	    
	    String connect_string = "jdbc:oracle:thin:cs4500/cs4500@//localhost:1521/cs4500";
	    
	    
	   // String query = "select login from user_info";
	    String login_query = "select password from user_info where login='" + loginid + "'";
	    
	    
	    
	    // The connection to the database
	    Connection conn=null;
	    
	    try
		{
		    
		    // See if we need to open the connection to the database
		    if (conn == null)
			{
			    // Create a OracleDataSource instance and set URL
			    OracleDataSource ods = new OracleDataSource();
			    ods.setURL(connect_string);
			    
			    // Connect to the databse
			    //out.println("Connecting to " + connect_string + "\n");
			    conn = ods.getConnection ();
			   //out.println("Connected\n");
			}
		    
		    // Create a statement
		    Statement stmt = conn.createStatement ();
		    
		    // Execute the query
		  //  out.println("Executing query " + login_query + "\n");
		    ResultSet rset = stmt.executeQuery (login_query);
		    
		    out.println("<html>");
			out.println("<head>");
			out.println("<title>eWallet Management System</title>");
			out.println("</head>");
			out.println("<body>");
			out.println("<center>");
			out.println("<H1 align='center'>");
			out.println("eWallet Management System</H1><hr>");
		    
		    
		    // Dump the result
		    if (rset.next ()) {
		    	String db_pass = rset.getString(1);
		    	//out.println(db_pass + "\n");
		    	
		    if (rset.getString(1).equals(password)) {
		    	
				
			    
				    
		    	out.println("<APPLET CODE='DemoLoyaltyApplet.class' ARCHIVE='eWallet.jar' WIDTH = 700 HEIGHT = 150 CODEBASE=/applets>");
		 	    out.println("<PARAM NAME=totalCost VALUE =1000>");
		 	    out.println("</APPLET>");
		 	    
		 	   	out.println("<br>");
		 	   out.println("<h4><a href='http://ivorytower.com'>Logout</a></h4>");
				
		    }
		    else{
		    	
				out.println("<h3>An incorrect id/password combination was entered</h3>");
				out.println("<h4><a href='http://ivorytower.com'>Restart Login</a></h4>");
		    }
				
		    }
		    else {
		    	out.println("<h3>An incorrect id/password combination was entered</h3>");
				out.println("<h4><a href='http://ivorytower.com'>Restart Login</a></h4>");
		    }
		    
		    out.println("<br><br>");
		    out.println("<hr><br>");
	 	    out.println("</center>");
	 	    out.println("</body>");
	 	    out.println("</html>");
		    
		    
		}
	    catch (Exception e)
		{
		    e.printStackTrace();
		    // Oops
		    out.println(e.getMessage () + "\n");
		}

	    /*out.println("<OBJECT classid=clsid:8AD9C840-044E-11D1-B3E9-00805F499D93 WIDTH = 700 HEIGHT = 150 codebase=http://java.sun.com/products/plugin/1.3/jinstall-13-win32.cab#Version=1,3,0,0>  ");
		
	    out.println("<PARAM NAME = CODE VALUE=DemoLoyaltyApplet.class >");
	    out.println("<PARAM NAME = ARCHIVE VALUE = ocf.jar>");
	    out.println("<PARAM NAME=type VALUE=application/x-java-applet;version=1.3>");
	    out.println("<PARAM NAME=scriptable VALUE=false>");
	    out.println("<PARAM NAME =totalCost VALUE =1000>");

	    out.println("</OBJECT>");*/
		
	    
	    /*out.println("<APPLET CODE='DemoLoyaltyApplet.class' ARCHIVE='ocf.jar' WIDTH = 700 HEIGHT = 150 CODEBASE=/applets>");
	    out.println("<PARAM NAME=totalCost VALUE =1000>");
	    out.println("</APPLET>");
	    
	    
	    out.println("<br>");
	    out.println("</center>");
	    out.println("</body>");
	    out.println("</html>");*/
	    //try {
		/*
		Class.forName("com.mysql.jdbc.Driver");
		Connection con = DriverManager.getConnection (dbUrl);
		Statement stmt = con.createStatement();
		ResultSet rs = stmt.executeQuery(query);
		while (rs.next()) {
		    slogin = rs.getString("login");
		    out.println(slogin);
		    spassword = rs.getString("password");
		    if (password.compareTo(spassword)!=0) {
			out.println("INVALID PASSWORD");
		    }
		    else {
			empbean bean = new empbean();
			genbean rawhtml = new genbean();
			bean.setLogin(slogin);
			slastname = rs.getString("lastname");
			bean.setLastname(slastname);
			out.print(slastname);
			out.print(", ");
			sfirstname = rs.getString("firstname");
			bean.setFirstname(sfirstname);
			sidnum = rs.getInt("id");
			bean.setIdnum(sidnum);
			slevel = rs.getInt("level");
			bean.setLevel(slevel);
			out.println(sfirstname);
			address = "/WEB-INF/main.jsp";
			HttpSession session = request.getSession();
			session.setAttribute("empdata",bean);
			topfivebean top5bean = new topfivebean();
			request.setAttribute("top5bean", top5bean);
		    
		


			html = html+"<b>Quick Notes!</b><br><table width=\"100%\"><tr><td width=\"50%\"></td></tr>";

			query="select notes.id, note, timestamp, firstname from notes,employee where notes.employeeid=employee.id and companyid=0 and contactid=0 order by id desc;";
			rs=stmt.executeQuery(query);
			html=html+"<table cellspacing=\"0\" border=\"1\" width=\"100%\" cellpadding=\"3\"><tr><td>Entered By</td><td>Date</td><td>Note</td></tr>";
			while(rs.next()) {
			    html=html+"<tr><td>"+rs.getString("firstname")+"</td><td>"+rs.getString("timestamp")+"</td><td>"+rs.getString("note")+"</td></tr>";
			}
			html=html+"</table>";
			rawhtml.setRawdata(html);
			request.setAttribute("gendata", rawhtml);
			con.close();
			
		
		    }
		}
		RequestDispatcher dispatcher = request.getRequestDispatcher(address);
		dispatcher.forward(request, response);
		*/
	    //}
	    //catch(ClassNotFoundException e) {
	    //	e.printStackTrace();
	    //}
	    //catch(SQLException e) {
	    //	e.printStackTrace();
	    //}
	}
	else {
		
		out.println("<html>");
		out.println("<head>");
		out.println("<title>eWallet Management System</title>");
		out.println("</head>");
		out.println("<body>");
		out.println("<center>");
		out.println("<H1 align='center'>");
		out.println("eWallet Management System</H1><hr>");
		
		out.println("<h3>An incorrect id/password combination was entered</h3>");
		out.println("<h4><a href='http://ivorytower.com'>Restart Login</a></h4>");
		out.println("<br><br>");
	    out.println("<hr><br>");
 	    out.println("</center>");
 	    out.println("</body>");
 	    out.println("</html>");
	}
    }
    
    
}
