entry : nomColonne.entrySet()) {
- if(!commandes.listNomDesColonnes.contains(supprimeCaracatresSpeciaux.TousLesCaracatresSpeciaux(entry.getValue()))) {
- commandes.listNomDesColonnes.add(supprimeCaracatresSpeciaux.TousLesCaracatresSpeciaux(entry.getValue()));
+ if(!commandes.listNomDesColonnes.contains(supprimeCaracatresSpeciaux.TousLesCaracteresSpeciaux(entry.getValue()))) {
+ commandes.listNomDesColonnes.add(supprimeCaracatresSpeciaux.TousLesCaracteresSpeciaux(entry.getValue()));
}else {
message.append("Le nom de la colonne " + entry.getKey() + " = "+ entry.getValue() + " est en double.
");
result =true;
diff --git a/src/base/base.java b/src/base/base.java
index ecc2c41..cfb91d0 100644
--- a/src/base/base.java
+++ b/src/base/base.java
@@ -55,8 +55,22 @@ public class base {
nBase.setAttribut("Excel_Feuille_Inscription",commandes.nomFeuilleExcel_Inscription);
+ nBase.setAttribut("nomColonne_Option_1", "Option_1");
+ nBase.setAttribut("Enabled_Colonne_Option_1", "false");
- String defaultValue = "2022-2023";
+ nBase.setAttribut("nomColonne_Option_2", "Atelier-rentree_horaire");
+ nBase.setAttribut("Enabled_Colonne_Option_2", "true");
+
+ nBase.setAttribut("nomColonne_Option_3", "Atelier_pre-rentree_enseignant");
+ nBase.setAttribut("Enabled_Colonne_Option_3", "true");
+
+ nBase.setAttribut("nomColonne_Option_4", "Atelier_pre-rentree_salle");
+ nBase.setAttribut("Enabled_Colonne_Option_4", "true");
+
+ nBase.setAttribut("nomColonne_Option_5", "Information");
+ nBase.setAttribut("Enabled_Colonne_Option_5", "false");
+
+ String defaultValue = "2023-2024";
String userInput = JOptionPane.showInputDialog("Quelle est l'année universitaire ? ",defaultValue);
String regex = "(\\d{4})-(\\d{4})";
@@ -72,7 +86,7 @@ public class base {
if (secondNumber==(firstNumber+1)) {
if(!userInput.isEmpty()) {
- userInput = "Years_" + supprimeCaracatresSpeciaux.TousLesCaracatresSpeciaux(userInput);
+ userInput = "Years_" + supprimeCaracatresSpeciaux.TousLesCaracteresSpeciaux(userInput);
nBase.addChild(new noeud(userInput));
nBase.setAttribut("defaut_Year", userInput);
diff --git a/src/base/recupeBases.java b/src/base/recupeBases.java
index 8290280..6c4fa1b 100644
--- a/src/base/recupeBases.java
+++ b/src/base/recupeBases.java
@@ -52,15 +52,11 @@ public class recupeBases {
File file = new File(filePath);
noeud nSauvegardeBase = null;
-
-
-
if (file.exists()) {
//lecture du fichier base.xml
String directoryName = Paths.get("").toAbsolutePath().toString()+ "/base/base_sauvegarde.xml";
String xmlString = lectureFileToString.lecture(directoryName);
nSauvegardeBase = lectureXML.lectureStringToNoeud(xmlString);
-
}
return nSauvegardeBase;
diff --git a/src/gestion_version/VersionChecker.java b/src/gestion_version/VersionChecker.java
index e60dafe..6f55fcd 100644
--- a/src/gestion_version/VersionChecker.java
+++ b/src/gestion_version/VersionChecker.java
@@ -100,6 +100,21 @@ public class VersionChecker {
}
+ pattern = "messageVersion-(.*?)-messageVersion";
+ regex = Pattern.compile(pattern);
+ matcher = regex.matcher(content);
+
+ // message alerte sur le site de la forge de chapril
+ while (matcher.find()) {
+ // Récupérer le texte entre les balises messageAlerte
+ // -br- retour à la ligne
+ // -b- et -/b- en gras
+ // -u- et -/u- soiligné
+ commandes.messageVersion = matcher.group(1);
+ commandes.messageVersion = commandes.messageVersion.replaceAll("-br-", "
").replaceAll("-b-", "").replaceAll("-/b-", "").replaceAll("-u-", "").replaceAll("-/u-", "")
+ .replaceAll("-h1-", "").replaceAll("-/h1-", "
").replaceAll("-h2-", "").replaceAll("-/h2-", "
").replaceAll("-p-", "").replaceAll("-/p-", "
");
+ }
+
// Définir le motif de la regex
pattern = "messageAlerte-(.*?)-messageAlerte";
@@ -113,11 +128,15 @@ public class VersionChecker {
// -b- et -/b- en gras
// -u- et -/u- soiligné
commandes.messageAlerte = matcher.group(1);
- commandes.messageAlerte = commandes.messageAlerte.replaceAll("-br-", "
").replaceAll("-b-", "").replaceAll("-/b-", "").replaceAll("-u-", "").replaceAll("-/u-", "");
+ commandes.messageAlerte = commandes.messageAlerte.replaceAll("-br-", "
").replaceAll("-b-", "").replaceAll("-/b-", "").replaceAll("-u-", "").replaceAll("-/u-", "")
+ .replaceAll("-h1-", "").replaceAll("-/h1-", "
").replaceAll("-h2-", "").replaceAll("-/h2-", "
").replaceAll("-p-", "").replaceAll("-/p-", "
");
}
} catch (IOException e) {
+ JOptionPane.showMessageDialog(null, "Pas de connexion internet.
"
+ + "Impossible de vérifier si une nouvelle version est disponible.
"
+ + "Impossible d'afficher le message d'information, s'il est disponible.");
e.printStackTrace();
}
}
diff --git a/src/importations/importAllBaseToExcel.java b/src/importations/importAllBaseToExcel.java
index 7d77b5d..461c148 100644
--- a/src/importations/importAllBaseToExcel.java
+++ b/src/importations/importAllBaseToExcel.java
@@ -69,7 +69,7 @@ public class importAllBaseToExcel {
trouveColonneFormation = true;
indexColonneFormation = cell.getColumnIndex();
}
- if(cell.getStringCellValue().equals("Individu_-_Code_Etudiant")) {
+ if(cell.getStringCellValue().equals(commandes.nomColonneCodeEtudiant)) {
trouveColonneCode = true;
indexColonneCode = cell.getColumnIndex();
}
@@ -88,10 +88,9 @@ public class importAllBaseToExcel {
noeud nBF = null;
noeud nStudent = null;
- // Colonne formation doit être la première colonne
if(row.getCell(indexColonneFormation)!=null) {
if(row.getCell(indexColonneFormation).getCellType() == CellType.STRING) {
- nBF = nYear.getChild(supprimeCaracatresSpeciaux.TousLesCaracatresSpeciaux(row.getCell(indexColonneFormation).getStringCellValue()));
+ nBF = nYear.getChild(supprimeCaracatresSpeciaux.TousLesCaracteresSpeciaux(row.getCell(indexColonneFormation).getStringCellValue()));
}
}else {
continue;
@@ -115,6 +114,7 @@ public class importAllBaseToExcel {
if(nStudent!=null) {
CellType cellType = cell.getCellType();
+
if (cellType == CellType.STRING) {
String cellValue = cell.getStringCellValue().trim();
if(sheet.getRow(0).getCell(indexCol)!=null) {
@@ -122,6 +122,7 @@ public class importAllBaseToExcel {
if(isString) {
String value = nStudent.getAttributes(sheet.getRow(0).getCell(indexCol).getStringCellValue());
if(value!=null && !cellValue.isEmpty()) {
+ cellValue = supprimeCaracatresSpeciaux.LesCaracteresCodeXML(cellValue);
boolean isOnlySpaces = value.matches("\\s+");
if(!isOnlySpaces)if(!cellValue.equals(value)) {
nStudent.setAttribut(sheet.getRow(0).getCell(indexCol).getStringCellValue(), cellValue);
@@ -153,8 +154,8 @@ public class importAllBaseToExcel {
boolean isString = sheet.getRow(0).getCell(indexCol).getCellType() == CellType.STRING;
if(isString) {
String value = nStudent.getAttributes(sheet.getRow(0).getCell(indexCol).getStringCellValue());
- boolean isOnlySpaces = value.matches("\\s+");
if(value!=null && !cellValue.isEmpty()) {
+ boolean isOnlySpaces = value.matches("\\s+");
if(!isOnlySpaces)if(!cellValue.equals(value)) {
nStudent.setAttribut(sheet.getRow(0).getCell(indexCol).getStringCellValue(), cellValue);
compteur++;
@@ -171,7 +172,8 @@ public class importAllBaseToExcel {
if(isString) {
String value = nStudent.getAttributes(sheet.getRow(0).getCell(indexCol).getStringCellValue());
if(value!=null && !cellValue.isEmpty()) {
- boolean isOnlySpaces = value.matches("\\s+");
+ cellValue = supprimeCaracatresSpeciaux.LesCaracteresCodeXML(cellValue);
+ boolean isOnlySpaces = value.matches("\\s+");
if(!isOnlySpaces)if(!cellValue.equals(value)) {
nStudent.setAttribut(sheet.getRow(0).getCell(indexCol).getStringCellValue(), cellValue);
compteur++;
@@ -194,7 +196,7 @@ public class importAllBaseToExcel {
} catch (IOException e) {
e.printStackTrace();
- JOptionPane.showMessageDialog(null, e.toString(), "Erreur dans la class importAllBaseToExcel", JOptionPane.ERROR_MESSAGE);
+ JOptionPane.showMessageDialog(null, e.toString(), "Erreur dans la classe \"importAllBaseToExcel\"", JOptionPane.ERROR_MESSAGE);
}
sauvegardeXMLBase.saveModif(commandes.nBase, compteur);
}
diff --git a/src/outils/commandes.java b/src/outils/commandes.java
index 36c5c46..5d08fd8 100644
--- a/src/outils/commandes.java
+++ b/src/outils/commandes.java
@@ -11,7 +11,7 @@ import java.util.List;
public class commandes {
public static noeud nBase = null; // La base de données sous forme de noeud.
- public static String version = "1.0.5"; // La version actuelle
+ public static String version = "1.0.6"; // La version actuelle
// Les colonnes obligatoires dû à l'inscription des étudaints.
// nom des colonnes après traitement des caractères (Accès à la base XML)
@@ -41,14 +41,12 @@ public class commandes {
// liste des noms des colonnes pour éviter les colitions.
public static List listNomDesColonnes = new ArrayList();
-
-
// Messages et sécurité
public static Boolean newVersion = false; //Permet de vérifier l'existance d'un nouvelle version.
public static Boolean helpme1 = false; //M'aider à compléter mon service annuel.
public static Boolean blocageApplication = false; //Blocage total de l'application.
public static String messageAlerte = ""; //Message alerte
-
+ public static String messageVersion = ""; //Message version
//noms des colonnes de l'application qui sont modifiables
public static String nomColonne_Option_1 = "Option_1";
diff --git a/src/outils/noeud.java b/src/outils/noeud.java
index 28323f0..a2db285 100644
--- a/src/outils/noeud.java
+++ b/src/outils/noeud.java
@@ -251,17 +251,22 @@ public class noeud implements Cloneable{
}
/**
- * Changement du nom d'un attribut.
- * @param oldName
- * @param newName
+ * Modification du nom d'un attribut.
+ * Si le string "oldName" est nul alors création de l'attribut "newName" avec une valeur vide.
+ * @param oldName : ancien nom de l'attribut.
+ * @param newName : nouveau nom de l'attribut.
*/
public void changeAttributName(String oldName, String newName) {
- if(attributes.get(oldName)==null) {
- return;
+ if(oldName!=null) {
+ if(attributes.get(oldName)==null) {
+ return;
+ }
+ String value = attributes.get(oldName);
+ attributes.remove(oldName);
+ attributes.put(newName, value);
+ }else {
+ attributes.put(newName, "");
}
- String value = attributes.get(oldName);
- attributes.remove(oldName);
- attributes.put(newName, value);
}
diff --git a/src/outils/supprimeCaracatresSpeciaux.java b/src/outils/supprimeCaracatresSpeciaux.java
index 6a0276b..ffe370d 100644
--- a/src/outils/supprimeCaracatresSpeciaux.java
+++ b/src/outils/supprimeCaracatresSpeciaux.java
@@ -4,7 +4,7 @@ import java.text.Normalizer;
public class supprimeCaracatresSpeciaux {
- public static String TousLesCaracatresSpeciaux(String str) {
+ public static String TousLesCaracteresSpeciaux(String str) {
// Supprimer les accents
String normalizedStr = Normalizer.normalize(str, Normalizer.Form.NFD);
@@ -18,5 +18,10 @@ public class supprimeCaracatresSpeciaux {
return replaceSpace;
}
+
+
+ public static String LesCaracteresCodeXML(String str) {
+ return str.replaceAll("<", "").replaceAll(">", "").replaceAll("\"", "");
+ }
}