diff --git a/build/web/WEB-INF/classes/api/login.class b/build/web/WEB-INF/classes/api/login.class index 90b68f0..da13a86 100644 Binary files a/build/web/WEB-INF/classes/api/login.class and b/build/web/WEB-INF/classes/api/login.class differ diff --git a/build/web/WEB-INF/web.xml b/build/web/WEB-INF/web.xml index c3474b3..74ecf68 100644 --- a/build/web/WEB-INF/web.xml +++ b/build/web/WEB-INF/web.xml @@ -40,6 +40,26 @@ Cleaner api.Cleaner + + forgotPassword + api.forgotPassword + + + newPassword + api.newPassword + + + ValidateOtp + api.ValidateOtp + + + Order + api.Placeorder + + + GetOrders + api.GetOrders + login /login @@ -80,6 +100,26 @@ Cleaner /Cleaner + + forgotPassword + /forgotPassword + + + newPassword + /newPassword + + + ValidateOtp + /ValidateOtp + + + Order + /Order + + + GetOrders + /GetOrders + 30 diff --git a/nbproject/build-impl.xml b/nbproject/build-impl.xml index 013db96..3a78fb3 100644 --- a/nbproject/build-impl.xml +++ b/nbproject/build-impl.xml @@ -997,12 +997,12 @@ exists or setup the property manually. For example like this: - + - + diff --git a/nbproject/genfiles.properties b/nbproject/genfiles.properties index af2a5a4..0f48ade 100644 --- a/nbproject/genfiles.properties +++ b/nbproject/genfiles.properties @@ -1,8 +1,8 @@ -build.xml.data.CRC32=813275bf +build.xml.data.CRC32=bfbab6f6 build.xml.script.CRC32=c9fb87af build.xml.stylesheet.CRC32=651128d4@1.77.1.1 # This file is used by a NetBeans-based IDE to track changes in generated files such as build-impl.xml. # Do not edit this file. You may delete it but then the IDE will never regenerate such files for you. -nbproject/build-impl.xml.data.CRC32=813275bf -nbproject/build-impl.xml.script.CRC32=1ab758c4 +nbproject/build-impl.xml.data.CRC32=bfbab6f6 +nbproject/build-impl.xml.script.CRC32=10877d67 nbproject/build-impl.xml.stylesheet.CRC32=99ea4b56@1.77.1.1 diff --git a/nbproject/private/private.properties b/nbproject/private/private.properties index 9bc80af..f3d0625 100644 --- a/nbproject/private/private.properties +++ b/nbproject/private/private.properties @@ -4,4 +4,7 @@ j2ee.server.domain=C:/Users/subha/AppData/Roaming/NetBeans/8.2/config/GF_4.1.1/d j2ee.server.home=C:/Program Files/glassfish-4.1.1/glassfish j2ee.server.instance=[C:\\Program Files\\glassfish-4.1.1\\glassfish;C:\\Program Files\\glassfish-4.1.1\\glassfish\\domains\\domain1]deployer:gfv3ee6wc:localhost:4848 j2ee.server.middleware=C:/Program Files/glassfish-4.1.1 +javac.debug=true +javadoc.preview=true +selected.browser=default user.properties.file=C:\\Users\\subha\\AppData\\Roaming\\NetBeans\\8.2\\build.properties diff --git a/nbproject/project.properties b/nbproject/project.properties index 5e6e70c..41d0ca7 100644 --- a/nbproject/project.properties +++ b/nbproject/project.properties @@ -29,7 +29,7 @@ dist.war=${dist.dir}/${war.name} endorsed.classpath=\ ${libs.javaee-endorsed-api-7.0.classpath} excludes= -file.reference.ojdbc14.jar=../../../../../oracle/product/10.2.0/db_1/jdbc/lib/ojdbc14.jar +file.reference.ojdbc14.jar-1=..\\..\\..\\..\\..\\oracle\\product\\10.2.0\\db_1\\jdbc\\lib\\ojdbc14.jar includes=** j2ee.compile.on.save=true j2ee.copy.static.files.on.save=true @@ -44,7 +44,7 @@ j2ee.platform.wsit.classpath= j2ee.server.type=gfv3ee6 jar.compress=false javac.classpath=\ - ${file.reference.ojdbc14.jar} + ${file.reference.ojdbc14.jar-1} # Space-separated list of extra javac options javac.compilerargs= javac.debug=true diff --git a/nbproject/project.xml b/nbproject/project.xml index 34d9501..d629b72 100644 --- a/nbproject/project.xml +++ b/nbproject/project.xml @@ -7,7 +7,7 @@ 1.6.5 - ${file.reference.ojdbc14.jar} + ${file.reference.ojdbc14.jar-1} WEB-INF/lib diff --git a/src/java/api/GetOrders.java b/src/java/api/GetOrders.java new file mode 100644 index 0000000..5df942d --- /dev/null +++ b/src/java/api/GetOrders.java @@ -0,0 +1,86 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ +package api; + +import java.io.IOException; +import java.io.PrintWriter; +import javax.servlet.ServletException; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +/** + * + * @author subha + */ +public class GetOrders extends HttpServlet { + + /** + * Processes requests for both HTTP GET and POST + * methods. + * + * @param request servlet request + * @param response servlet response + * @throws ServletException if a servlet-specific error occurs + * @throws IOException if an I/O error occurs + */ + protected void processRequest(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException { + response.setContentType("text/html;charset=UTF-8"); + try (PrintWriter out = response.getWriter()) { + /* TODO output your page here. You may use following sample code. */ + out.println(""); + out.println(""); + out.println(""); + out.println("Servlet GetOrders"); + out.println(""); + out.println(""); + out.println("

