maj V4.5.2

This commit is contained in:
pablo rodriguez 2025-02-05 21:30:55 +01:00
parent b14ea2dd8f
commit c083eaf4a6
2 changed files with 23 additions and 4 deletions

View File

@ -11,6 +11,7 @@ import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.text.DecimalFormat;
import java.text.Normalizer;
import java.util.ArrayList;
import java.util.Date;
import java.util.Enumeration;
@ -100,12 +101,26 @@ public class meptl {
// Utilisation d'un Set pour éviter les doublons
Set<String> setAuteur = new HashSet<>();
for (node Child : nodeTrackedChanges.getNodes()) {
setAuteur.add(Child.retourneFirstEnfantsByName("dc:creator").getContenu().get(0));
String name = removeAccents(Child.retourneFirstEnfantsByName("dc:creator").getContenu().get(0).toLowerCase().trim());
setAuteur.add(name);
}
if(setAuteur.size()>commandes.analyse_nombreAuteurMaximum) return false;
return true;
}
/**
* Converti les caractères accentués en caractères non accentués.
* @param input
* @return
*/
public static String removeAccents(String input) {
if (input == null) {
return null;
}
String normalized = Normalizer.normalize(input, Normalizer.Form.NFD);
return normalized.replaceAll("\\p{M}", "");
}
/**
* Retourne le node menu qui est réalisé à partir de l'attibut "<b>addmenu=true</b>".<br>
* L'attribut "<b>addmenu=true</b>" se trouve uniquement dans les node de niveu 1 (les nodes principaux).<br>
@ -1142,7 +1157,9 @@ public class meptl {
b = nodStudent.retourneFirstEnfantsByName("dc:creator");
if(!b.isVide()) {
if(b.getAttributs().get("creator")!=null) {
if(!b.getAttributs().get("creator").toLowerCase().contains(b.getContenu().get(0).toLowerCase())) premierAuteurPasIdentiqueMoodle=true;
String creatorSujet = removeAccents(b.getAttributs().get("creator").toLowerCase().trim());
String creatorStudent = removeAccents(b.getContenu().get(0).toLowerCase().trim());
if(!creatorStudent.contains(creatorSujet)) premierAuteurPasIdentiqueMoodle=true;
}
}
}

View File

@ -6,6 +6,7 @@ import java.util.regex.Matcher;
import java.util.regex.Pattern;
import analyseWriter.MEPTL.commandes;
import analyseWriter.MEPTL.meptl;
import analyseWriter.MEPTL.rechercherUnNodeStudent;
import analyseWriter.list.listMethodeEvaluationAnalyseWriter;
import analyseWriter.list.listeDesNodesAncrable;
@ -1412,9 +1413,10 @@ public class evaluationAttribut {
String reponseStudent = nodStudent.getAttributs().get("creator");
if(reponseStudent!=null) if(!reponseStudent.isEmpty()) {
reponseStudent = reponseStudent.replace(".odt", "");
reponseStudent = reponseStudent.toLowerCase();
reponseStudent = reponseStudent.toLowerCase().trim();
reponseStudent = meptl.removeAccents(reponseStudent);
}
nameCreator = nameCreator.toLowerCase();
nameCreator = meptl.removeAccents(nameCreator.toLowerCase().trim());
if(reponseStudent.contains(nameCreator)) {
reponseStudent = "auteur créateur "+ nameCreator + " identifié comme celui qui la remis sur Moodle.";
reponseSujet = "auteur créateur "+ nameCreator + " identifié comme celui qui la remis sur Moodle.";