MAJ V4.4.2

Amélioration générale
This commit is contained in:
pablo rodriguez 2023-02-02 21:13:14 +01:00
parent 7ea995a909
commit 39f274dc7e
9 changed files with 142 additions and 12 deletions

Binary file not shown.

Binary file not shown.

121
bin/.gitignore vendored
View File

@ -1,4 +1,121 @@
/MEPTL/
/calcul/
/evaluer/
/fenetres/
/list/
/MEPTL/
/evaluer/
/property.png
/property.svg
/recherche.png
/recherche.svg
/rechercheDoublon.png
/rechercheDoublon.svg
/rechercheDoublonmini.png
/rechercheancragepage.png
/rechercheancragepage.svg
/rechercheancragepagemini.png
/recherchecontenu.png
/recherchecontenu.svg
/recherchecontenumini.png
/recherchecontenuplusprochevoisin.png
/recherchecontenuplusprochevoisin.svg
/recherchecontenuplusprochevoisinmini.png
/rechercheindex.png
/rechercheindex.svg
/rechercheindexmini.png
/recherchemini.png
/redo.png
/saut.svg
/sautmini.png
/sautmultiple.png
/sautmultiple.svg
/sautmultiplemini.png
/sautpageColonne.svg
/sautpagecolonne.png
/sautpagecolonnemini.png
/save.png
/save.svg
/save_as.png
/saveas.svg
/saveasmini.png
/savemini.png
/savepreference.png
/savepreference.svg
/savepreferencemini.png
/section.png
/section.svg
/sequence.png
/sequence.svg
/setting.png
/setting.svg
/settingmini.png
/similitude.png
/similitude.svg
/similitudemini.png
/structurepage.png
/structurepage.svg
/stylepage.png
/stylepage.svg
/styleparagraphe.png
/styleparagraphe.svg
/supprime.svg
/supprimemini.png
/textclean.png
/textclean.svg
/textcleanmini.png
/titre.svg
/titremini.png
/totalpoint.png
/totalpoint.svg
/totalpointmini.png
/totalpointnode.png
/totalpointnode.svg
/totalpointnodemini.png
/touslesnodes.png
/touslesnodes.svg
/touslesnodesmini.png
/toutext.png
/toutext.svg
/toutextmini.png
/traduction.png
/traduction.svg
/traductionmini.png
/treeClose.png
/treeClose.svg
/treeLeaf.png
/treeLeaf.svg
/treeOpen.png
/treeOpen.svg
/triche.png
/triche.svg
/trichemini.png
/true.png
/true.svg
/truemini.png
/tutoriel.png
/tutoriel.svg
/tutorielmini.png
/undo.png
/upnode.png
/upnode.svg
/upnodemini.png
/verifhistorique.png
/verifhistoriquemax.png
/verifhistoriquemini.png
/verifhistoriquestudent.png
/verifhistoriquestudent.svg
/verifhistoriquestudentmini.png
/versevaluate.png
/versevaluate.svg
/versevaluatemini.png
/versfichierAnalyse.png
/versfichierAnalyseModifmax.svg
/voir.svg
/voirmini.png
/what.svg
/whatmini.png
/zip.png
/zip.svg
/zipmini.png
/zipstudent.png
/zipstudent.svg
/zipstudentmini.png

View File

