-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
778cbe8
commit f5a661e
Showing
56 changed files
with
702 additions
and
632 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,54 @@ | ||
package com.ufpr.tads.web2.controller; | ||
|
||
import com.ufpr.tads.web2.exception.DAOException; | ||
import jakarta.servlet.RequestDispatcher; | ||
import java.io.IOException; | ||
import jakarta.servlet.ServletException; | ||
import jakarta.servlet.annotation.WebServlet; | ||
import jakarta.servlet.http.HttpServlet; | ||
import jakarta.servlet.http.HttpServletRequest; | ||
import jakarta.servlet.http.HttpServletResponse; | ||
import jakarta.servlet.http.HttpSession; | ||
import com.ufpr.tads.web2.model.beans.LoginBean; | ||
import com.ufpr.tads.web2.model.domain.User; | ||
import com.ufpr.tads.web2.model.facade.LoginFacade; | ||
|
||
|
||
@WebServlet(name = "LoginServlet", urlPatterns = {"/login"}) | ||
public class LoginServlet extends HttpServlet { | ||
|
||
@Override | ||
protected void doPost(HttpServletRequest request, HttpServletResponse response) | ||
throws ServletException, IOException { | ||
|
||
String userEmail = request.getParameter("email"); | ||
String userPassword = request.getParameter("password"); | ||
|
||
LoginBean login = new LoginBean(); | ||
User user = new User(); | ||
|
||
try { | ||
user = LoginFacade.login(userEmail, userPassword, login); | ||
|
||
if (user == null) { | ||
throw new DAOException("Usuário inválido!"); | ||
} | ||
} catch (DAOException e) { | ||
e.printStackTrace(); | ||
RequestDispatcher loginDispatcher = request.getRequestDispatcher("/login.jsp"); | ||
request.setAttribute("message", "E-mail ou senha inválidos!"); | ||
loginDispatcher.forward(request, response); | ||
} | ||
|
||
HttpSession session = request.getSession(); | ||
session.setAttribute("login", login); | ||
if (user.getRole().equals("Cliente")) { | ||
response.sendRedirect("cliente/inicio.jsp"); | ||
return; | ||
} | ||
|
||
response.sendRedirect("funcionario/inicio.jsp"); | ||
return; | ||
} | ||
|
||
} |
2 changes: 1 addition & 1 deletion
2
src/java/servlets/LogoutServlet.java → ...r/tads/web2/controller/LogoutServlet.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
60 changes: 60 additions & 0 deletions
60
src/java/com/ufpr/tads/web2/controller/RegistroServlet.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,60 @@ | ||
package com.ufpr.tads.web2.controller; | ||
|
||
import com.ufpr.tads.web2.exception.AppException; | ||
import java.io.IOException; | ||
import jakarta.servlet.ServletException; | ||
import jakarta.servlet.annotation.WebServlet; | ||
import jakarta.servlet.http.HttpServlet; | ||
import jakarta.servlet.http.HttpServletRequest; | ||
import jakarta.servlet.http.HttpServletResponse; | ||
import java.net.URLEncoder; | ||
import com.ufpr.tads.web2.model.facade.RegistroFacade; | ||
|
||
|
||
|
||
@WebServlet(name = "RegistroServlet", urlPatterns = {"/registrar"}) | ||
public class RegistroServlet extends HttpServlet { | ||
|
||
@Override | ||
protected void doPost(HttpServletRequest request, HttpServletResponse response) | ||
throws ServletException, IOException { | ||
|
||
request.setCharacterEncoding("UTF-8"); | ||
|
||
String userNome = request.getParameter("nome"); | ||
String userCpf = request.getParameter("cpf"); | ||
String userEmail = request.getParameter("email"); | ||
String userPhoneNumber = request.getParameter("telefone"); | ||
String userAddressCep = request.getParameter("cep"); | ||
String userAddressLogradouro = request.getParameter("logradouro"); | ||
String userAddressNumero = request.getParameter("numero"); | ||
String userAddressCidade = request.getParameter("localidade"); | ||
String userAddressEstado = request.getParameter("uf"); | ||
String userAddressBairro = request.getParameter("bairro"); | ||
String userAddressComplemento = request.getParameter("complemento"); | ||
|
||
|
||
try { | ||
RegistroFacade.registrar(userNome, | ||
userCpf, | ||
userEmail, | ||
userPhoneNumber, | ||
userAddressCep, | ||
userAddressLogradouro, | ||
userAddressNumero, | ||
userAddressCidade, | ||
userAddressEstado, | ||
userAddressBairro, | ||
userAddressComplemento); | ||
|
||
} catch (AppException e) { | ||
String errorMessage = URLEncoder.encode(e.getMessage(), "UTF-8"); | ||
response.sendRedirect("registrar.jsp?message=" + errorMessage); | ||
return; | ||
} | ||
|
||
String userEmailParameter = URLEncoder.encode(userEmail, "UTF-8"); | ||
response.sendRedirect("cliente/cadastroRealizado.jsp?email=" + userEmailParameter); | ||
} | ||
|
||
} |
8 changes: 4 additions & 4 deletions
8
src/java/servlets/StartupServlet.java → .../tads/web2/controller/StartupServlet.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
package com.ufpr.tads.web2.exception; | ||
|
||
/** | ||
* | ||
* @author Gian | ||
*/ | ||
public class AppException extends Exception { | ||
|
||
public AppException() { | ||
|
||
} | ||
|
||
public AppException(String errorMessage) { | ||
super(errorMessage); | ||
} | ||
|
||
public AppException(String errorMessage, Throwable throwable) { | ||
super(errorMessage, throwable); | ||
} | ||
} | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
21 changes: 21 additions & 0 deletions
21
src/java/com/ufpr/tads/web2/exception/DadoInvalidoException.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
package com.ufpr.tads.web2.exception; | ||
|
||
/** | ||
* | ||
* @author Gian | ||
*/ | ||
public class DadoInvalidoException extends AppException { | ||
|
||
public DadoInvalidoException() { | ||
|
||
} | ||
|
||
public DadoInvalidoException(String errorMessage) { | ||
super(errorMessage); | ||
} | ||
|
||
public DadoInvalidoException(String errorMessage, Throwable throwable) { | ||
super(errorMessage, throwable); | ||
} | ||
} | ||
|
21 changes: 21 additions & 0 deletions
21
src/java/com/ufpr/tads/web2/exception/ErroAoEnviarEmailException.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
package com.ufpr.tads.web2.exception; | ||
|
||
/** | ||
* | ||
* @author Gian | ||
*/ | ||
public class ErroAoEnviarEmailException extends AppException { | ||
|
||
public ErroAoEnviarEmailException() { | ||
|
||
} | ||
|
||
public ErroAoEnviarEmailException(String errorMessage) { | ||
super(errorMessage); | ||
} | ||
|
||
public ErroAoEnviarEmailException(String errorMessage, Throwable throwable) { | ||
super(errorMessage, throwable); | ||
} | ||
} | ||
|
2 changes: 1 addition & 1 deletion
2
src/java/beans/ConfigBean.java → ...fpr/tads/web2/model/beans/ConfigBean.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,4 @@ | ||
package beans; | ||
package com.ufpr.tads.web2.model.beans; | ||
|
||
import java.io.Serializable; | ||
|
||
|
2 changes: 1 addition & 1 deletion
2
src/java/beans/LoginBean.java → ...ufpr/tads/web2/model/beans/LoginBean.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,4 @@ | ||
package beans; | ||
package com.ufpr.tads.web2.model.beans; | ||
|
||
import java.io.Serializable; | ||
|
||
|
8 changes: 4 additions & 4 deletions
8
src/java/dao/CidadeDAO.java → ...m/ufpr/tads/web2/model/dao/CidadeDAO.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
4 changes: 2 additions & 2 deletions
4
src/java/dao/ConnectionFactory.java → ...ads/web2/model/dao/ConnectionFactory.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
4 changes: 2 additions & 2 deletions
4
src/java/dao/DAO.java → ...ava/com/ufpr/tads/web2/model/dao/DAO.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
10 changes: 5 additions & 5 deletions
10
src/java/dao/EnderecoDAO.java → ...ufpr/tads/web2/model/dao/EnderecoDAO.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
6 changes: 3 additions & 3 deletions
6
src/java/dao/EstadoDAO.java → ...m/ufpr/tads/web2/model/dao/EstadoDAO.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
12 changes: 6 additions & 6 deletions
12
src/java/dao/UserDAO.java → ...com/ufpr/tads/web2/model/dao/UserDAO.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
2 changes: 1 addition & 1 deletion
2
src/java/domain/Cidade.java → ...m/ufpr/tads/web2/model/domain/Cidade.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,4 @@ | ||
package domain; | ||
package com.ufpr.tads.web2.model.domain; | ||
|
||
import java.io.Serializable; | ||
|
||
|
2 changes: 1 addition & 1 deletion
2
src/java/domain/Endereco.java → ...ufpr/tads/web2/model/domain/Endereco.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,4 @@ | ||
package domain; | ||
package com.ufpr.tads.web2.model.domain; | ||
|
||
import java.io.Serializable; | ||
|
||
|
2 changes: 1 addition & 1 deletion
2
src/java/domain/Estado.java → ...m/ufpr/tads/web2/model/domain/Estado.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,4 @@ | ||
package domain; | ||
package com.ufpr.tads.web2.model.domain; | ||
|
||
import java.io.Serializable; | ||
|
||
|
2 changes: 1 addition & 1 deletion
2
src/java/domain/User.java → ...com/ufpr/tads/web2/model/domain/User.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,4 @@ | ||
package domain; | ||
package com.ufpr.tads.web2.model.domain; | ||
|
||
import java.io.Serializable; | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,44 @@ | ||
package com.ufpr.tads.web2.model.facade; | ||
|
||
import com.ufpr.tads.web2.exception.DAOException; | ||
import com.ufpr.tads.web2.model.beans.LoginBean; | ||
import com.ufpr.tads.web2.model.dao.ConnectionFactory; | ||
import com.ufpr.tads.web2.model.dao.UserDAO; | ||
import com.ufpr.tads.web2.model.domain.User; | ||
import com.ufpr.tads.web2.security.HashFunction; | ||
|
||
/** | ||
* | ||
* @author Gian | ||
*/ | ||
public class LoginFacade { | ||
|
||
public static User login(String userEmail, String userPassword, LoginBean login) { | ||
if (!userEmail.matches("[a-zA-Z0-9._%+-]{1,64}@(?:[a-zA-Z0-9-]{1,63}\\.){1,125}[a-zA-Z]{2,63}") || !userPassword.matches(".+")) { | ||
return null; | ||
} | ||
|
||
String hashedUserPassword = HashFunction.getHash(userPassword); | ||
|
||
try (ConnectionFactory factory = new ConnectionFactory()) { | ||
UserDAO dao = new UserDAO(factory.getConnection()); | ||
|
||
User user = dao.validateLogin(userEmail, hashedUserPassword); | ||
|
||
if (user.getFullName() == null) { | ||
return null; | ||
} | ||
|
||
login.setId(user.getId()); | ||
login.setNome(user.getFullName()); | ||
login.setEmail(user.getEmail()); | ||
|
||
return user; | ||
} | ||
catch (DAOException e) { | ||
e.printStackTrace(); | ||
} | ||
|
||
return null; | ||
} | ||
} |
Oops, something went wrong.