import javax.servlet.*;
import javax.servlet.http.*;
import java.sql.*;

public class Signup extends HttpServlet
{
	Connection con = null;
	Statement st,st1,st2;
	ResultSet rs,rs1;
	PreparedStatement ps;
	private ServletOutputStream sos;
	private String s1,s2,s3,s4,s5,s6,s7,s8,s9,s10,s11,s12;
	int fc=0;

	public void init(ServletConfig sc) 
	{
		try
		{
			Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
		}
		catch(Exception e)
		{
			e.printStackTrace();
		}
	}

	public void doGet(HttpServletRequest req,HttpServletResponse res)
	{
		doPost(req,res);
	}
	public void doPost(HttpServletRequest req,HttpServletResponse res)
	{
		try
		{
			con = DriverManager.getConnection("jdbc:odbc:globalleafs","user","password");
			st = con.createStatement();
			
			sos = res.getOutputStream();

			s1 = req.getParameter("T1");
			s2 = req.getParameter("T2");
			s3 = req.getParameter("T3");
			s4 = req.getParameter("T4");
			s5 = req.getParameter("T5");
			s6 = req.getParameter("T6");
			s7 = req.getParameter("T7");
			s8 = req.getParameter("T8");
			s9 = req.getParameter("T9");
			s10 = req.getParameter("T10");
			s11 = req.getParameter("T11");
		
			 st2=con.createStatement();
    		 rs1=st2.executeQuery("select max(slno)+1 from Register");

			 if(rs1.next())
			 {
				 fc=rs1.getInt(1);
			 }
			 //st2.close();
			 //rs1.close();

			rs = st.executeQuery("select * from Register where username='"+s9+"' ");
			sos.println("<html><head>");
			sos.println("<title>Globalleafs- SignUp</title>");
			sos.println("</head>"); 
			sos.println("<body bgcolor=lightyellow>");

			if(rs.next())
			{
				sos.println("<h4><font color=red>Sorry the user already exists</font></h4>");
				printContent();
			}

			else if(s10 == null || s11 == null || !(s10.equals(s11)))
			{
				sos.println("<h4><font color=red>Please type both the passwords same</font></h4>");
				printContent();
			}

			else
			{

					//sos.println("insert into Register values("+fc+",'"+s1+"','"+s2+"','"+s3+"','"+s4+"','"+s5+"',"+s6+","+s7+",'"+s8+"','"+s9+"','"+s10+"','"+s11+"')");
					int x = st.executeUpdate("insert into Register values("+fc+",'"+s1+"','"+s2+"','"+s3+"','"+s4+"','"+s5+"',"+s6+","+s7+",'"+s8+"','"+s9+"','"+s10+"','"+s11+"')");
					//sos.println("<html><body bgcolor=lightyellow>");
					sos.println("<center><b>Registered Successfully</b></center>");
					sos.println("<form name=login action='http://202.71.136.142:8080/globalleafs/servlet/Login' method='post'>");
					sos.println("<table><tr><td>UserId</td><td><input type=text name=userid size=15></td></tr>");
					sos.println("<tr><td>Password</td><td><input type=password name=pass size=15></td></tr></table>");
					sos.println("<input type=submit value='Login' name=login>&nbsp;<input type=reset value='Reset' name=reset>");
					sos.println("</form>");

			}
			//sos.println("</form>");
			
			sos.println("</body></html>");
			st.close();
				//sos.println("st is closed");
			//con.close();
			rs.close();
					//sos.println(" rs is closed");
		}
		catch(Exception e)
		{
			//System.out.println(e);
			e.printStackTrace();
			try{
				res.sendRedirect("http://www.globalleafs.com/Error.html");
			}catch(Exception ex){ex.printStackTrace();}
		}
	}