@ -237,7 +237,8 @@ public class rechercherUnNodeStudent {
String valueAttribut = evaluation.withoutCodeAndPointPourRechercheContenuExact(nodSujet.retourneLesContenusEnfants(""));
Pattern p = Pattern.compile("^text:p$|^text:h$|^text:span$|^text:list|^text:line-break$|^text:note$|^text:tab$"); //le node qui peuvent rechercher par le contenu textuel
Pattern p = Pattern.compile("^text:p$|^text:h$|^text:span$|^text:list|^text:line-break$|^text:note$|^text:tab$|"
+ "^text:index-body$|^text:index-title$|^text:index-title-template^$|^text:table-of-content$"); //le node qui peuvent rechercher par le contenu textuel
Matcher m = p.matcher(nameNode);
if(m.find()) {
@ -248,7 +249,7 @@ public class rechercherUnNodeStudent {
ArrayList<node> tousLesfreres = nod2Student.retourneTousLesFreres(); //Retourne tous les frère d'une même page
for(int i = 0 ; i < tousLesfreres.size();i++) {
if(nodStudent==null) {
nodStudent = a.retourneFirstNameNodeByFindContentExactly(tousLesfreres.get(i).getNodes(), valueAttribut, nameNode);
if(tousLesfreres.get(i)!=null) nodStudent = a.retourneFirstNameNodeByFindContentExactly(tousLesfreres.get(i).getNodes(), valueAttribut, nameNode);
}
}
}
@ -306,7 +307,7 @@ public class rechercherUnNodeStudent {
/**
* Recherche par le contenu par le plus proche voisin. Englobe les contenus des nodes enfants.</br>
* La distance maximale est de 0.8.</br>
* La distance maximale est déterminé par commandes.tolerance_text.</br>
* @param nameNode
* @param nodSujet
* @param nod0Student

View File

@ -3,6 +3,7 @@ package evaluer;
import java.util.ArrayList;
import java.util.Enumeration;
import MEPTL.commandes;
import MEPTL.meptl;
import cXML.Run;
import cXML.node;
@ -325,19 +326,27 @@ public class analyseLesNodesPrincipaux {
nodmeta = meptl.addNodeSautTitre(nodSujet,nodmeta,nodmenu,a);
// parcours les attributs du node "meta:user-defined"
//*********************************
//** Si node "meta:user-defined" **
//*********************************
if(namenode.equals("meta:user-defined")) {
Enumeration<String> key = nodSujet.getAttributs().keys();
boolean contrierDesAttributAEvaluer = false;
while(key.hasMoreElements()) {
String k = key.nextElement();
if(nodSujet.getAttributs().get(k).contains("")){
String valueOfAttribut = nodSujet.getAttributs().get(k);
//*******************************
//** Recherche le node Student **
//*******************************
node nodStudent = a.retourneFirstNodeByNameAttributContainsValueNetTexte(nodStudentMeta, namenode,k,evaluation.withoutCodeAndPointPourRechercheContenuExact(valueOfAttribut));
nodmeta = evaluationAttribut.evalLesAttributEtContenuDuNode(nodStudent, nodSujet, nodmeta, "ana:meta", namenode);
contrierDesAttributAEvaluer =true;
}
}
if(contrierDesAttributAEvaluer) {
String valueOfAttribut = nodSujet.getAttributs().get("meta:name");
//*****************************************************
//** Recherche le node Student et évaluation du node **
//*****************************************************
Run.setStockLaDerniereValeurSim(commandes.tolerance_text);
node nodStudent = a.retourneFirstNodeByNameAttributDistanceValue(nodStudentMeta.getNodes(), namenode,"meta:name",evaluation.withoutCodeAndPointPourRechercheContenuExact(valueOfAttribut));
nodmeta = evaluationAttribut.evalLesAttributEtContenuDuNode(nodStudent, nodSujet, nodmeta, "ana:meta", namenode);
}
}else {
//*******************************

View File

@ -152,6 +152,9 @@ public class evaluerLesFichiersEtudiants implements Runnable{
try {
//Supprime l'historique des modifications
nod.supprimeTousLesNodesEnfantWithThisName("text:tracked-changes");
nod.supprimeTousLesNodesEnfantWithThisName("text:change-start");
nod.supprimeTousLesNodesEnfantWithThisName("text:change-end");
nod.supprimeTousLesNodesEnfantWithThisName("text:deletion");
//Création du node de l'étudiant
nodStudent = meptl.LectureFichierEtudiantSousFormeDeNode(nod,a,i);