From b49475ff3affbe4a7651c11ff660ba9e887e70bd Mon Sep 17 00:00:00 2001 From: Emile Lalorcey Date: Mon, 1 Dec 2025 14:19:42 +0100 Subject: [PATCH] try --- .env | 4 + nb-configuration.xml | 20 ++ pom.xml | 72 +++++++ .../JakartaRestConfiguration.java | 13 ++ .../resources/JakartaEE10Resource.java | 20 ++ .../java/com/sdsi29/bdd/caserneMySQL.java | 49 +++++ .../java/com/sdsi29/bdd/connexionSQL.java | 62 ++++++ .../java/com/sdsi29/bdd/pompierMySQL.java | 157 +++++++++++++++ src/main/java/com/sdsi29/beans/caserne.java | 64 ++++++ .../java/com/sdsi29/beans/listePompier.java | 28 +++ src/main/java/com/sdsi29/beans/pompier.java | 183 +++++++++++++++++ .../sdsi29/controler/AjoutPompierServlet.java | 121 ++++++++++++ .../controler/AuthentificationServlet.java | 122 ++++++++++++ .../sdsi29/controler/ListePompierServlet.java | 110 +++++++++++ .../sdsi29/controler/ModificationServlet.java | 114 +++++++++++ .../com/sdsi29/controler/ProfilServlet.java | 87 ++++++++ src/main/resources/META-INF/persistence.xml | 7 + src/main/webapp/WEB-INF/AjoutPompierJSP.jsp | 72 +++++++ src/main/webapp/WEB-INF/ConnexionJSP.jsp | 47 +++++ src/main/webapp/WEB-INF/ListePompierJSP.jsp | 49 +++++ .../webapp/WEB-INF/ModificationPompierJSP.jsp | 73 +++++++ src/main/webapp/WEB-INF/ProfilJSP.jsp | 17 ++ src/main/webapp/WEB-INF/beans.xml | 6 + src/main/webapp/WEB-INF/parts/enTete.jspf | 11 ++ src/main/webapp/WEB-INF/parts/menuBar.jspf | 14 ++ .../webapp/WEB-INF/parts/menuBarNonCo.jspf | 11 ++ src/main/webapp/WEB-INF/web.xml | 51 +++++ src/main/webapp/css/pageStyle.css | 187 ++++++++++++++++++ src/main/webapp/css/styleHeaderNav.css | 118 +++++++++++ src/main/webapp/img/connexionIcon.png | Bin 0 -> 160404 bytes src/main/webapp/img/home.png | Bin 0 -> 8020 bytes src/main/webapp/img/logoSDIS29.png | Bin 0 -> 14943 bytes 32 files changed, 1889 insertions(+) create mode 100644 .env create mode 100644 nb-configuration.xml create mode 100644 pom.xml create mode 100644 src/main/java/com/mycompany/sdis29medhiemile/JakartaRestConfiguration.java create mode 100644 src/main/java/com/mycompany/sdis29medhiemile/resources/JakartaEE10Resource.java create mode 100644 src/main/java/com/sdsi29/bdd/caserneMySQL.java create mode 100644 src/main/java/com/sdsi29/bdd/connexionSQL.java create mode 100644 src/main/java/com/sdsi29/bdd/pompierMySQL.java create mode 100644 src/main/java/com/sdsi29/beans/caserne.java create mode 100644 src/main/java/com/sdsi29/beans/listePompier.java create mode 100644 src/main/java/com/sdsi29/beans/pompier.java create mode 100644 src/main/java/com/sdsi29/controler/AjoutPompierServlet.java create mode 100644 src/main/java/com/sdsi29/controler/AuthentificationServlet.java create mode 100644 src/main/java/com/sdsi29/controler/ListePompierServlet.java create mode 100644 src/main/java/com/sdsi29/controler/ModificationServlet.java create mode 100644 src/main/java/com/sdsi29/controler/ProfilServlet.java create mode 100644 src/main/resources/META-INF/persistence.xml create mode 100644 src/main/webapp/WEB-INF/AjoutPompierJSP.jsp create mode 100644 src/main/webapp/WEB-INF/ConnexionJSP.jsp create mode 100644 src/main/webapp/WEB-INF/ListePompierJSP.jsp create mode 100644 src/main/webapp/WEB-INF/ModificationPompierJSP.jsp create mode 100644 src/main/webapp/WEB-INF/ProfilJSP.jsp create mode 100644 src/main/webapp/WEB-INF/beans.xml create mode 100644 src/main/webapp/WEB-INF/parts/enTete.jspf create mode 100644 src/main/webapp/WEB-INF/parts/menuBar.jspf create mode 100644 src/main/webapp/WEB-INF/parts/menuBarNonCo.jspf create mode 100644 src/main/webapp/WEB-INF/web.xml create mode 100644 src/main/webapp/css/pageStyle.css create mode 100644 src/main/webapp/css/styleHeaderNav.css create mode 100644 src/main/webapp/img/connexionIcon.png create mode 100644 src/main/webapp/img/home.png create mode 100644 src/main/webapp/img/logoSDIS29.png diff --git a/.env b/.env new file mode 100644 index 0000000..e56a995 --- /dev/null +++ b/.env @@ -0,0 +1,4 @@ +MYSQL_HOST=192.168.100.100 +MYSQL_DATABASE=sdis29 +MYSQL_USER=adminBDsdis +MYSQL_PASSWORD=mdp \ No newline at end of file diff --git a/nb-configuration.xml b/nb-configuration.xml new file mode 100644 index 0000000..020b24f --- /dev/null +++ b/nb-configuration.xml @@ -0,0 +1,20 @@ + + + + + + 10-web + pfv5ee8 + ide + + diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..a180121 --- /dev/null +++ b/pom.xml @@ -0,0 +1,72 @@ + + 4.0.0 + com.mycompany + SDIS29MedhiEmile + 1.0-SNAPSHOT + war + SDIS29MedhiEmile-1.0-SNAPSHOT + + + UTF-8 + 10.0.0 + + + + + jakarta.platform + jakarta.jakartaee-api + ${jakartaee} + provided + + + io.github.cdimascio + dotenv-java + 3.0.0 + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + 3.8.1 + + 11 + 11 + + + + org.apache.maven.plugins + maven-war-plugin + 3.3.2 + + + org.apache.maven.plugins + maven-resources-plugin + 3.3.1 + + + copy-env + process-resources + + copy-resources + + + ${project.build.outputDirectory} + + + ${basedir} + + .env + + + + + + + + + + \ No newline at end of file diff --git a/src/main/java/com/mycompany/sdis29medhiemile/JakartaRestConfiguration.java b/src/main/java/com/mycompany/sdis29medhiemile/JakartaRestConfiguration.java new file mode 100644 index 0000000..0e65150 --- /dev/null +++ b/src/main/java/com/mycompany/sdis29medhiemile/JakartaRestConfiguration.java @@ -0,0 +1,13 @@ +package com.mycompany.sdis29medhiemile; + +import jakarta.ws.rs.ApplicationPath; +import jakarta.ws.rs.core.Application; + +/** + * Configures Jakarta RESTful Web Services for the application. + * @author Juneau + */ +@ApplicationPath("resources") +public class JakartaRestConfiguration extends Application { + +} diff --git a/src/main/java/com/mycompany/sdis29medhiemile/resources/JakartaEE10Resource.java b/src/main/java/com/mycompany/sdis29medhiemile/resources/JakartaEE10Resource.java new file mode 100644 index 0000000..a70ecf8 --- /dev/null +++ b/src/main/java/com/mycompany/sdis29medhiemile/resources/JakartaEE10Resource.java @@ -0,0 +1,20 @@ +package com.mycompany.sdis29medhiemile.resources; + +import jakarta.ws.rs.GET; +import jakarta.ws.rs.Path; +import jakarta.ws.rs.core.Response; + +/** + * + * @author + */ +@Path("jakartaee10") +public class JakartaEE10Resource { + + @GET + public Response ping(){ + return Response + .ok("ping Jakarta EE") + .build(); + } +} diff --git a/src/main/java/com/sdsi29/bdd/caserneMySQL.java b/src/main/java/com/sdsi29/bdd/caserneMySQL.java new file mode 100644 index 0000000..dbb960e --- /dev/null +++ b/src/main/java/com/sdsi29/bdd/caserneMySQL.java @@ -0,0 +1,49 @@ +/* + * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license + * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template + */ +package com.sdsi29.bdd; + +import com.sdsi29.beans.caserne; +import io.github.cdimascio.dotenv.Dotenv; +import java.sql.Connection; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.sql.SQLException; + +/** + * + * @author emile.malcuit + */ + +/** + * Class CaserneMySQL + * Classe de récupération bdd caserne + * @author emile.malcuit + */ +public class caserneMySQL { + Dotenv dotenv = Dotenv.load(); + Connection laConnexion = connexionSQL.getConnect(dotenv.get("MYSQL_HOST"), dotenv.get("MYSQL_DATABASE"), dotenv.get("MYSQL_USER"), dotenv.get("MYSQL_PASSWORD")); + + public caserne getLaCaserne (String loginPompier){ + caserne laCaserne = new caserne(); + String requete = "SELECT caserne.id, caserne.nom, caserne.adresse, caserne.groupement " + + "FROM `pompier` INNER JOIN caserne on pompier.idCaserne = caserne.id WHERE pompier.login LIKE ?"; + + try (PreparedStatement stmt = laConnexion.prepareStatement(requete)){ + stmt.setString(1, loginPompier); + ResultSet result = stmt.executeQuery(); + + if(result.next()){ + laCaserne.setIdCaserne(result.getInt("id")); + laCaserne.setNomCaserne(result.getString("nom")); + laCaserne.setAdresse(result.getString("adresse")); + laCaserne.setGroupement(result.getString("groupement")); + } + }catch(SQLException ex){ + System.out.println(ex.toString()); + } + + return laCaserne; + } +} diff --git a/src/main/java/com/sdsi29/bdd/connexionSQL.java b/src/main/java/com/sdsi29/bdd/connexionSQL.java new file mode 100644 index 0000000..72b152a --- /dev/null +++ b/src/main/java/com/sdsi29/bdd/connexionSQL.java @@ -0,0 +1,62 @@ +package com.sdsi29.bdd; + +/* +Connexion.java +Classe permettant d'établir une connexion avec une base de données mySQL +*/ +import java.sql.Connection; +import java.sql.DriverManager; + +public class connexionSQL { + private static Connection connect; // Variable de connexion + + /** + * Constructeur d'une connexion avec une base de données + * @param serveur nom du serveur, localhost si local + * @param bdd nom de la base de données + * @param nomUtil nom utilisateur + * @param mdp mot de passe lié à l'utilisateur + */ + connexionSQL(String serveur, String bdd, String nomUtil, String mdp) { + try { + // 1. Chargement du driver + //Class.forName("com.mysql.jdbc.Driver"); + System.out.println("Driver MariaDb Ok"); + //Class.forName("org.mariadb.jdbc.Driver"); + + + // 2. Initialisation des paramètres de connexion + String host = serveur; // Serveur de bd + String dbname = bdd; // Nom bd + String url = "jdbc:mariadb://" + host + ":3306/" + dbname; // url de connexion + System.out.println("url : "+url); + String user = nomUtil; // nom du user + System.out.println("nomUtil : "+nomUtil); + String passwd = mdp; // mot de passe + System.out.println("mdp : "+mdp); + + // 3. Connexion + connect = (Connection) DriverManager.getConnection(url, user, passwd); + System.out.println("Connexion réussie !"); + + } catch (Exception e) { + e.printStackTrace(); + } + } + + /** + * Retourne la connection �tablie (Cr�ation d'une connection si elle n'existe pas) + * @param serveur nom du serveur, localhost si local + * @param bdd nom de la base de donn�es + * @param nomUtil nom utilisateur + * @param mdp mot de passe li� � l'utilisateur + * @return connection �tablie + */ + public static Connection getConnect(String serveur, String bdd, String nomUtil, String mdp) { + if (connect == null) { + new connexionSQL(serveur, bdd, nomUtil, mdp); + } + System.out.println("Connexion validé"); + return connect; + } +} diff --git a/src/main/java/com/sdsi29/bdd/pompierMySQL.java b/src/main/java/com/sdsi29/bdd/pompierMySQL.java new file mode 100644 index 0000000..ce62713 --- /dev/null +++ b/src/main/java/com/sdsi29/bdd/pompierMySQL.java @@ -0,0 +1,157 @@ +/* + * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license + * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template + */ +package com.sdsi29.bdd; + +import com.sdsi29.beans.pompier; +import io.github.cdimascio.dotenv.Dotenv; +import java.sql.Connection; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.sql.SQLException; +import java.util.ArrayList; + +/** + * + * @author emile.malcuit + */ +public class pompierMySQL { + Dotenv dotenv = Dotenv.load(); + Connection laConnexion = connexionSQL.getConnect(dotenv.get("MYSQL_HOST"), dotenv.get("MYSQL_DATABASE"), dotenv.get("MYSQL_USER"), dotenv.get("MYSQL_PASSWORD")); + + public pompier read(int id) { + pompier lecture = new pompier(); + String sql = "SELECT id, nom, prenom, mail, idCaserne,( SELECT parametre.libelle FROM parametre WHERE idType = 'grade' AND po.grade = parametre.indice) AS grade," + + "(SELECT parametre.libelle FROM parametre WHERE idType = 'statAgt' and po.statut = parametre.indice) AS status," + + "typePers FROM pompier po WHERE id = ? ;"; + + try (PreparedStatement stmt = laConnexion.prepareStatement(sql)) { + stmt.setInt(1, id); + ResultSet result = stmt.executeQuery(); + + if (result.next()) { + lecture.setId(result.getInt("id")); + lecture.setCaserne(result.getInt("idCaserne")); + lecture.setNom(result.getString("nom")); + lecture.setPrenom(result.getString("prenom")); + lecture.setStatus(result.getString("status")); + lecture.setTypePers(result.getInt("typePers")); + lecture.setMail(result.getString("mail")); + lecture.setGrade(result.getString("grade")); + } + }catch (SQLException ex){ + + } + return lecture; + } + + public boolean authentifier(String login, String motDePasse) throws SQLException { + String sql = "SELECT * FROM pompier WHERE login = ? AND mdp = ?"; + try (PreparedStatement stmt = laConnexion.prepareStatement(sql)) { + stmt.setString(1, login); + stmt.setString(2, motDePasse); + ResultSet result = stmt.executeQuery(); + return result.next(); + } + } + + public boolean newPompier(String nom, String prenom, String login, String email, String mdp, int grade, int idCaserne) throws SQLException { + String sql = "INSERT INTO pompier (nom, prenom, mail, idCaserne, statut, typePers, mdp, mdps, salt, login, grade)\n" + +" VALUES (?, ?, ?, ?, 1, 2, ?, 'auhfuhuhuh7262', 'ijirelkj26988', ?, ?)"; + + try (PreparedStatement stmt = laConnexion.prepareStatement(sql)) { + stmt.setString(1, nom); + stmt.setString(2, prenom); + stmt.setString(3, email); + stmt.setInt(4, idCaserne); + stmt.setString(5, mdp); + stmt.setString(6, login); + stmt.setInt(7, grade); + int rows = stmt.executeUpdate(); + return rows > 0; + } +} + + + + public String getGrade(String login) throws SQLException { + String grade = null; + String sql = "SELECT libelle FROM pompierParametre WHERE login = ? AND idType = 'grade'"; + + try (PreparedStatement stmt = laConnexion.prepareStatement(sql)) { + stmt.setString(1, login); + ResultSet result = stmt.executeQuery(); + result.next(); + grade = result.getString("libelle"); + } + return grade; +} + + public ArrayList getLesPompiersCaserne (int caserne){ + + ArrayList lesPompiers = new ArrayList<>(); + + String requete = "SELECT id, nom, prenom, mail, idCaserne, " + + "( SELECT parametre.libelle FROM parametre WHERE idType = 'grade' AND po.grade = parametre.indice) AS grade, " + + "(SELECT parametre.libelle FROM parametre WHERE idType = 'statAgt' and po.statut = parametre.indice) AS status, " + + "typePers FROM pompier po WHERE idCaserne = ? ;"; + try (PreparedStatement stmt = laConnexion.prepareStatement(requete)){ + stmt.setInt(1, caserne); + ResultSet result = stmt.executeQuery(); + + while(result.next()){ + + pompier resultPompier = new pompier(result.getInt("id"), + result.getString("nom"), result.getString("prenom"), + result.getString("mail"), result.getInt("idCaserne"), + result.getString("status"), result.getString("grade"), + result.getInt("typePers")); + + lesPompiers.add(resultPompier); + } + }catch(SQLException ex){ + + } + return lesPompiers; + } + + public int getIndiceGrade (String gradeLibelle){ + int indiceGrade = 0; + String requete = "SELECT indice FROM parametre WHERE idType like 'grade' and libelle like ?"; + + try (PreparedStatement stmt = laConnexion.prepareStatement(requete)){ + stmt.setString(1, gradeLibelle); + ResultSet result = stmt.executeQuery(); + + if(result.next()){ + indiceGrade = result.getInt("indice"); + } + }catch(SQLException ex){ + System.out.println(ex); + } + return indiceGrade; + } + + public void updatePompier(int id, String mail, int grade) { + String requete = "UPDATE `pompier` SET mail = ?, grade = ? WHERE id = ?"; + + try (PreparedStatement stmt = laConnexion.prepareStatement(requete)) { + stmt.setString(1, mail); + stmt.setInt(2, grade); + stmt.setInt(3, id); + + System.out.println("Tentative de mise à jour de : " + id); + int rowsAffected = stmt.executeUpdate(); + + if (rowsAffected > 0) { + System.out.println("Mise à jour réussie pour " + rowsAffected + " pompier(s)."); + } else { + System.out.println("Aucun pompier mis à jour. Vérifie les noms/prénoms."); + } + } catch (SQLException ex) { + System.out.println("Erreur SQL : " + ex.getMessage()); + } + } +} + diff --git a/src/main/java/com/sdsi29/beans/caserne.java b/src/main/java/com/sdsi29/beans/caserne.java new file mode 100644 index 0000000..f554f3b --- /dev/null +++ b/src/main/java/com/sdsi29/beans/caserne.java @@ -0,0 +1,64 @@ +/* + * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license + * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template + */ +package com.sdsi29.beans; + +/** + * + * @author emile.malcuit + */ +public class caserne { + private int idCaserne; + private String nomCaserne; + private String adresse; + private String groupement; + + + public caserne(){ + + } + + public caserne(int idCaserne, String nomCaserne, String adresse, String groupement){ + this.idCaserne = idCaserne; + this.nomCaserne = nomCaserne; + this.adresse = adresse; + this.groupement = groupement; + } + + public int getIdCaserne() { + return idCaserne; + } + + public void setIdCaserne(int idCaserne) { + this.idCaserne = idCaserne; + } + + public String getNomCaserne() { + return nomCaserne; + } + + public void setNomCaserne(String nomCaserne) { + this.nomCaserne = nomCaserne; + } + + public String getAdresse() { + return adresse; + } + + public void setAdresse(String adresse) { + this.adresse = adresse; + } + + public String getGroupement() { + return groupement; + } + + public void setGroupement(String groupement) { + this.groupement = groupement; + } + + + +} + diff --git a/src/main/java/com/sdsi29/beans/listePompier.java b/src/main/java/com/sdsi29/beans/listePompier.java new file mode 100644 index 0000000..f34a9e3 --- /dev/null +++ b/src/main/java/com/sdsi29/beans/listePompier.java @@ -0,0 +1,28 @@ +/* + * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license + * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template + */ +package com.sdsi29.beans; + +import java.util.ArrayList; + +/** + * + * @author emile.malcuit + */ +public class listePompier { + private ArrayList lesPompiers = new ArrayList<>(); + + public boolean addPompier(pompier unPompier){ + lesPompiers.add(unPompier); + return false; + } + + public ArrayList getLesPompiers(){ + return lesPompiers; + } + + public void setLesPompiers(ArrayList lesPompiers){ + this.lesPompiers = lesPompiers; + } +} diff --git a/src/main/java/com/sdsi29/beans/pompier.java b/src/main/java/com/sdsi29/beans/pompier.java new file mode 100644 index 0000000..55d96e6 --- /dev/null +++ b/src/main/java/com/sdsi29/beans/pompier.java @@ -0,0 +1,183 @@ +/* + * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license + * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template + */ +package com.sdsi29.beans; + +import java.util.Objects; + +/** + * + * @author emile.malcuit + */ +public class pompier { + private int id; + private String nom; + private String prenom; + private String mail; + private int Caserne; + private String status; //aller cherché le libelle de status + private String grade; //utilisé le grade(int) pour aller chercher le libelle + private int typePers; + + + + public pompier(){ + + } + + + + /** + * Constructeur 1: pompier + * Ce constructeur sert à la récupération des données depuis la bdd + * @param id + * @param nom + * @param prenom + * @param mail + * @param Caserne + * @param status + * @param grade + * @param typePers + */ + public pompier(int id, String nom, String prenom, String mail, int Caserne, + String status, String grade, int typePers) { + this.id = id; + this.nom = nom; + this.prenom = prenom; + this.mail = mail; + this.Caserne = Caserne; + this.status = status; + this.grade = grade; + this.typePers = typePers; + } + + /** + * Constructeur 2: pompier + * Ce constructeur est utilisé par le chef de caserne pour créer un nouveau personnel + * @param nom + * @param prenom + * @param mail + * @param Caserne + * @param status + * @param grade + * @param typePers + */ + public pompier(String nom, String prenom, String mail, int Caserne, + String status, String grade, int typePers) { + this.nom = nom; + this.prenom = prenom; + this.mail = mail; + this.Caserne = Caserne; + this.status = status; + this.grade = grade; + this.typePers = typePers; + } + + public int getId() { + return id; + } + + public void setId(int id){ + this.id = id; + } + + public String getNom() { + return nom; + } + + public void setNom(String nom) { + this.nom = nom; + } + + public String getPrenom() { + return prenom; + } + + public void setPrenom(String prenom) { + this.prenom = prenom; + } + + public String getMail() { + return mail; + } + + public void setMail(String mail) { + this.mail = mail; + } + + public int getCaserne() { + return Caserne; + } + + public void setCaserne(int Caserne) { + this.Caserne = Caserne; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public String getGrade() { + return grade; + } + + public void setGrade(String grade) { + this.grade = grade; + } + + public int getTypePers() { + return typePers; + } + + public void setTypePers(int typePers) { + this.typePers = typePers; + } + + + @Override + public boolean equals(Object obj) { + if (this == obj) { + return true; + } + if (obj == null) { + return false; + } + if (getClass() != obj.getClass()) { + return false; + } + final pompier other = (pompier) obj; + if (this.id != other.id) { + return false; + } + if (this.Caserne != other.Caserne) { + return false; + } + if (this.typePers != other.typePers) { + return false; + } + if (!Objects.equals(this.nom, other.nom)) { + return false; + } + if (!Objects.equals(this.prenom, other.prenom)) { + return false; + } + if (!Objects.equals(this.mail, other.mail)) { + return false; + } + if (!Objects.equals(this.status, other.status)) { + return false; + } + return Objects.equals(this.grade, other.grade); + } + + + @Override + public String toString() { + return "Pompier{" + "id=" + id + ", nom=" + nom + ", prenom=" + prenom + ", mail=" + mail + ", Caserne=" + Caserne + ", status=" + status + ", grade=" + grade + ", typePers=" + typePers + '}'; + } +} diff --git a/src/main/java/com/sdsi29/controler/AjoutPompierServlet.java b/src/main/java/com/sdsi29/controler/AjoutPompierServlet.java new file mode 100644 index 0000000..3c9f656 --- /dev/null +++ b/src/main/java/com/sdsi29/controler/AjoutPompierServlet.java @@ -0,0 +1,121 @@ +/* + * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license + * Click nbfs://nbhost/SystemFileSystem/Templates/JSP_Servlet/Servlet.java to edit this template + */ +package com.sdsi29.controler; + +import com.sdsi29.bdd.pompierMySQL; +import com.sdsi29.beans.caserne; +import java.io.IOException; +import java.io.PrintWriter; +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 java.sql.SQLException; + +/** + * + * @author emile.malcuit + */ +@WebServlet(name="AjoutPompier", urlPatterns={"/Ajout"}) +public class AjoutPompierServlet 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 AjoutPompierServlet"); + out.println(""); + out.println(""); + out.println("

Servlet AjoutPompierServlet 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); + getServletContext().getRequestDispatcher("/WEB-INF/AjoutPompierJSP.jsp").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 { + System.out.print("test ajout pompier"); + //processRequest(request, response); + String nom = request.getParameter("nom"); + String prenom = request.getParameter("prenom"); + String login = request.getParameter("login"); + String email = request.getParameter("email"); + String mdp = request.getParameter("mdp"); + int grade = Integer.parseInt(request.getParameter("grade")); + + HttpSession laSession = request.getSession(); + caserne laCaserne = (caserne)laSession.getAttribute("laCaserne"); + int caserne = laCaserne.getIdCaserne(); + + try { + pompierMySQL creaUnPompier = new pompierMySQL(); + if (creaUnPompier.newPompier(nom, prenom, login, email, mdp, grade, caserne)) { + request.setAttribute("ajoutValide", "Bon ajout d'un pompier"); + getServletContext().getRequestDispatcher("/Accueil").forward(request, response); + }else { + + request.setAttribute("ajoutNonValide", "Erreur de la création d'un pompier"); + getServletContext().getRequestDispatcher("/Accueil").forward(request, response); + } + + }catch (SQLException e) { + request.setAttribute("Erreur e", e); + getServletContext().getRequestDispatcher("/WEB-INF/ConnexionJSP.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/main/java/com/sdsi29/controler/AuthentificationServlet.java b/src/main/java/com/sdsi29/controler/AuthentificationServlet.java new file mode 100644 index 0000000..01e7434 --- /dev/null +++ b/src/main/java/com/sdsi29/controler/AuthentificationServlet.java @@ -0,0 +1,122 @@ +/* + * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license + * Click nbfs://nbhost/SystemFileSystem/Templates/JSP_Servlet/Servlet.java to edit this template + */ +package com.sdsi29.controler; + +import com.sdsi29.bdd.caserneMySQL; +import com.sdsi29.bdd.pompierMySQL; +import com.sdsi29.beans.caserne; +import java.io.IOException; +import java.io.PrintWriter; +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 java.sql.SQLException; + +/** + * + * @author emile.malcuit + */ +@WebServlet(name="Authentification", urlPatterns={"/Authentification"}) +public class AuthentificationServlet 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 AuthentificationServlet"); + out.println(""); + out.println(""); + out.println("

Servlet AuthentificationServlet 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 { + getServletContext().getRequestDispatcher("/WEB-INF/ConnexionJSP.jsp").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 { + System.out.print("Test de passage dans le do post"); + String login = request.getParameter("login"); + String mdp = request.getParameter("motdepasse"); + System.out.print(login); + + try { + pompierMySQL unPompier = new pompierMySQL(); + if (unPompier.authentifier(login, mdp)) { + + String gradePompier = unPompier.getGrade(login); + System.out.print("Test d'obtention du grade" + "" + gradePompier); + + caserneMySQL caserneSQL = new caserneMySQL(); + caserne laCaserne = caserneSQL.getLaCaserne(login); + System.out.println(laCaserne.getAdresse()); + + HttpSession maSession = request.getSession(); + maSession.setAttribute("connexionValide", gradePompier); + maSession.setAttribute("laCaserne", laCaserne); + + request.setAttribute("valide", "Bienvenue" + " " + gradePompier + " " + login + "!"); + getServletContext().getRequestDispatcher("/Accueil").forward(request, response); + } else { + request.setAttribute("erreur", "Identifiant ou mot de passe incorrect"); + getServletContext().getRequestDispatcher("/WEB-INF/ConnexionJSP.jsp").forward(request, response); + } + } catch (SQLException e) { + request.setAttribute("erreur", "Erreur de connexion à la base de données"); + getServletContext().getRequestDispatcher("/WEB-INF/ConnexionJSP.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/main/java/com/sdsi29/controler/ListePompierServlet.java b/src/main/java/com/sdsi29/controler/ListePompierServlet.java new file mode 100644 index 0000000..75e238e --- /dev/null +++ b/src/main/java/com/sdsi29/controler/ListePompierServlet.java @@ -0,0 +1,110 @@ +/* + * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license + * Click nbfs://nbhost/SystemFileSystem/Templates/JSP_Servlet/Servlet.java to edit this template + */ +package com.sdsi29.controler; + +import com.sdsi29.bdd.pompierMySQL; +import com.sdsi29.beans.caserne; +import com.sdsi29.beans.pompier; +import java.io.IOException; +import java.io.PrintWriter; +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 java.util.ArrayList; + +/** + * + * @author emile.malcuit + */ +@WebServlet(name="Accueil", urlPatterns={"/Accueil"}) +public class ListePompierServlet 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 ListePompierServlet"); + out.println(""); + out.println(""); + out.println("

Servlet ListePompierServlet 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 { + System.out.println("Hello vous etes dans liste pompier servlet"); + pompierMySQL poSQL = new pompierMySQL(); + HttpSession maSession = request.getSession(); + if(maSession.getAttribute("laCaserne") != null){ + caserne laCaserne = (caserne) maSession.getAttribute("laCaserne"); + ArrayList lesPompiers = poSQL.getLesPompiersCaserne(laCaserne.getIdCaserne()); + request.setAttribute("lesPompiers", lesPompiers); + } + getServletContext().getRequestDispatcher("/WEB-INF/ListePompierJSP.jsp").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 { + //processRequest(request, response); + System.out.println("Hello doPost listePompier"); + System.out.println("Hello vous etes dans liste pompier servlet"); + pompierMySQL poSQL = new pompierMySQL(); + HttpSession maSession = request.getSession(); + caserne laCaserne = (caserne) maSession.getAttribute("laCaserne"); + ArrayList lesPompiers = poSQL.getLesPompiersCaserne(laCaserne.getIdCaserne()); + + request.setAttribute("lesPompiers", lesPompiers); + + getServletContext().getRequestDispatcher("/WEB-INF/ListePompierJSP.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/main/java/com/sdsi29/controler/ModificationServlet.java b/src/main/java/com/sdsi29/controler/ModificationServlet.java new file mode 100644 index 0000000..b6dd535 --- /dev/null +++ b/src/main/java/com/sdsi29/controler/ModificationServlet.java @@ -0,0 +1,114 @@ +/* + * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license + * Click nbfs://nbhost/SystemFileSystem/Templates/JSP_Servlet/Servlet.java to edit this template + */ +package com.sdsi29.controler; + +import com.sdsi29.bdd.pompierMySQL; +import com.sdsi29.beans.pompier; +import java.io.IOException; +import java.io.PrintWriter; +import jakarta.servlet.ServletException; +import jakarta.servlet.annotation.WebServlet; +import jakarta.servlet.http.HttpServlet; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; + +/** + * + * @author emile.malcuit + */ +@WebServlet(name="Modification", urlPatterns={"/Modification"}) +public class ModificationServlet 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 ModificationServlet"); + out.println(""); + out.println(""); + out.println("

Servlet ModificationServlet 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 { + System.out.println("You are in ModificationServlet"); + int idLePompier = Integer.parseInt(request.getParameter("id")); + System.out.println(idLePompier); + + pompierMySQL readLePompier = new pompierMySQL(); + pompier lePompier = readLePompier.read(idLePompier); + + request.setAttribute("lePompier", lePompier); + getServletContext().getRequestDispatcher("/WEB-INF/ModificationPompierJSP.jsp").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 { + System.out.println("doPost ModificationServlet"); + String mail = (String) request.getParameter("mail"); + int grade = Integer.parseInt(request.getParameter("grade")); + String nom = (String) request.getParameter("nom"); + String prenom= (String) request.getParameter("prenom"); + int id = Integer.parseInt(request.getParameter("id")); + System.out.println(nom); + System.out.println(prenom); + System.out.println(mail); + System.out.println(grade); + pompierMySQL poSQL = new pompierMySQL(); + poSQL.updatePompier(id, mail, grade); + System.out.println("hello 30"); + + getServletContext().getRequestDispatcher("/Accueil").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/main/java/com/sdsi29/controler/ProfilServlet.java b/src/main/java/com/sdsi29/controler/ProfilServlet.java new file mode 100644 index 0000000..17a38aa --- /dev/null +++ b/src/main/java/com/sdsi29/controler/ProfilServlet.java @@ -0,0 +1,87 @@ +/* + * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license + * Click nbfs://nbhost/SystemFileSystem/Templates/JSP_Servlet/Servlet.java to edit this template + */ +package com.sdsi29.controler; + +import java.io.IOException; +import java.io.PrintWriter; +import jakarta.servlet.ServletException; +import jakarta.servlet.annotation.WebServlet; +import jakarta.servlet.http.HttpServlet; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; + +/** + * + * @author emile.malcuit + */ +@WebServlet(name="Profil", urlPatterns={"/Profil"}) +public class ProfilServlet 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 ProfilServlet"); + out.println(""); + out.println(""); + out.println("

Servlet ProfilServlet 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/main/resources/META-INF/persistence.xml b/src/main/resources/META-INF/persistence.xml new file mode 100644 index 0000000..7582bf1 --- /dev/null +++ b/src/main/resources/META-INF/persistence.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/src/main/webapp/WEB-INF/AjoutPompierJSP.jsp b/src/main/webapp/WEB-INF/AjoutPompierJSP.jsp new file mode 100644 index 0000000..27830ba --- /dev/null +++ b/src/main/webapp/WEB-INF/AjoutPompierJSP.jsp @@ -0,0 +1,72 @@ +<%-- + Document : AjoutPompierJSP.jsp + Created on : 6 oct. 2025, 16:35:40 + Author : emile.malcuit +--%> + +<%@page contentType="text/html" pageEncoding="UTF-8"%> + + + + + + + <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> + + Ajout d'un pompier + + + <%@include file="parts/enTete.jspf" %> + <%@include file="parts/menuBar.jspf" %> + + + +
+ +
+
+ +

Accès refusé, veuilez vous connecter

+
+ + diff --git a/src/main/webapp/WEB-INF/ConnexionJSP.jsp b/src/main/webapp/WEB-INF/ConnexionJSP.jsp new file mode 100644 index 0000000..b0b295d --- /dev/null +++ b/src/main/webapp/WEB-INF/ConnexionJSP.jsp @@ -0,0 +1,47 @@ +<%-- + Document : ConnexionJSP + Created on : 6 oct. 2025, 15:36:51 + Author : emile.malcuit +--%> + +<%@page contentType="text/html" pageEncoding="UTF-8"%> + + + + + Connexion + + + + + <%@include file="parts/enTete.jspf" %> + <%@include file="parts/menuBarNonCo.jspf" %> + + <% String erreur = (String) request.getAttribute("erreur"); %> + <% if (erreur != null) { %> +

<%= erreur %>

+ <% } %> + +
+
+

Seul les chefs de centre, les pompiers volontaires et les gestionnaires d’appel sont autorisés à se connecter

+
+ + +
+ + + diff --git a/src/main/webapp/WEB-INF/ListePompierJSP.jsp b/src/main/webapp/WEB-INF/ListePompierJSP.jsp new file mode 100644 index 0000000..2ec9401 --- /dev/null +++ b/src/main/webapp/WEB-INF/ListePompierJSP.jsp @@ -0,0 +1,49 @@ +<%-- + Document : ListePompierJSP + Created on : 6 oct. 2025, 15:37:31 + Author : emile.malcuit +--%> + +<%@page contentType="text/html" pageEncoding="UTF-8"%> + + + + + + + Accueil + + + <%@include file="parts/enTete.jspf" %> + <%@include file="parts/menuBar.jspf" %> + <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> + + + <% String valide = (String) request.getAttribute("valide"); %> + <% if (valide != null) { %> +

<%= valide %>

+ <% } %> +
+
+ +
+
${unPompier.id} : ${unPompier.nom}
+
+

Grade : ${unPompier.grade}

+

Status : ${unPompier.status}

+

Mail : ${unPompier.mail}

+
+ Modifier les données +
+
+
+
+ + + + +

Accès refusé, veuilez vous connecter

+
+ + + diff --git a/src/main/webapp/WEB-INF/ModificationPompierJSP.jsp b/src/main/webapp/WEB-INF/ModificationPompierJSP.jsp new file mode 100644 index 0000000..4c470e5 --- /dev/null +++ b/src/main/webapp/WEB-INF/ModificationPompierJSP.jsp @@ -0,0 +1,73 @@ +<%-- + Document : ModificationPompierJSP + Created on : 6 oct. 2025, 15:37:18 + Author : emile.malcuit +--%> + +<%@page contentType="text/html" pageEncoding="UTF-8"%> + + + + + + + JSP Page + + + <%@include file="parts/enTete.jspf" %> + <%@include file="parts/menuBar.jspf" %> +
+ +
+ +
+ + diff --git a/src/main/webapp/WEB-INF/ProfilJSP.jsp b/src/main/webapp/WEB-INF/ProfilJSP.jsp new file mode 100644 index 0000000..e504eee --- /dev/null +++ b/src/main/webapp/WEB-INF/ProfilJSP.jsp @@ -0,0 +1,17 @@ +<%-- + Document : ProfilJSP + Created on : 6 oct. 2025, 15:38:13 + Author : emile.malcuit +--%> + +<%@page contentType="text/html" pageEncoding="UTF-8"%> + + + + + JSP Page + + +

Hello World!

+ + diff --git a/src/main/webapp/WEB-INF/beans.xml b/src/main/webapp/WEB-INF/beans.xml new file mode 100644 index 0000000..9dfae34 --- /dev/null +++ b/src/main/webapp/WEB-INF/beans.xml @@ -0,0 +1,6 @@ + + + \ No newline at end of file diff --git a/src/main/webapp/WEB-INF/parts/enTete.jspf b/src/main/webapp/WEB-INF/parts/enTete.jspf new file mode 100644 index 0000000..20a79ac --- /dev/null +++ b/src/main/webapp/WEB-INF/parts/enTete.jspf @@ -0,0 +1,11 @@ +<%-- any content can be specified here e.g.: --%> +<%@ page pageEncoding="UTF-8" %> +
+ Logo SDIS 29 +
+ Service Départemental d’Incendie et Secours +
+
+ connexionIcon +
+
\ No newline at end of file diff --git a/src/main/webapp/WEB-INF/parts/menuBar.jspf b/src/main/webapp/WEB-INF/parts/menuBar.jspf new file mode 100644 index 0000000..9919af1 --- /dev/null +++ b/src/main/webapp/WEB-INF/parts/menuBar.jspf @@ -0,0 +1,14 @@ +<%-- any content can be specified here e.g.: --%> +<%@ page pageEncoding="UTF-8" %> + diff --git a/src/main/webapp/WEB-INF/parts/menuBarNonCo.jspf b/src/main/webapp/WEB-INF/parts/menuBarNonCo.jspf new file mode 100644 index 0000000..1b8bcd4 --- /dev/null +++ b/src/main/webapp/WEB-INF/parts/menuBarNonCo.jspf @@ -0,0 +1,11 @@ +<%-- any content can be specified here e.g.: --%> +<%@ page pageEncoding="UTF-8" %> + diff --git a/src/main/webapp/WEB-INF/web.xml b/src/main/webapp/WEB-INF/web.xml new file mode 100644 index 0000000..b9272dc --- /dev/null +++ b/src/main/webapp/WEB-INF/web.xml @@ -0,0 +1,51 @@ + + + + Accueil + + + Authentification + com.sdsi29.controler.AuthentificationServlet + + + Accueil + com.sdsi29.controler.ListePompierServlet + + + Modification + com.sdsi29.controler.ModificationServlet + + + Profil + com.sdsi29.controler.ProfilServlet + + + AjoutPompier + com.sdsi29.controler.AjoutPompierServlet + + + Authentification + /Authentification + + + Accueil + /Accueil + + + Modification + /Modification + + + Profil + /Profil + + + AjoutPompier + /Ajout + + + + 30 + + + diff --git a/src/main/webapp/css/pageStyle.css b/src/main/webapp/css/pageStyle.css new file mode 100644 index 0000000..1a17e7b --- /dev/null +++ b/src/main/webapp/css/pageStyle.css @@ -0,0 +1,187 @@ +/* +Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license +Click nbfs://nbhost/SystemFileSystem/Templates/JSP_Servlet/CascadeStyleSheet.css to edit this template +*/ +/* + Created on : 9 oct. 2025, 11:05:39 + Author : emile.malcuit +*/ +body { + margin: 0; + padding: 0; + font-family: Arial, sans-serif; + background-color: #39322e; + color: white; +} + +.container { + display: flex; + justify-content: center; + align-items: center; + min-height: 75vh; + gap: 100px; + padding: 20px; +} + +.info-box { + max-width: 300px; + font-size: 1.2em; + text-align: center; +} + +.login-form { + background-color: #a3130e; + padding: 30px; + border-radius: 20px; + width: 300px; + display: flex; + flex-direction: column; + color: white; +} + +.imgCo { + display: flex; + justify-content: center; + margin-bottom: 15px; +} + +.imgCo img { + width: 60px; + height: auto; +} + +.login-form h2 { + text-align: center; + margin-bottom: 20px; +} + +.login-form label { + margin-top: 10px; + font-weight: bold; +} + +.login-form input { + padding: 8px; + margin-top: 5px; + border: none; + border-bottom: 2px solid #333; + background: transparent; + color: white; + outline: none; +} + +.login-form button { + margin-top: 20px; + padding: 10px; + background-color: #2e2a28; + color: white; + border: none; + border-radius: 8px; + cursor: pointer; + font-size: 1em; +} + +.login-form button:hover { + background-color: #444; +} + +select { + width: 100%; + padding: 10px; + margin-top: 5px; + margin-bottom: 20px; + background-color: #b71c1c; /* même rouge que le fond du formulaire */ + color: white; + border: none; + border-bottom: 2px solid #444; + border-radius: 4px; + font-size: 16px; + font-family: inherit; + appearance: none; /* Supprime le style natif */ + -webkit-appearance: none; + -moz-appearance: none; + cursor: pointer; + box-sizing: border-box; +} + +/* Facultatif : icône de flèche personnalisée */ +select::after { + content: '▼'; + position: absolute; + right: 15px; + top: calc(50% - 7px); + pointer-events: none; +} + +/* Focus */ +select:focus { + outline: none; + border-bottom: 2px solid white; +} + + + .card-container { + display: flex; + flex-wrap: wrap; + gap: 20px; /* espace entre cards */ + max-width: 1080px; /* 5 * 200 + 4 * 20 */ + justify-content: center; + } + + .card { + background-color: #292323; + color: #fff; + width: 200px; + height: 200px; + border-radius: 12px; + overflow: hidden; + transition: transform 0.3s ease, box-shadow 0.3s ease; + display: flex; + flex-direction: column; + padding: 0; + } + + .card:hover { + transform: translateY(-10px); + box-shadow: 0 16px 40px rgba(163, 19, 14, 0.6); + } + + .card-header { + background-color: #a3130e; + padding: 8px 12px; + font-size: 1.1rem; + font-weight: bold; + line-height: 1.2; + } + + .card-body { + padding: 5px 12px; + font-size: 0.9rem; + line-height: 1; + flex-grow: 1; + overflow: hidden; + text-overflow: ellipsis; + } + + .card-button { + margin: 10px auto 12px; + padding: 8px 16px; + background-color: #a3130e; + color: #fff; + border: none; + border-radius: 8px; + box-sizing: border-box; + text-align: center; + font-weight: 600; + cursor: pointer; + transition: background-color 0.3s ease; + text-decoration: none; + font-size: 0.9rem; + width: calc(100% - 24px); + max-width: 176px; + display: block; + } + + .card-button:hover { + background-color: #7f0e0a; + } diff --git a/src/main/webapp/css/styleHeaderNav.css b/src/main/webapp/css/styleHeaderNav.css new file mode 100644 index 0000000..c3b440d --- /dev/null +++ b/src/main/webapp/css/styleHeaderNav.css @@ -0,0 +1,118 @@ +/* +Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license +Click nbfs://nbhost/SystemFileSystem/Templates/JSP_Servlet/CascadeStyleSheet.css to edit this template +*/ +/* + Created on : 6 oct. 2025, 17:29:05 + Author : emile.malcuit +*/ +.header { + display: flex; + align-items: center; + justify-content: space-between; + background-color: #39322e; /* Dark background for the header */ + padding: 10px 20px; + color: white; +} + +/* Logo Image styling */ +.header img { + height: 50px; /* Adjust height of the logo */ + width: auto; +} + +/* Title styling */ +.header-title { + font-size: 24px; + font-weight: bold; + color: white; + flex-grow: 1; + text-align: center; +} + +/* Styling for the connection icon section */ +.logoConnexion a { + display: flex; + align-items: center; + justify-content: center; + width: 40px; + height: 40px; + background-color: #9b3d34; /* Red background */ + border-radius: 50%; + text-decoration: none; +} + +.logoConnexion img { + width: 20px; + height: auto; + color: white; +} + +/* Optional hover effect for the connection icon */ +.logoConnexion a:hover { + background-color: #c0392b; /* Slightly lighter red on hover */ +} + + + + +/* Style général pour la barre de navigation */ +nav { + display: flex; + padding: 6px; + padding-left: 0px; + background-color: #39322e; +} + +/* Conteneur arrondi pour les éléments de navigation */ +.arrondi { + display: flex; + align-items: center; + justify-content: space-between; + background-color: #a7170e; /* Couleur de fond similaire au header */ + padding: 10px 20px; + border-bottom-right-radius: 15px; + border-top-right-radius: 15px; + box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.1); /* Ombrage léger sous le conteneur */ + width: 100%; /* S'adapte à la largeur du conteneur parent */ + max-width: 600px; /* Limite la largeur pour une meilleure mise en page */ +} + +/* Conteneur de l'icône d'accueil */ +.accueil a { + display: block; + width: 40px; + height: 40px; +} + +/* Image d'accueil */ +.accueil img { + width: 100%; + height: 100%; + object-fit: contain; /* Pour que l'image s'adapte bien dans le conteneur */ +} + +/* Conteneur pour l'ajout de pompier */ +.menuButton a { + font-size: 16px; + font-weight: bold; + color: white; + text-decoration: none; + padding: 8px 16px; + background-color: #c0392b; /* Couleur de fond rouge */ + border-radius: 4px; /* Coins arrondis pour le bouton */ + transition: background-color 0.3s ease; +} + +/* Effet de survol sur le lien "Ajout d'un pompier" */ +.menuButton a:hover { + background-color: #e74c3c; /* Légèrement plus clair au survol */ +} + +/* Style de la police et mise en forme du texte dans le lien */ +.menuButton a { + display: flex; + align-items: center; + justify-content: center; +} + diff --git a/src/main/webapp/img/connexionIcon.png b/src/main/webapp/img/connexionIcon.png new file mode 100644 index 0000000000000000000000000000000000000000..9ee0c164250d7244c12431cb5244b0c50fe047e4 GIT binary patch literal 160404 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

lxfAS+a6yAsL^gqI}(=xpA@Rv^WuL&!@#wfrix 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 literal 0 HcmV?d00001 diff --git a/src/main/webapp/img/home.png b/src/main/webapp/img/home.png new file mode 100644 index 0000000000000000000000000000000000000000..95eae8b11cc0df701f224f3acbfd2bcf37a4a0aa GIT binary patch literal 8020 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 dNkl