	public void printContent() throws java.io.IOException
	{
		sos.println("<html><head>");
		sos.println("<title>Globalleafs- SignUp</title>");
		sos.println("<script language=javascript>");
				sos.println("function afunction()");
				sos.println("{");
					sos.println("var a;");
					sos.println("a= document.signup1.T1.value;");
					sos.println("if(a.length == 0)");
					sos.println("{");
						sos.println("alert('First Name cannot be null,Please fill in this field')");
						sos.println("document.signup1.T1.focus();");
						sos.println("return false;");
					sos.println("}");
					sos.println("a = document.signup1.T2.value;");
					sos.println("if(a.length==0)");
					sos.println("{");
						sos.println("alert('Last Name cannot be null,Please fill in this field')");
						sos.println("document.signup1.T2.focus();");
						sos.println("return false;");
					sos.println("}");
					sos.println("a = document.signup1.T3.value;");
					sos.println("if(a.length==0)");
					sos.println("{");
						sos.println("alert('Address cannot be null,Please fill in this field')");
						sos.println("document.signup1.T3.focus();");
						sos.println("return false;");
					sos.println("}");
					sos.println("a = document.signup1.T4.value;");
					sos.println("if(a.length==0)");
					sos.println("{");
						sos.println("alert('State cannot be null,Please fill in this field')");
						sos.println("document.signup1.T4.focus();");
						sos.println("return false;");
					sos.println("}");
					sos.println("a = document.signup1.T5.value;");
					sos.println("if(a.length==0)");
					sos.println("{");
						sos.println("alert('Country cannot be null,Please fill in this field')");
						sos.println("document.signup1.T5.focus();");
						sos.println("return false;");
					sos.println("}");
					sos.println("a = document.signup1.T6.value;");
					sos.println("if((a.length==0) || (isNaN(a)==true))");
					sos.println("{");
								sos.println("if(a.length == 0)");
								sos.println("{");
												sos.println("alert('Pincode cannot be null,Please fill in this field')");
												sos.println("document.signup1.T6.focus();");
								sos.println("}");
								sos.println("else");
								sos.println("{");
											sos.println("alert('Pincode should be numeric and cannot contain specail characters or spaces')");
											sos.println("document.signup1.T6.focus();");
								sos.println("}");
						sos.println("return false;");
					sos.println("}");
					sos.println("else if(a.length>0)");
					sos.println("{");
						sos.println("len = a.length;");
						sos.println("var atrate=0;");
						sos.println("for(var i=0;i<len;i++)");
							sos.println("{");
								sos.println("if(a.charAt(i)==' ')");
									sos.println("atrate++;");
							sos.println("}");
							sos.println("if(!(atrate == 0))");
							sos.println("{");
								sos.println("alert('Pincode should not contain spaces or special characters like commas');");
								sos.println("document.signup.T6.focus();");
								sos.println("return false;");
							sos.println("}");
					sos.println("}");

					sos.println("a = document.signup1.T7.value;");
					sos.println("if((a.length==0) || (isNaN(a)==true))");
					sos.println("{");
								sos.println("if(a.length==0)");
								sos.println("{");
												sos.println("alert('Phone Number cannot be null,Please fill in this field')");
												sos.println("document.signup1.T7.focus();");
								sos.println("}");
								sos.println("else");
								sos.println("{");
												sos.println("alert('Phone Number should be numeric and cannot contain special characters or spaces')");
												sos.println("document.signup1.T7.focus();");
								sos.println("}");
						sos.println("return false;");
					sos.println("}");
					sos.println("else if(a.length>0)");
					sos.println("{");
						sos.println("len = a.length;");
						sos.println("var atrate=0;");
						sos.println("for(var i=0;i<len;i++)");
							sos.println("{");
								sos.println("if(a.charAt(i)==' ')");
									sos.println("atrate++;");
							sos.println("}");
							sos.println("if(!(atrate == 0))");
							sos.println("{");
								sos.println("alert('Phone number should not contain spaces or special characters like commas');");
								sos.println("document.signup.T7.focus();");
								sos.println("return false;");
							sos.println("}");
					sos.println("}");

					sos.println("a = document.signup1.T8.value;");
					sos.println("if(a.length==0)");
					sos.println("{");
						sos.println("alert('Email Address is required,Please fill in this field')");
						sos.println("document.signup1.T8.focus();");
						sos.println("return false;");
					sos.println("}");
					sos.println("else if(a.length>0)");
					sos.println("{");
									sos.println("len = a.length;");
									sos.println("var atrate=0,dot=0;");
									sos.println("for(var i=0;i<len;i++)");
									sos.println("{");
													sos.println("if(a.charAt(i)=='@')");
														sos.println("atrate++;");
													sos.println("else if(a.charAt(i)=='.')");
														sos.println("dot++;");
									sos.println("}");
									sos.println("if(!(atrate == 1 & dot > 0))");
									sos.println("{");
													sos.println("alert('Email address seems to be invalid');");
													sos.println("document.signup.T8.focus();");
													sos.println("return false;");
									sos.println("}");
					sos.println("}");
					sos.println("a = document.signup1.T9.value;");
					sos.println("if(a.length==0)");
					sos.println("{");
						sos.println("alert('User ID is required,Please fill in this field')");
						sos.println("document.signup1.T9.focus();");
						sos.println("return false;");
					sos.println("}");
					sos.println("else if(a.length>0)");
					sos.println("{");
									sos.println("len = a.length;");
									sos.println("var atrate=0;");
									sos.println("for(var i=0;i<len;i++)");
									sos.println("{");
													sos.println("if(a.charAt(i)==' ')");
													sos.println("atrate++;");
									sos.println("}");
									sos.println("if(!(atrate == 0))");
									sos.println("{");
												sos.println("alert('No spaces allowed in User ID please');");
												sos.println("document.signup.T9.focus();");
												sos.println("return false;");
									sos.println("}");
					sos.println("}");
					sos.println("a = document.signup1.T10.value;");
					sos.println("if(a.length==0)");
					sos.println("{");
						sos.println("alert('Password cannot be null,Please fill in this field')");
						sos.println("document.signup1.T10.focus();");
						sos.println("return false;");
					sos.println("}");
					sos.println("a = document.signup1.T11.value;");
					sos.println("if(a.length==0)");
					sos.println("{");
						sos.println("alert('Confirm password cannot be null,Please fill in this field')");
						sos.println("document.signup1.T11.focus();");
						sos.println("return false;");
					sos.println("}");
					sos.println("return true;");
				sos.println("}");
				sos.println("</script></head><body bgcolor=lightyellow onload='document.signup1.T1.focus();'>");
			
			sos.println("<p align='center'><b>Globalleafs.com Sign-Up Page</b></p>");

			sos.println("<form name=signup1 action='http://202.71.136.142:8080/globalleafs/servlet/Signup' onsubmit='return afunction()'>");
			sos.println("<center>");
			sos.println("<table>");
			  sos.println("<tr>");
				sos.println("<td>First Name:</td>");
				sos.println("<td><input type='text' name='T1' size='20' value="+s1+" maxLength=20></td>");
			  sos.println("</tr>");

			  sos.println("<tr>");
				sos.println("<td>Last Name:</td>");
				sos.println("<td><input type='text' name='T2' size='20' value="+s2+" maxLength=20></td>");
			  sos.println("</tr>");

			  sos.println("<tr>");
				sos.println("<td>Address:</td>");
				sos.println("<td><input type='text' name='T3' size='20' value="+s3+" maxLength=45></td>");
			  sos.println("</tr>");
			  
			  sos.println("<tr>");
				sos.println("<td>State:</td>");
				sos.println("<td><input type='text' name='T4' size='20' value="+s4+" maxLength=20></td>");
			  sos.println("</tr>");
			  
			  sos.println("<tr>");
				sos.println("<td>Country:</td>");
				sos.println("<td><input type='text' name='T5' size='20' value="+s5+" maxLength=20></td>");
			  sos.println("</tr>");
			  
			  sos.println("<tr>");
				sos.println("<td>Pin Code:</td>");
				sos.println("<td><input type='text' name='T6' size='20' value="+s6+" maxLength=9></td>");
			  sos.println("</tr>");
			  
			  sos.println("<tr>");
				sos.println("<td>Phone No.:</td>");
				sos.println("<td><input type='text' name='T7' size='20' value="+s7+" maxLength=10></td>");
			  sos.println("</tr>");
			  
			  sos.println("<tr>");
				sos.println("<td>E-Mail:</td>");
				sos.println("<td><input type='text' name='T8' size='20' value="+s8+" maxLength=40></td>");
			  sos.println("</tr>");
			  
			  sos.println("<tr>");
				sos.println("<td>User Name:</td>");
				sos.println("<td><input type='text' name='T9' size='20' value="+s9+" maxLength=15></td>");
			  sos.println("</tr>");
			  
			  sos.println("<tr>");
				sos.println("<td>Password:</td>");
				sos.println("<td><input type='password' name='T10' size='20' value="+s10+" maxLength=10></td>");
			  sos.println("</tr>");
			  
			  sos.println("<tr>");
				sos.println("<td>Confirm Password:</td>");
				sos.println("<td><input type='password' name='T11' size='20' value="+s11+" maxLength=10></td>");
			  sos.println("</tr>");
			  
			  sos.println("</table><br>");
			  sos.println("<input type=submit value='SignUp' name=signup size=15>");
				sos.println("&nbsp;&nbsp;&nbsp;");
			  sos.println("<input type=reset value='Reset' name=reset size=15>");
			  sos.println("</center>");
			  sos.println("</form>");

  			sos.println("<center><img src='www.globalleafs.com/images/blurulr6.gif' name='ruler' width=600 height=1 border=0></center>");
			sos.println("</b><p align='center'>© 2002 www.globalleafs.com All Rights reserved </p>");
			sos.println("<p align=center>The use of this Web site constitutes acceptance of globalleafs.com's<br>");
			sos.println("<A href='www.globalleafs.com/Terms.html' target='_new'>Terms and Conditions</A>");
			sos.println("and <A href='www.globalleafs.com/Privacy.html' target='_new'>Privacy Policy</A>"); 
			sos.println("<br></p>");

			sos.println("</body></html>");

	}
	//sos.println("</body></html>");
}

