Debut de l'ajout des points
This commit is contained in:
parent
11ac854f88
commit
229f04d98e
@ -77,7 +77,7 @@ public class AuthHandler {
|
|||||||
}
|
}
|
||||||
|
|
||||||
databaseService.pool
|
databaseService.pool
|
||||||
.preparedQuery("SELECT password FROM users WHERE email = ?")
|
.preparedQuery("SELECT password,points FROM users WHERE email = ?")
|
||||||
.execute(Tuple.of(email))
|
.execute(Tuple.of(email))
|
||||||
.onSuccess(result -> {
|
.onSuccess(result -> {
|
||||||
if (result.rowCount() == 0) {
|
if (result.rowCount() == 0) {
|
||||||
@ -88,10 +88,20 @@ public class AuthHandler {
|
|||||||
}
|
}
|
||||||
|
|
||||||
String storedHashedPassword = result.iterator().next().getString("password");
|
String storedHashedPassword = result.iterator().next().getString("password");
|
||||||
|
Integer nbPointsUser = result.iterator().next().getInteger("points");
|
||||||
|
|
||||||
BCrypt.Result verification = BCrypt.verifyer().verify(password.toCharArray(), storedHashedPassword);
|
BCrypt.Result verification = BCrypt.verifyer().verify(password.toCharArray(), storedHashedPassword);
|
||||||
|
|
||||||
if (verification.verified) {
|
if (verification.verified) {
|
||||||
JsonObject claims = new JsonObject().put("sub", email).put("role", "user");
|
JsonObject claims = new JsonObject().put("sub", email);
|
||||||
|
if(nbPointsUser<=30){
|
||||||
|
claims.put("role", "user");
|
||||||
|
}else if(nbPointsUser<=60){
|
||||||
|
claims.put("role", "complexe");
|
||||||
|
}else if(nbPointsUser>=100){
|
||||||
|
claims.put("role", "admin");
|
||||||
|
}
|
||||||
|
|
||||||
String token = jwtAuth.generateToken(claims);
|
String token = jwtAuth.generateToken(claims);
|
||||||
context.response()
|
context.response()
|
||||||
.setStatusCode(200)
|
.setStatusCode(200)
|
||||||
|
|||||||
@ -9,8 +9,8 @@ function Header() {
|
|||||||
|
|
||||||
return (
|
return (
|
||||||
<header className="bg-white shadow-sm">
|
<header className="bg-white shadow-sm">
|
||||||
<div className=" max-w-6xl mx-auto px-4 sm:px-6 lg:px-8 py-4 flex justify-between items-center">
|
<div className="mx-auto px-4 sm:px-6 lg:px-8 py-4 flex justify-between items-center">
|
||||||
<h1 className="text-2xl font-bold text-indigo-600">VigiMétéo</h1>
|
<Link to="/" className="text-2xl font-bold text-indigo-600">VigiMétéo</Link>
|
||||||
<button
|
<button
|
||||||
className="sm:hidden text-gray-600 hover:text-indigo-600"
|
className="sm:hidden text-gray-600 hover:text-indigo-600"
|
||||||
onClick={() => setIsMenuOpen(!isMenuOpen)}
|
onClick={() => setIsMenuOpen(!isMenuOpen)}
|
||||||
@ -21,7 +21,7 @@ function Header() {
|
|||||||
<nav
|
<nav
|
||||||
className={`${
|
className={`${
|
||||||
isMenuOpen ? "block" : "hidden"
|
isMenuOpen ? "block" : "hidden"
|
||||||
} absolute top-16 left-0 w-full bg-white shadow-md sm:static sm:w-auto sm:flex sm:gap-6 sm:shadow-none`}
|
} absolute top-16 left-0 w-full bg-white shadow-md sm:static sm:w-auto sm:flex sm:gap-6 sm:shadow-none z-50`}
|
||||||
>
|
>
|
||||||
<ul className="flex flex-col sm:flex-row gap-4 sm:gap-6 text-gray-600 p-4 sm:p-0">
|
<ul className="flex flex-col sm:flex-row gap-4 sm:gap-6 text-gray-600 p-4 sm:p-0">
|
||||||
<li>
|
<li>
|
||||||
|
|||||||
@ -11,7 +11,7 @@ function ModifObject({ object, defafficherModif }) {
|
|||||||
const [isActive, setActive] = useState(object.status === "active");
|
const [isActive, setActive] = useState(object.status === "active");
|
||||||
|
|
||||||
function handleSubmit(event) {
|
function handleSubmit(event) {
|
||||||
event.preventDefault(); // Empêche le rechargement de la page
|
event.preventDefault();
|
||||||
axios
|
axios
|
||||||
.post(`${API_BASE_URL}/modifObjet`, {
|
.post(`${API_BASE_URL}/modifObjet`, {
|
||||||
id: object.id,
|
id: object.id,
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user