no) {
for(int k=0 ; k < no.size(); k++) {
if(no.get(k)!=null) {
diff --git a/src/MEPTL/meptl.java b/src/MEPTL/meptl.java
index 1750a39..9b385b8 100644
--- a/src/MEPTL/meptl.java
+++ b/src/MEPTL/meptl.java
@@ -498,7 +498,8 @@ public class meptl {
/**
- * Lecture du fichier Writer des étudiants et fournir tous les nodes de la lecture dans un node nommé "fichier".
+ * Lecture du fichier Writer des étudiants et fournir tous les nodes de la lecture dans un node nommé "fichier".
+ * Permet aussi de créer un fichier d'analyse à partir d'un fichier ODF.
* @param nod Le node Writer de l'étudiant.
* @param a Objet de la class Run package cXML
* @param i Index de l'étudiant dans la liste EC de l'objet a.
@@ -515,23 +516,22 @@ public class meptl {
// ajoute les créateurs ou éditeur dans les nodes dc:creator ou meta:initial-creator
// Pour permettre l'analyse avec les attributs evalNameCreator ou evalNameInitialCreator
- if(!commandes.ecritCode) {
- if(nodmeta.retourneEnfantsByNameExist("dc:creator")) {
- if(a.getLectDossiers().getEC().getListeNomDossier().get(i)!=null) {
- nodmeta.retourneFirstEnfantsByName("dc:creator").getAttributs().put("creator", a.getLectDossiers().getEC().getListeNomDossier().get(i));
- }else {
- nodmeta.retourneFirstEnfantsByName("dc:creator").getAttributs().put("creator", "null");
- }
- }
-
- if(nodmeta.retourneEnfantsByNameExist("meta:initial-creator")) {
- if(a.getLectDossiers().getEC().getListeNomDossier().get(i)!=null) {
- nodmeta.retourneFirstEnfantsByName("meta:initial-creator").getAttributs().put("initial-creator", a.getLectDossiers().getEC().getListeNomDossier().get(i));
- }else {
- nodmeta.retourneFirstEnfantsByName("meta:initial-creator").getAttributs().put("initial-creator", "null");
- }
+ if(nodmeta.retourneEnfantsByNameExist("dc:creator")) {
+ if(a.getLectDossiers().getEC().getListeNomDossier().get(i)!=null) {
+ nodmeta.retourneFirstEnfantsByName("dc:creator").getAttributs().put("creator", a.getLectDossiers().getEC().getListeNomDossier().get(i));
+ }else {
+ nodmeta.retourneFirstEnfantsByName("dc:creator").getAttributs().put("creator", "null");
}
}
+
+ if(nodmeta.retourneEnfantsByNameExist("meta:initial-creator")) {
+ if(a.getLectDossiers().getEC().getListeNomDossier().get(i)!=null) {
+ nodmeta.retourneFirstEnfantsByName("meta:initial-creator").getAttributs().put("initial-creator", a.getLectDossiers().getEC().getListeNomDossier().get(i));
+ }else {
+ nodmeta.retourneFirstEnfantsByName("meta:initial-creator").getAttributs().put("initial-creator", "null");
+ }
+ }
+
node nodstyle = new node();
@@ -575,12 +575,13 @@ public class meptl {
node nodsequence = new node();
nodsequence.setNomElt("sequences");
nodsequence.addNode(a.retourneNames(nodbody, "text:sequence-decl"));
-
+
+
// le node des frames : renomme les nodes style:style avec le nom de draw:name exemple style:styledraw:name
// si une draw:text-box contenant un attribut fo:min-height alors ajoute dans darw:farme l'attribut svg:height
node nodframe = new node();
nodframe.setNomElt("frames");
- nodframe.addNode(a.retourneNames(nodbody, "draw:frame"));
+ nodframe.addNode(a.retourneNames(nodbody, "draw:frame")); //Problème place des doublons dans la liste des nodes
for(int j = 0 ; j < nodframe.getNodes().size(); j++) {
node nodframestyle = a.retourneFirstNodeByNameAttributValue(nodstyle, "style:style", "style:name", nodframe.getNodes().get(j).getAttributs().get("draw:style-name"));
String nomObjet = nodframe.getNodes().get(j).getAttributs().get("draw:name");
@@ -593,6 +594,7 @@ public class meptl {
nodframe.getNodes().get(j).getAttributs().put("svg:height", a.retourneName(nodframe.getNodes().get(j), "draw:text-box", "fo:min-height").getAttributs().get("fo:min-height"));
}
}
+
// le node section
node nodsection = new node();
@@ -1927,7 +1929,7 @@ public class meptl {
if(nodeStudent!=null) {
retour = evaluNameCreator(retour,nodeStudent, nodeStudent.getContenu().get(0), sujet.getAttributs().get("evalNameCreator"),"Editeur");
}else {
- retour = evaluNameCreator(retour,null, "Editeur inconnu", sujet.getAttributs().get("evalNameCreator"),"Editeur");
+ retour = evaluNameCreator(retour,null, "Pas trouvé le champ auteur", sujet.getAttributs().get("evalNameCreator"),"Editeur");
}
}
diff --git a/src/app/afficheText.java b/src/app/afficheText.java
index f8ad0da..e8b3f03 100644
--- a/src/app/afficheText.java
+++ b/src/app/afficheText.java
@@ -10,6 +10,7 @@ import java.util.stream.Collectors;
import javax.swing.JEditorPane;
import MEPTL.commandes;
+import MEPTL.outils;
import cXML.node;
import calcul.calculIntervalleBaremeABCDE;
import calcul.calculNotesProgression;
@@ -49,15 +50,31 @@ public class afficheText extends JEditorPane {
sb.append("Parent = " + nodeParent.getNomElt() + "
");
sb.append("
Nom du node : " + nod.getNomElt() + "
");
+
+ //sous titre pour identifier les éléments
if(nod.getNomElt().equals("style:style")) {
sb.append("Nom du style : " + nod.getAttributs().get("style:name")+ "
");
}
+ if(nod.getNomElt().equals("draw:frame")) {
+ sb.append("Nom du frame : " + outils.withoutCodeAndPointPourRechercheContenuExact(nod.getAttributs().get("draw:name"))+ "
");
+ }
+ if(nod.getNomElt().equals("style:master-page")) {
+ sb.append("Nom du style de page : " + nod.getAttributs().get("style:display-name")+ "
");
+ }
+ if(nod.getNomElt().equals("page")) {
+ sb.append("Numero absolue de la page : " + outils.withoutCodeAndPointPourRechercheContenuExact(nod.getAttributs().get("numeroabsolue"))
+ + " - Numerotation de la page : " + outils.withoutCodeAndPointPourRechercheContenuExact(nod.getAttributs().get("numero"))+ "
");
+ }
+
+
+
if(nod.getAttributs().get("evaluer")!=null) if(nod.getAttributs().get("evaluer").equalsIgnoreCase("true")) {
sb.append(" Ce node est évalué.
");
}
+
if(nod.getAttributs().size()>0) {
if(nod.getAttributs().size()==1) sb.append("
L'ATTRIBUT DU NODE
");
if(nod.getAttributs().size()>1) sb.append("
LES ATTRIBUTS DU NODE
");
diff --git a/src/app/create.java b/src/app/create.java
index a3a0199..bf9c140 100644
--- a/src/app/create.java
+++ b/src/app/create.java
@@ -2302,30 +2302,33 @@ public class create extends JFrame {
if (chooser.showOpenDialog(null) == JFileChooser.APPROVE_OPTION) {
System.out.println("getCurrentDirectory(): " + chooser.getCurrentDirectory());
System.out.println("getSelectedFile() : " + chooser.getSelectedFile().getAbsolutePath());
+
commandes.path = chooser.getCurrentDirectory().getAbsolutePath();
- commandes.PathFilenameAnalysis = chooser.getSelectedFile().getAbsolutePath();
+ commandes.PathFilenameAnalysis = chooser.getCurrentDirectory().getAbsolutePath();
+ String cheminVersFichier = chooser.getSelectedFile().getAbsolutePath();
commandes.nameSujet = chooser.getSelectedFile().getName();
Run b = null;
try {
- b = new Run(commandes.PathFilenameAnalysis);
- node nodSujet = Run.XMLContent(b.getLectDossiers().getEC().getListeContentWriter().get(0));
+ b = new Run(cheminVersFichier);
+ commandes.sujet = Run.XMLContent(b.getLectDossiers().getEC().getListeContentWriter().get(0));
+
+ commandes.sujet = meptl.LectureFichierEtudiantSousFormeDeNode(commandes.sujet,b,0);
+ commandes.sujet.getAttributs().put("analysis_filename","sujet.xml");
+
+ commandes.sujet = ecritureSujet.nodePourEcritureSujet(commandes.sujet,b,0);
commandes.sujet.supprimeTousLesNodesEnfantWithThisName("text:change-start");
commandes.sujet.supprimeTousLesNodesEnfantWithThisName("text:change-end");
commandes.sujetSauvegarde = commandes.sujet.clone();
- nodSujet = meptl.LectureFichierEtudiantSousFormeDeNode(nodSujet,b,0);
- nodSujet.getAttributs().put("analysis_filename","sujet.xml");
- commandes.sujet = ecritureSujet.nodePourEcritureSujet(nodSujet,b,0);
-
-
new verificationFichierAnalyse();
+
if(commandes.fichierAnalyseValide) {
constructionTree();
- textNodeSelect.afficheChargementFichierAnalyse();
+ textNodeSelect.afficheChargementFichierAnalyse();
}else {
textNodeSelect.setText("Le fichier n'est pas valise
");
}
@@ -2336,7 +2339,6 @@ public class create extends JFrame {
} else {
textNodeSelect.refreshAffichage(null);
-// refeshNodeSelected();
}
@@ -2379,13 +2381,14 @@ public class create extends JFrame {
Run.parentAndLevel(commandes.sujet, commandes.sujet, 0);
- DefaultMutableTreeNode node0 = null;
- DefaultMutableTreeNode node1 = null;
- DefaultMutableTreeNode node2 = null;
- DefaultMutableTreeNode node3 = null;
- DefaultMutableTreeNode node4 = null;
- DefaultMutableTreeNode node5 = null;
- DefaultMutableTreeNode node6 = null;
+ try {
+ Run.ecritureNodeEnXML(commandes.sujet, "test", commandes.PathFilenameAnalysis, "");
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+
+ DefaultMutableTreeNode root = null;
+
commandes.tree.getSelectionModel().setSelectionMode(TreeSelectionModel.SINGLE_TREE_SELECTION);
commandes.tree.setExpandsSelectedPaths(true);
@@ -2396,34 +2399,10 @@ public class create extends JFrame {
if(commandes.sujet.getNomElt().equals("fichier")) {
- node0 = new DefaultMutableTreeNode(commandes.sujet.getNomElt(),true);
-
- if(commandes.sujet!=null) for(int i = 0 ; i < commandes.sujet.getNodes().size(); i++) {
- node1 = new DefaultMutableTreeNode(commandes.sujet.getNodes().get(i));
- if(commandes.sujet.getNodes().get(i)!=null) for(int j = 0 ; j < commandes.sujet.getNodes().get(i).getNodes().size();j++) {
- node2 = new DefaultMutableTreeNode(commandes.sujet.getNodes().get(i).getNodes().get(j));
- if(commandes.sujet.getNodes().get(i).getNodes().get(j)!=null) for(int k = 0 ; k