Servlet GetOrders at " + request.getContextPath() + "

"); + out.println(""); + out.println(""); + } + } + + // + /** + * Handles the HTTP GET method. + * + * @param request servlet request + * @param response servlet response + * @throws ServletException if a servlet-specific error occurs + * @throws IOException if an I/O error occurs + */ + @Override + protected void doGet(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException { + processRequest(request, response); + } + + /** + * Handles the HTTP POST method. + * + * @param request servlet request + * @param response servlet response + * @throws ServletException if a servlet-specific error occurs + * @throws IOException if an I/O error occurs + */ + @Override + protected void doPost(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException { + processRequest(request, response); + } + + /** + * Returns a short description of the servlet. + * + * @return a String containing servlet description + */ + @Override + public String getServletInfo() { + return "Short description"; + }// + +} diff --git a/src/java/api/Placeorder.java b/src/java/api/Placeorder.java new file mode 100644 index 0000000..156613d --- /dev/null +++ b/src/java/api/Placeorder.java @@ -0,0 +1,137 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ +package api; + +import java.io.IOException; +import java.io.PrintWriter; +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.PreparedStatement; +import java.sql.SQLException; +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 oracle.jdbc.OracleConnection; +import oracle.jdbc.OraclePreparedStatement; + +/** + * + * @author subha + */ +public class Placeorder extends HttpServlet { + + /** + * Processes requests for both HTTP GET and POST + * methods. + * + * @param request servlet request + * @param response servlet response + * @throws ServletException if a servlet-specific error occurs + * @throws IOException if an I/O error occurs + */ + protected void processRequest(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException { + response.setContentType("text/html;charset=UTF-8"); + try (PrintWriter out = response.getWriter()) { + /* TODO output your page here. You may use following sample code. */ + out.println(""); + out.println(""); + out.println(""); + out.println("Servlet Order"); + out.println(""); + out.println(""); + out.println("

Servlet Order at " + request.getContextPath() + "

"); + out.println(""); + out.println(""); + } + } + + // + /** + * Handles the HTTP GET method. + * + * @param request servlet request + * @param response servlet response + * @throws ServletException if a servlet-specific error occurs + * @throws IOException if an I/O error occurs + */ + @Override + protected void doGet(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException { + response.setContentType("text/html"); + + String htmlFilePath = "/html/order/index.jsp"; + request.getRequestDispatcher(htmlFilePath).forward(request, response); + } + + /** + * Handles the HTTP POST method. + * + * @param request servlet request + * @param response servlet response + * @throws ServletException if a servlet-specific error occurs + * @throws IOException if an I/O error occurs + */ + @Override + protected void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException { + Connection conn = null; + response.setContentType("text/html"); + + String[] allField = new String[] {"orderId","userEmail","userPhone","userAddress","service","totalAmount","orderDate","serviceDate","serviceTime","totalOrder"}; + try { + DriverManager.registerDriver(new oracle.jdbc.OracleDriver()); + +// conn = (OracleConnection)DriverManager.getConnection("jdbc:oracle:thin:@DESKTOP-1B6LLCK:1521:orcl","soumadri","biswas"); + conn = (OracleConnection)DriverManager.getConnection("jdbc:oracle:thin:@Subhajit_Ghosh:1521:orcl","subhajit","ghosh"); + + String query = "INSERT INTO USER_ORDER VALUES(?,?,?,?,?,?,?,?,?,?)"; + PreparedStatement ost =(OraclePreparedStatement) conn.prepareStatement(query); + int tableField = 1; + int i = 0; + while(tableField <= 10 && i <= allField.length-1){ + ost.setString(tableField, request.getParameter(allField[i])); + + i++; + tableField++; + } + int rs = ost.executeUpdate(); + System.out.println(rs); + + if(rs > 0){ + int x = 0; + while(x <= allField.length-1){ + request.setAttribute(allField[x], request.getParameter(allField[x])); + + x++; + } + + request.setAttribute("orderId",request.getParameter("orderId")); + + request.getRequestDispatcher("/html/order/OrderSuccessPage.jsp").forward(request, response); + }else{ + request.setAttribute("Failed","Failed to Insert..."); + request.getRequestDispatcher("/html/order/OrderFailPage.jsp").forward(request, response); + } +// + } catch (SQLException e) { + request.setAttribute("Failed","Something Went Wrong"); + request.getRequestDispatcher("/html/order/OrderFailPage.jsp").forward(request, response); + } + } + + /** + * Returns a short description of the servlet. + * + * @return a String containing servlet description + */ + @Override + public String getServletInfo() { + return "Short description"; + }// + +} diff --git a/src/java/api/Resultset.java b/src/java/api/Resultset.java new file mode 100644 index 0000000..8c85e28 --- /dev/null +++ b/src/java/api/Resultset.java @@ -0,0 +1,14 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ +package api; + +/** + * + * @author subha + */ +class Resultset { + +} diff --git a/src/java/api/ValidateOtp.java b/src/java/api/ValidateOtp.java new file mode 100644 index 0000000..5c0a2ef --- /dev/null +++ b/src/java/api/ValidateOtp.java @@ -0,0 +1,116 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ +package api; + +import java.io.IOException; +import java.io.PrintWriter; +import javax.servlet.RequestDispatcher; +import javax.servlet.ServletException; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import javax.servlet.http.HttpSession; + +/** + * + * @author SOUMADRI + */ +public class ValidateOtp extends HttpServlet { + + /** + * Processes requests for both HTTP GET and POST + * methods. + * + * @param request servlet request + * @param response servlet response + * @throws ServletException if a servlet-specific error occurs + * @throws IOException if an I/O error occurs + */ + protected void processRequest(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException { + response.setContentType("text/html;charset=UTF-8"); + try (PrintWriter out = response.getWriter()) { + /* TODO output your page here. You may use following sample code. */ + out.println(""); + out.println(""); + out.println(""); + out.println("Servlet ValidateOtp"); + out.println(""); + out.println(""); + out.println("

Servlet ValidateOtp at " + request.getContextPath() + "

"); + out.println(""); + out.println(""); + } + } + + // + /** + * Handles the HTTP GET method. + * + * @param request servlet request + * @param response servlet response + * @throws ServletException if a servlet-specific error occurs + * @throws IOException if an I/O error occurs + */ + @Override + protected void doGet(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException { + String htmlFilePath = "/html/auth/EnterOtp.jsp"; + processRequest(request, response); + } + + /** + * Handles the HTTP POST method. + * + * @param request servlet request + * @param response servlet response + * @throws ServletException if a servlet-specific error occurs + * @throws IOException if an I/O error occurs + */ + @Override + protected void doPost(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException { + int value=Integer.parseInt(request.getParameter("otp")); + HttpSession session=request.getSession(); + int otp=(int)session.getAttribute("otp"); + + + + RequestDispatcher dispatcher=null; + + + if (value==otp) + { + + request.setAttribute("email", request.getParameter("email")); + request.setAttribute("status", "success"); + dispatcher=request.getRequestDispatcher("/html/auth/newPassword.jsp"); + dispatcher.forward(request, response); + + } + else + { + request.setAttribute("message","wrong otp"); + + dispatcher=request.getRequestDispatcher("/html/auth/EnterOtp.jsp"); + dispatcher.forward(request, response); + + } + + processRequest(request, response); + } + + /** + * Returns a short description of the servlet. + * + * @return a String containing servlet description + */ + @Override + public String getServletInfo() { + return "Short description"; + }// + +} diff --git a/src/java/api/forgotPassword.java b/src/java/api/forgotPassword.java new file mode 100644 index 0000000..f8fb4be --- /dev/null +++ b/src/java/api/forgotPassword.java @@ -0,0 +1,143 @@ +package api; + +import java.io.IOException; +import java.io.PrintWriter; +import static java.lang.System.out; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.util.Properties; +import java.util.Random; +import java.util.logging.Level; +import java.util.logging.Logger; +import javax.mail.Message; +import javax.mail.MessagingException; +import javax.mail.PasswordAuthentication; +import javax.mail.Session; +import javax.mail.Transport; +import javax.mail.internet.AddressException; +import javax.mail.internet.InternetAddress; +import javax.mail.internet.MimeMessage; +import javax.servlet.RequestDispatcher; +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 oracle.jdbc.OracleConnection; +import oracle.jdbc.OraclePreparedStatement; +import oracle.jdbc.OracleResultSet; + +/** + * + * @author SOUMADRI + */ +public class forgotPassword extends HttpServlet { + RequestDispatcher dispatcher = null; + int otpvalue = 0; + String vto, vfrom, vcc, vbcc, vsubject, vbody,con; + OracleConnection oconn=null; + OraclePreparedStatement ost; + OracleResultSet ors = null; + + + protected void processRequest(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException { + response.setContentType("text/html;charset=UTF-8"); + try (PrintWriter out = response.getWriter()) { + /* TODO output your page here. You may use following sample code. */ + + } + } + + // + /** + * Handles the HTTP GET method. + * + * @param request servlet request + * @param response servlet response + * @throws ServletException if a servlet-specific error occurs + * @throws IOException if an I/O error occurs + */ + @Override + protected void doGet(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException { + String htmlFilePath = "/html/auth/forgotPassword.jsp"; + request.getRequestDispatcher(htmlFilePath).forward(request, response); + } + + + @Override + protected void doPost(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException { + String email = request.getParameter("email"); + HttpSession mySession = request.getSession(); + try{ + DriverManager.registerDriver(new oracle.jdbc.OracleDriver()); + + oconn = (OracleConnection)DriverManager.getConnection("jdbc:oracle:thin:@Subhajit_Ghosh:1521:orcl","subhajit","ghosh"); +// oconn = (OracleConnection)DriverManager.getConnection("jdbc:oracle:thin:@DESKTOP-1B6LLCK:1521:orcl","soumadri","biswas"); + ost =(OraclePreparedStatement) oconn.prepareStatement("SELECT * FROM register where email=?"); + ost.setString(1, email); + ors = (OracleResultSet) ost.executeQuery(); + + + + String to = email;// change accordingly + // Get the session object + Properties props = new Properties(); + props.put("mail.smtp.auth", "true"); + props.put("mail.smtp.starttls.enable", "true"); + props.put("mail.smtp.host", "smtp.gmail.com"); + props.put("mail.smtp.port", "587"); + Session session = Session.getInstance(props, new javax.mail.Authenticator() { + protected PasswordAuthentication getPasswordAuthentication() { + return new PasswordAuthentication("sbiswas14.2001@gmail.com", "dnbxkkqkjujugytg");// Put your email + } + }); + // compose message + + Message message = new MimeMessage(session); + message.setFrom(new InternetAddress(email)); + message.addRecipient(Message.RecipientType.TO,new InternetAddress(to)); + // message.setRecipients(Message.RecipientType.CC, +// InternetAddress.parse(vcc)); +// message.setRecipients(Message.RecipientType.CC, +// InternetAddress.parse(vbcc)); + message.setSubject("Hello"); + Random random = new Random(); + int x = 0; + while(x < 1000) + { + x = random.nextInt(9999); + } + //out.println("

New OTP generated in Website : " + x + "

"); + vbody= "\nYour new OTP is " + x; + // no need to give coding lines 78-85 if you do not want an OTP + message.setText(vbody); + + Transport.send(message); + dispatcher = request.getRequestDispatcher("/html/auth/EnterOtp.jsp"); + request.setAttribute("message","OTP is sent to your email id"); + //request.setAttribute("connection", con); + mySession.setAttribute("otp", x); + mySession.setAttribute("email",email); + dispatcher.forward(request, response); + //sendRedirect("/html/auth/EnterOtp.jsp"); + ost.close(); + oconn.close(); + //out.println("

Mail with new OTP sent successfully

"); + + }catch (SQLException ex) { + Logger.getLogger(signup.class.getName()).log(Level.SEVERE, null, ex); + + } catch (AddressException ex) { + Logger.getLogger(forgotPassword.class.getName()).log(Level.SEVERE, null, ex); + } catch (MessagingException ex) { + Logger.getLogger(forgotPassword.class.getName()).log(Level.SEVERE, null, ex); + } + out.println(email); + out.println(vbody); + + + } +} diff --git a/src/java/api/login.java b/src/java/api/login.java index b83fd32..f02042a 100644 --- a/src/java/api/login.java +++ b/src/java/api/login.java @@ -1,12 +1,16 @@ package api; import java.io.IOException; +import java.io.PrintStream; import java.io.PrintWriter; import static java.lang.System.out; +import java.sql.Connection; import java.sql.DriverManager; +import java.sql.PreparedStatement; import java.sql.SQLException; import java.util.logging.Level; import java.util.logging.Logger; +import javax.resource.cci.ResultSet; import javax.servlet.RequestDispatcher; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; @@ -58,62 +62,41 @@ protected void doGet(HttpServletRequest request, HttpServletResponse response)th @Override - protected void doPost(HttpServletRequest request, HttpServletResponse response) - throws ServletException, IOException { - - - - try { - DriverManager.registerDriver(new oracle.jdbc.OracleDriver()); - vemail = request.getParameter("tbemail"); - vpass= request.getParameter("tbpass"); - //out.println("

Your Info:

"); - HttpSession session= request.getSession(); - + protected void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException { + Connection oconn = null; + response.setContentType("text/html"); + try { + + DriverManager.registerDriver(new oracle.jdbc.OracleDriver()); + vemail = request.getParameter("tbemail"); + vpass= request.getParameter("tbpass"); + HttpSession session= request.getSession(); - System.out.println("Email -- "+vemail); - System.out.println("Pass -- "+vpass); - - - oconn = (OracleConnection)DriverManager.getConnection("jdbc:oracle:thin:@Subhajit_Ghosh:1521:orcl","subhajit","ghosh"); + System.out.println("Email -- "+vemail); + System.out.println("Pass -- "+vpass); - //oconn = (OracleConnection)DriverManager.getConnection("jdbc:oracle:thin:@Subhajit_Ghosh:1521:orcl","subhajit","ghosh"); - String q="SELECT EMAIL,PASSWORD FROM register WHERE EMAIL=? AND PASSWORD=?"; - ost =(OraclePreparedStatement) oconn.prepareStatement(q); - ost.setString(1,vemail); - ost.setString(2,vpass); - int ra = ost.executeUpdate(); - request.setAttribute("emal",vemail); +// oconn = (OracleConnection)DriverManager.getConnection("jdbc:oracle:thin:@DESKTOP-1B6LLCK:1521:orcl","soumadri","biswas"); + oconn = (OracleConnection)DriverManager.getConnection("jdbc:oracle:thin:@Subhajit_Ghosh:1521:orcl","subhajit","ghosh"); - dis = request.getRequestDispatcher("/html/auth/Login.jsp"); - if(ra>0) - { - request.setAttribute("status","Success"); - request.setAttribute("email",vemail); + String q = "SELECT * FROM register WHERE EMAIL=? AND PASSWORD=?"; + PreparedStatement ost = oconn.prepareStatement(q); + ost.setString(1,vemail); + ost.setString(2,vpass); + java.sql.ResultSet rs = ost.executeQuery(); -// request.setAttribute('email', vemail) - request.getRequestDispatcher("index.jsp").forward(request, response); - - }else - { - //out.println("

Wrong Email and password entered      "+vemail+" / "+vpass+"

"); - request.setAttribute("status","failed"); - - } - - dis.forward(request, response); - - - } catch (SQLException ex) { - Logger.getLogger(login.class.getName()).log(Level.SEVERE, null, ex); - } - finally{ - try { - ost.close(); - } catch (SQLException ex) { - Logger.getLogger(login.class.getName()).log(Level.SEVERE, null, ex); + if(rs.next()){ + request.setAttribute("email",rs.getString("EMAIL")); + request.setAttribute("address",rs.getString("ADDRESS")); + request.setAttribute("phone",rs.getString("PHONENO")); + request.getRequestDispatcher("index.jsp").forward(request, response); + }else{ + request.setAttribute("status","failed"); + request.getRequestDispatcher("/html/auth/Login.jsp").forward(request, response); + } + } catch (SQLException e) { + request.setAttribute("status","failed"); + request.getRequestDispatcher("/html/auth/Login.jsp").forward(request, response); } - } } diff --git a/src/java/api/newPassword.java b/src/java/api/newPassword.java new file mode 100644 index 0000000..e36a132 --- /dev/null +++ b/src/java/api/newPassword.java @@ -0,0 +1,111 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ +package api; + +import java.io.IOException; +import java.io.PrintWriter; +import static java.lang.System.out; +import java.sql.DriverManager; +import java.sql.PreparedStatement; +import java.sql.SQLException; +import java.util.logging.Level; +import java.util.logging.Logger; +import javax.servlet.RequestDispatcher; +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 oracle.jdbc.OracleConnection; +import oracle.jdbc.OraclePreparedStatement; + + + +public class newPassword extends HttpServlet { + + String vpass; + + OracleConnection oconn; + OraclePreparedStatement ost; + RequestDispatcher dis=null; + protected void processRequest(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException { + response.setContentType("text/html;charset=UTF-8"); + + } + + // + /** + * Handles the HTTP GET method. + * + * @param request servlet request + * @param response servlet response + * @throws ServletException if a servlet-specific error occurs + * @throws IOException if an I/O error occurs + */ + @Override + protected void doGet(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException { + response.setContentType("text/html"); + String htmlFilePath = "/html/auth/newPassword.jsp"; + request.getRequestDispatcher(htmlFilePath).forward(request, response); + } + + /** + * Handles the HTTP POST method. + * + * @param request servlet request + * @param response servlet response + * @throws ServletException if a servlet-specific error occurs + * @throws IOException if an I/O error occurs + */ + @Override + protected void doPost(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException { + HttpSession session = request.getSession(); + + + String newPassword = request.getParameter("password"); + String confPassword = request.getParameter("confPassword"); + RequestDispatcher dispatcher = null; + if (newPassword != null && confPassword != null && newPassword.equals(confPassword)) { + + try { + DriverManager.registerDriver(new oracle.jdbc.OracleDriver()); + + oconn = (OracleConnection)DriverManager.getConnection("jdbc:oracle:thin:@DESKTOP-1B6LLCK:1521:orcl","soumadri","biswas"); + + PreparedStatement pst = oconn.prepareStatement("update register set PASSWORD = ? where EMAIL = ? "); + pst.setString(1, confPassword); + pst.setString(2, (String) session.getAttribute("email")); + + + int rowCount = pst.executeUpdate(); + if (rowCount > 0) { + request.setAttribute("status", "resetSuccess"); + request.getRequestDispatcher("/html/auth/Login.jsp").forward(request, response); + } else { + request.setAttribute("status", "resetFailed"); + request.getRequestDispatcher("/html/auth/Login.jsp").forward(request, response); + + } + out.println((String) session.getAttribute("email")); + out.println(confPassword); + } catch (SQLException ex) { + Logger.getLogger(newPassword.class.getName()).log(Level.SEVERE, null, ex); + }} + + processRequest(request, response); + + + } + + /** + * Returns a short description of the servlet. + * + * @return a String containing servlet description + */ + } diff --git a/src/java/api/signup.java b/src/java/api/signup.java index 5adfb17..28c499d 100644 --- a/src/java/api/signup.java +++ b/src/java/api/signup.java @@ -46,7 +46,7 @@ protected void doPost(HttpServletRequest request, HttpServletResponse response) DriverManager.registerDriver(new oracle.jdbc.OracleDriver()); oconn = (OracleConnection)DriverManager.getConnection("jdbc:oracle:thin:@Subhajit_Ghosh:1521:orcl","subhajit","ghosh"); String q = "INSERT INTO register values(?,?,?,?,?,?)"; - // oconn = (OracleConnection)DriverManager.getConnection("jdbc:oracle:thin:@DESKTOP-1B6LLCK:1521:orcl","soumadri","biswas"); +// oconn = (OracleConnection)DriverManager.getConnection("jdbc:oracle:thin:@DESKTOP-1B6LLCK:1521:orcl","soumadri","biswas"); // oconn = (OracleConnection)DriverManager.getConnection("jdbc:oracle:thin:@DESKTOP-1B6LLCK:1521:orcl","soumadri","biswas"); ost =(OraclePreparedStatement) oconn.prepareStatement(q); diff --git a/web/WEB-INF/web.xml b/web/WEB-INF/web.xml index c3474b3..74ecf68 100644 --- a/web/WEB-INF/web.xml +++ b/web/WEB-INF/web.xml @@ -40,6 +40,26 @@ Cleaner api.Cleaner + + forgotPassword + api.forgotPassword + + + newPassword + api.newPassword + + + ValidateOtp + api.ValidateOtp + + + Order + api.Placeorder + + + GetOrders + api.GetOrders + login /login @@ -80,6 +100,26 @@ Cleaner /Cleaner + + forgotPassword + /forgotPassword + + + newPassword + /newPassword + + + ValidateOtp + /ValidateOtp + + + Order + /Order + + + GetOrders + /GetOrders + 30 diff --git a/web/html/CartSidebar/index.jsp b/web/html/CartSidebar/index.jsp index 29dc1bf..c2c661d 100644 --- a/web/html/CartSidebar/index.jsp +++ b/web/html/CartSidebar/index.jsp @@ -4,6 +4,7 @@
+ @@ -66,8 +67,9 @@ allCartItems.innerHTML += '
' allCartItems.innerHTML += "

Service : "+cart[c].service+"

" allCartItems.innerHTML += "

Category - "+cart[c].Category+"

" - allCartItems.innerHTML += "Order Date : "+cart[c].orderDate+"
" - allCartItems.innerHTML += "Order Time : "+cart[c].orderTime+"
" + allCartItems.innerHTML += "Order Date : "+cart[c].orderDate+"
" + allCartItems.innerHTML += "
Price : "+cart[c].price+"

" + allCartItems.innerHTML += '' allCartItems.innerHTML += '
' diff --git a/web/html/Cleaner/CleanerCart.jsp b/web/html/Cleaner/CleanerCart.jsp index 94767de..94a1866 100644 --- a/web/html/Cleaner/CleanerCart.jsp +++ b/web/html/Cleaner/CleanerCart.jsp @@ -65,23 +65,13 @@ const alertMsg = document.querySelector('.alert'); - const isLoggedin = () =>{ - const user_email = localStorage.getItem('user_email'); - - if(user_email !== 'null' || user_email !== ''){ - return user_email; - }else{ - return false; - } - } - const getCart = () =>{ const cart = localStorage.getItem('cart'); return cart; } - const validation = (email) =>{ + const validation = (user) =>{ if(dateField.value === '' || timeField.value === ''){ return { @@ -95,9 +85,10 @@ status:true, data:{ id:randomIdGenerator(), - email:email, - orderDate:dateField.value, - orderTime:timeField.value, + email:user.email, + serviceDate:dateField.value, + serviceTime:timeField.value, + orderDate:new Date().toLocaleDateString(), Category:"Cleaner", isActive:true, service:"Kitchen Service", @@ -117,9 +108,10 @@ status:true, data:{ id:randomIdGenerator(), - email:email, - orderDate:dateField.value, - orderTime:timeField.value, + email:user.email, + serviceDate:dateField.value, + serviceTime:timeField.value, + orderDate:new Date().toLocaleDateString(), Category:"Cleaner", isActive:true, service:'Bathroom Cleaning', @@ -152,7 +144,7 @@ cleanerCartBtn.style.display = "none"; loader.style.display = 'block'; - const user = isLoggedin(); + const {user} = isLoggedin(); const data = validation(user); if(data.status !== false){ diff --git a/web/html/Salon/SalonCart.jsp b/web/html/Salon/SalonCart.jsp index bb0d1b6..d62b366 100644 --- a/web/html/Salon/SalonCart.jsp +++ b/web/html/Salon/SalonCart.jsp @@ -67,15 +67,6 @@ const alertMsg = document.querySelector('.alert'); const SalonCartBtn = document.getElementById('SalonCartBtn'); - const isLoggedin = () =>{ - const user_email = localStorage.getItem('user_email'); - - if(user_email !== 'null' || user_email !== ''){ - return user_email; - }else{ - return false; - } - } const getCart = () =>{ const cart = localStorage.getItem('cart'); @@ -83,7 +74,7 @@ return cart; } - const validation = (email) =>{ + const validation = (user) =>{ if(dateField.value === '' || timeField.value === ''){ return { status:false, @@ -96,9 +87,10 @@ status:true, data:{ id:randomIdGenerator(), - email:email, - orderDate:dateField.value, - orderTime:timeField.value, + email:user.email, + serviceDate:dateField.value, + serviceTime:timeField.value, + orderDate:new Date().toLocaleDateString(), Category:"Women", isActive:true, service:"Women Salon", @@ -118,9 +110,10 @@ status:true, data:{ id:randomIdGenerator(), - email:email, - orderDate:dateField.value, - orderTime:timeField.value, + email:user.email, + serviceDate:dateField.value, + serviceTime:timeField.value, + orderDate:new Date().toLocaleDateString(), Category:"Men", isActive:true, service:"Men Salon", @@ -150,7 +143,7 @@ if(myCart === null){ localStorage.setItem('cart',JSON.stringify({cart:[]})); }else{ - const user = isLoggedin(); + const {user} = isLoggedin(); const data = validation(user); SalonCartBtn.style.display = 'none'; diff --git a/web/html/auth/EnterOtp.jsp b/web/html/auth/EnterOtp.jsp new file mode 100644 index 0000000..96596a9 --- /dev/null +++ b/web/html/auth/EnterOtp.jsp @@ -0,0 +1,70 @@ + + + + + + + + + + + + + + +
+
+ +
+ +
+
+
+
+
+

+ +

+

Enter OTP

+ <% + if(request.getAttribute("message")!=null) + { + out.print("

"+request.getAttribute("message")+"

"); + } + %> +
+
+
+ +
+
+
+ +
+ + +
+
+
+
+
+
+
+
+ + \ No newline at end of file diff --git a/web/html/auth/Signup.jsp b/web/html/auth/Signup.jsp index 303ea52..9ce8d87 100644 --- a/web/html/auth/Signup.jsp +++ b/web/html/auth/Signup.jsp @@ -37,15 +37,15 @@ and open the template in the editor.
Phone Number - +
Password - +
Confirm Password - +
@@ -87,6 +87,10 @@ and open the template in the editor. { swal("Data Updated"); } + else + { + swal("User already exist"); + } diff --git a/web/html/auth/forgotPassword.jsp b/web/html/auth/forgotPassword.jsp new file mode 100644 index 0000000..96d6316 --- /dev/null +++ b/web/html/auth/forgotPassword.jsp @@ -0,0 +1,103 @@ + + + + + +ForgetPassword + + + + + + +
+
+
+
+
+
+
+

Forgot your password?

+

Change your password in three easy steps. This will help you + to secure your password!

+
    +
  1. 1. Enter + your email address below.
  2. +
  3. 2. Our + system will send you an OTP to your email
  4. +
  5. 3. Enter the OTP on the + next page
  6. +
+
+
+
+ Enter the registered email address . Then we'll + email a OTP to this address. +
+
+ + +
+
+
+ + + + + +
+
+
+ + + + + + + +Reset Password + + + + + + + +
+ +
+
+
+ +
+ +
+

+ Reset Password +

+
+
+
+ +
+
+ +
+
+ +
+
+ +
+
+ + +
+
+ +
+
+
+
+ +
+ + +
+
+
+ +
+
+
+ Don't have an Account? Register Now! +
+
+
+
+ +
+
+
+
+
+
+
+
+
+ + + + \ No newline at end of file diff --git a/web/html/electrician/ElectricianCurt.jsp b/web/html/electrician/ElectricianCurt.jsp index 865ac24..92eab88 100644 --- a/web/html/electrician/ElectricianCurt.jsp +++ b/web/html/electrician/ElectricianCurt.jsp @@ -68,23 +68,13 @@ return uniqueNum; } - const isLoggedin = () =>{ - const user_email = localStorage.getItem('user_email'); - - if(user_email !== 'null' || user_email !== ''){ - return user_email; - }else{ - return false; - } - } - const getCart = () =>{ const cart = localStorage.getItem('cart'); return cart; } - const validation = (email) =>{ + const validation = (user) =>{ console.log(AcService.checked,TvService.value,dateField.value,dateField.value,timeField.value); if(dateField.value === '' || timeField.value === ''){ @@ -99,9 +89,10 @@ status:true, data:{ id:randomIdGenerator(), - email:email, - orderDate:dateField.value, - orderTime:timeField.value, + email:user.email, + serviceDate:dateField.value, + serviceTime:timeField.value, + orderDate:new Date().toLocaleDateString(), isActive:true, service:"Ac Service", Category:"Electiician", @@ -121,9 +112,10 @@ status:true, data:{ id:randomIdGenerator(), - email:email, - orderDate:dateField.value, - orderTime:timeField.value, + email:user.email, + serviceDate:dateField.value, + serviceTime:timeField.value, + orderDate:new Date().toLocaleDateString(), isActive:true, service:"Tv Service", Category:"Electiician", @@ -154,7 +146,7 @@ if(myCart === null){ localStorage.setItem('cart',JSON.stringify({cart:[]})); }else{ - const user = isLoggedin(); + const {user} = isLoggedin(); const data = validation(user); ElectricianCartBtn.display = 'none'; diff --git a/web/html/home/Navbar.jsp b/web/html/home/Navbar.jsp index 93568bf..82ebbaf 100644 --- a/web/html/home/Navbar.jsp +++ b/web/html/home/Navbar.jsp @@ -33,7 +33,10 @@
@@ -44,33 +47,52 @@ diff --git a/web/html/order/AllOrders.jsp b/web/html/order/AllOrders.jsp new file mode 100644 index 0000000..45c8734 --- /dev/null +++ b/web/html/order/AllOrders.jsp @@ -0,0 +1,129 @@ +

Your Carts

+ + + + + + + + + + + + + + +
CategoryOrder DateServiceService DatePrice
+ +
+
+
+
+ + + + + + + + + + + + +
+
+
+
+
+
+ + \ No newline at end of file diff --git a/web/html/order/OrderFailPage.jsp b/web/html/order/OrderFailPage.jsp new file mode 100644 index 0000000..2ea3b35 --- /dev/null +++ b/web/html/order/OrderFailPage.jsp @@ -0,0 +1,20 @@ + + + + + +
+
+
+ +

<%= request.getAttribute("Failed") %>

+

Kindly Retry

+ +
+
+
+ + + + + diff --git a/web/html/order/OrderSuccessPage.jsp b/web/html/order/OrderSuccessPage.jsp new file mode 100644 index 0000000..e92b215 --- /dev/null +++ b/web/html/order/OrderSuccessPage.jsp @@ -0,0 +1,69 @@ + + + + +
+
+
+ +

Your Order has successfully been placed

+

Your Order ID - <%= request.getAttribute("orderId") %>

+ + + + + + + + + + + + +
+
+
+ + + + + + \ No newline at end of file diff --git a/web/html/order/index.jsp b/web/html/order/index.jsp new file mode 100644 index 0000000..21d9e7e --- /dev/null +++ b/web/html/order/index.jsp @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/web/html/plumber/PlumberCurt.jsp b/web/html/plumber/PlumberCurt.jsp index 924543c..5b0a422 100644 --- a/web/html/plumber/PlumberCurt.jsp +++ b/web/html/plumber/PlumberCurt.jsp @@ -69,16 +69,6 @@ return uniqueNum; } - const isLoggedin = () =>{ - const user_email = localStorage.getItem('user_email'); - - if(user_email !== 'null' || user_email !== ''){ - return user_email; - }else{ - return false; - } - } - const getCart = () =>{ const cart = localStorage.getItem('cart'); @@ -100,9 +90,10 @@ status:true, data:{ id:randomIdGenerator(), - email:email, - orderDate:dateField.value, - orderTime:timeField.value, + email:user.email, + serviceDate:dateField.value, + serviceTime:timeField.value, + orderDate:new Date().toLocaleDateString(), Category:"Plumber", isActive:true, service:"Gieser Plumber", @@ -122,9 +113,10 @@ status:true, data:{ id:randomIdGenerator(), - email:email, - orderDate:dateField.value, - orderTime:timeField.value, + email:user.email, + serviceDate:dateField.value, + serviceTime:timeField.value, + orderDate:new Date().toLocaleDateString(), Category:"Plumber", isActive:true, service:"Basin Plumber", @@ -158,7 +150,7 @@ loader.style.display = 'block' PlumberCartBtn.style.display = 'none' - const user = isLoggedin(); + const {user} = isLoggedin(); const data = validation(user); if(data.status !== false){ const {cart} = JSON.parse(myCart); diff --git a/web/img/cross.jpg b/web/img/cross.jpg new file mode 100644 index 0000000..fcef587 Binary files /dev/null and b/web/img/cross.jpg differ diff --git a/web/img/success.jpg b/web/img/success.jpg new file mode 100644 index 0000000..087d73d Binary files /dev/null and b/web/img/success.jpg differ diff --git a/web/index.jsp b/web/index.jsp index 27df6e4..3805d79 100644 --- a/web/index.jsp +++ b/web/index.jsp @@ -6,6 +6,9 @@ + + + @@ -17,42 +20,27 @@