diff --git a/.classpath b/.classpath
index 148593c..4b5675b 100644
--- a/.classpath
+++ b/.classpath
@@ -12,6 +12,6 @@
-
+
diff --git a/analyseWriter.exe b/analyseWriter.exe
index 3f92040..f048f58 100644
Binary files a/analyseWriter.exe and b/analyseWriter.exe differ
diff --git a/analyseWriter.jar b/analyseWriter.jar
index daa971a..a8d92a1 100644
Binary files a/analyseWriter.jar and b/analyseWriter.jar differ
diff --git a/bin/.gitignore b/bin/.gitignore
index 71bdde5..78b40c7 100644
--- a/bin/.gitignore
+++ b/bin/.gitignore
@@ -1,5 +1,5 @@
+/MEPTL/
+/calcul/
+/evaluer/
/fenetres/
/list/
-/MEPTL/
-/evaluer/
-/resources/
diff --git a/bin/MEPTL/feedbacks.class b/bin/MEPTL/feedbacks.class
index 5ab71b5..bae7b8d 100644
Binary files a/bin/MEPTL/feedbacks.class and b/bin/MEPTL/feedbacks.class differ
diff --git a/bin/MEPTL/meptl.class b/bin/MEPTL/meptl.class
index af869f2..b589495 100644
Binary files a/bin/MEPTL/meptl.class and b/bin/MEPTL/meptl.class differ
diff --git a/bin/MEPTL/rechercherUnNodeStudent.class b/bin/MEPTL/rechercherUnNodeStudent.class
index 7a10a5a..47aee3c 100644
Binary files a/bin/MEPTL/rechercherUnNodeStudent.class and b/bin/MEPTL/rechercherUnNodeStudent.class differ
diff --git a/bin/detailfeedback.png b/bin/detailfeedback.png
new file mode 100644
index 0000000..d3a1108
Binary files /dev/null and b/bin/detailfeedback.png differ
diff --git a/bin/detailfeedbackmini.png b/bin/detailfeedbackmini.png
new file mode 100644
index 0000000..bc66935
Binary files /dev/null and b/bin/detailfeedbackmini.png differ
diff --git a/bin/dossieretudiantmin.png b/bin/dossieretudiantmin.png
new file mode 100644
index 0000000..1016ed1
Binary files /dev/null and b/bin/dossieretudiantmin.png differ
diff --git a/bin/evaluer/analyseFichier.class b/bin/evaluer/analyseFichier.class
index b502309..6e919ca 100644
Binary files a/bin/evaluer/analyseFichier.class and b/bin/evaluer/analyseFichier.class differ
diff --git a/bin/evaluer/analyseLesNodesPrincipaux.class b/bin/evaluer/analyseLesNodesPrincipaux.class
index 652404d..666ca1e 100644
Binary files a/bin/evaluer/analyseLesNodesPrincipaux.class and b/bin/evaluer/analyseLesNodesPrincipaux.class differ
diff --git a/bin/feedbackstudent.png b/bin/feedbackstudent.png
new file mode 100644
index 0000000..5a9fbc7
Binary files /dev/null and b/bin/feedbackstudent.png differ
diff --git a/bin/feedbackstudentmini.png b/bin/feedbackstudentmini.png
new file mode 100644
index 0000000..d9c46c2
Binary files /dev/null and b/bin/feedbackstudentmini.png differ
diff --git a/bin/fenetres/afficheText.class b/bin/fenetres/afficheText.class
index bb05a41..b06db53 100644
Binary files a/bin/fenetres/afficheText.class and b/bin/fenetres/afficheText.class differ
diff --git a/bin/fenetres/create_act/actDownNode.class b/bin/fenetres/create_act/actDownNode.class
index 506d2e5..8dff83d 100644
Binary files a/bin/fenetres/create_act/actDownNode.class and b/bin/fenetres/create_act/actDownNode.class differ
diff --git a/bin/fenetres/create_act/actNewFichierAnalyse$1.class b/bin/fenetres/create_act/actNewFichierAnalyse$1.class
index 2777d4c..39b8747 100644
Binary files a/bin/fenetres/create_act/actNewFichierAnalyse$1.class and b/bin/fenetres/create_act/actNewFichierAnalyse$1.class differ
diff --git a/bin/fenetres/create_act/actNewFichierAnalyse.class b/bin/fenetres/create_act/actNewFichierAnalyse.class
index cd7bbd0..0d903aa 100644
Binary files a/bin/fenetres/create_act/actNewFichierAnalyse.class and b/bin/fenetres/create_act/actNewFichierAnalyse.class differ
diff --git a/bin/fenetres/create_act/actUpNode.class b/bin/fenetres/create_act/actUpNode.class
index 48ab82a..437a233 100644
Binary files a/bin/fenetres/create_act/actUpNode.class and b/bin/fenetres/create_act/actUpNode.class differ
diff --git a/bin/fenetres/evaluate$1.class b/bin/fenetres/evaluate$1.class
index 66959b5..5aaf389 100644
Binary files a/bin/fenetres/evaluate$1.class and b/bin/fenetres/evaluate$1.class differ
diff --git a/bin/fenetres/evaluate$10.class b/bin/fenetres/evaluate$10.class
index 9e43906..8b60cb3 100644
Binary files a/bin/fenetres/evaluate$10.class and b/bin/fenetres/evaluate$10.class differ
diff --git a/bin/fenetres/evaluate$11.class b/bin/fenetres/evaluate$11.class
index 592395a..3014565 100644
Binary files a/bin/fenetres/evaluate$11.class and b/bin/fenetres/evaluate$11.class differ
diff --git a/bin/fenetres/evaluate$12.class b/bin/fenetres/evaluate$12.class
index 31362e7..986a009 100644
Binary files a/bin/fenetres/evaluate$12.class and b/bin/fenetres/evaluate$12.class differ
diff --git a/bin/fenetres/evaluate$13.class b/bin/fenetres/evaluate$13.class
index 32210f1..e8b39b2 100644
Binary files a/bin/fenetres/evaluate$13.class and b/bin/fenetres/evaluate$13.class differ
diff --git a/bin/fenetres/evaluate$14.class b/bin/fenetres/evaluate$14.class
index 32d0dd9..3293a43 100644
Binary files a/bin/fenetres/evaluate$14.class and b/bin/fenetres/evaluate$14.class differ
diff --git a/bin/fenetres/evaluate$15.class b/bin/fenetres/evaluate$15.class
index ab3ed47..ec5165f 100644
Binary files a/bin/fenetres/evaluate$15.class and b/bin/fenetres/evaluate$15.class differ
diff --git a/bin/fenetres/evaluate$16.class b/bin/fenetres/evaluate$16.class
index 850d93d..5c86514 100644
Binary files a/bin/fenetres/evaluate$16.class and b/bin/fenetres/evaluate$16.class differ
diff --git a/bin/fenetres/evaluate$17.class b/bin/fenetres/evaluate$17.class
index 7fbff5c..4e89ce9 100644
Binary files a/bin/fenetres/evaluate$17.class and b/bin/fenetres/evaluate$17.class differ
diff --git a/bin/fenetres/evaluate$18.class b/bin/fenetres/evaluate$18.class
index 72eb545..0bb180f 100644
Binary files a/bin/fenetres/evaluate$18.class and b/bin/fenetres/evaluate$18.class differ
diff --git a/bin/fenetres/evaluate$19.class b/bin/fenetres/evaluate$19.class
index e1916c0..c60f309 100644
Binary files a/bin/fenetres/evaluate$19.class and b/bin/fenetres/evaluate$19.class differ
diff --git a/bin/fenetres/evaluate$2.class b/bin/fenetres/evaluate$2.class
index cfb38a0..31be0d5 100644
Binary files a/bin/fenetres/evaluate$2.class and b/bin/fenetres/evaluate$2.class differ
diff --git a/bin/fenetres/evaluate$20.class b/bin/fenetres/evaluate$20.class
index 1e82a2d..c60c0e6 100644
Binary files a/bin/fenetres/evaluate$20.class and b/bin/fenetres/evaluate$20.class differ
diff --git a/bin/fenetres/evaluate$21.class b/bin/fenetres/evaluate$21.class
index cf37c0c..f7db9ff 100644
Binary files a/bin/fenetres/evaluate$21.class and b/bin/fenetres/evaluate$21.class differ
diff --git a/bin/fenetres/evaluate$22.class b/bin/fenetres/evaluate$22.class
index 73af50c..1a486fc 100644
Binary files a/bin/fenetres/evaluate$22.class and b/bin/fenetres/evaluate$22.class differ
diff --git a/bin/fenetres/evaluate$23.class b/bin/fenetres/evaluate$23.class
index 407a353..4937e22 100644
Binary files a/bin/fenetres/evaluate$23.class and b/bin/fenetres/evaluate$23.class differ
diff --git a/bin/fenetres/evaluate$24.class b/bin/fenetres/evaluate$24.class
index a357ff0..b10cf47 100644
Binary files a/bin/fenetres/evaluate$24.class and b/bin/fenetres/evaluate$24.class differ
diff --git a/bin/fenetres/evaluate$25.class b/bin/fenetres/evaluate$25.class
index 4bdf316..2b2598a 100644
Binary files a/bin/fenetres/evaluate$25.class and b/bin/fenetres/evaluate$25.class differ
diff --git a/bin/fenetres/evaluate$26.class b/bin/fenetres/evaluate$26.class
index 1647b16..2e84d0a 100644
Binary files a/bin/fenetres/evaluate$26.class and b/bin/fenetres/evaluate$26.class differ
diff --git a/bin/fenetres/evaluate$27.class b/bin/fenetres/evaluate$27.class
index 6b0a896..b6d2207 100644
Binary files a/bin/fenetres/evaluate$27.class and b/bin/fenetres/evaluate$27.class differ
diff --git a/bin/fenetres/evaluate$28.class b/bin/fenetres/evaluate$28.class
index c85fe08..fe25a86 100644
Binary files a/bin/fenetres/evaluate$28.class and b/bin/fenetres/evaluate$28.class differ
diff --git a/bin/fenetres/evaluate$29.class b/bin/fenetres/evaluate$29.class
index dcda640..a953f9b 100644
Binary files a/bin/fenetres/evaluate$29.class and b/bin/fenetres/evaluate$29.class differ
diff --git a/bin/fenetres/evaluate$3.class b/bin/fenetres/evaluate$3.class
index 500202f..57703b4 100644
Binary files a/bin/fenetres/evaluate$3.class and b/bin/fenetres/evaluate$3.class differ
diff --git a/bin/fenetres/evaluate$30.class b/bin/fenetres/evaluate$30.class
index 1c24e64..ce61941 100644
Binary files a/bin/fenetres/evaluate$30.class and b/bin/fenetres/evaluate$30.class differ
diff --git a/bin/fenetres/evaluate$31.class b/bin/fenetres/evaluate$31.class
index 6056c69..f9bc6e7 100644
Binary files a/bin/fenetres/evaluate$31.class and b/bin/fenetres/evaluate$31.class differ
diff --git a/bin/fenetres/evaluate$32.class b/bin/fenetres/evaluate$32.class
index 2ef66d6..a7100d7 100644
Binary files a/bin/fenetres/evaluate$32.class and b/bin/fenetres/evaluate$32.class differ
diff --git a/bin/fenetres/evaluate$33.class b/bin/fenetres/evaluate$33.class
index abf4fc7..5c5bb5e 100644
Binary files a/bin/fenetres/evaluate$33.class and b/bin/fenetres/evaluate$33.class differ
diff --git a/bin/fenetres/evaluate$4.class b/bin/fenetres/evaluate$4.class
index d2659a0..094eb6d 100644
Binary files a/bin/fenetres/evaluate$4.class and b/bin/fenetres/evaluate$4.class differ
diff --git a/bin/fenetres/evaluate$5.class b/bin/fenetres/evaluate$5.class
index 3d54e21..f5f5126 100644
Binary files a/bin/fenetres/evaluate$5.class and b/bin/fenetres/evaluate$5.class differ
diff --git a/bin/fenetres/evaluate$6.class b/bin/fenetres/evaluate$6.class
index 274e465..03e4f0d 100644
Binary files a/bin/fenetres/evaluate$6.class and b/bin/fenetres/evaluate$6.class differ
diff --git a/bin/fenetres/evaluate$7.class b/bin/fenetres/evaluate$7.class
index c95c821..2984896 100644
Binary files a/bin/fenetres/evaluate$7.class and b/bin/fenetres/evaluate$7.class differ
diff --git a/bin/fenetres/evaluate$8.class b/bin/fenetres/evaluate$8.class
index 197297d..a44eadf 100644
Binary files a/bin/fenetres/evaluate$8.class and b/bin/fenetres/evaluate$8.class differ
diff --git a/bin/fenetres/evaluate$9.class b/bin/fenetres/evaluate$9.class
index 320a741..559ef7f 100644
Binary files a/bin/fenetres/evaluate$9.class and b/bin/fenetres/evaluate$9.class differ
diff --git a/bin/fenetres/evaluate.class b/bin/fenetres/evaluate.class
index df47890..f96f744 100644
Binary files a/bin/fenetres/evaluate.class and b/bin/fenetres/evaluate.class differ
diff --git a/bin/fichieretudiant.png b/bin/fichieretudiant.png
new file mode 100644
index 0000000..5b220de
Binary files /dev/null and b/bin/fichieretudiant.png differ
diff --git a/bin/fichieretudiant.svg b/bin/fichieretudiant.svg
new file mode 100644
index 0000000..6e777b0
--- /dev/null
+++ b/bin/fichieretudiant.svg
@@ -0,0 +1,130 @@
+
+
diff --git a/bin/fichieretudiantmini.png b/bin/fichieretudiantmini.png
new file mode 100644
index 0000000..eb0ddb2
Binary files /dev/null and b/bin/fichieretudiantmini.png differ
diff --git a/bin/list/listeAttributsAnalyseWriter.class b/bin/list/listeAttributsAnalyseWriter.class
index 09ebfe8..af2422a 100644
Binary files a/bin/list/listeAttributsAnalyseWriter.class and b/bin/list/listeAttributsAnalyseWriter.class differ
diff --git a/bin/logo.png b/bin/logo.png
new file mode 100644
index 0000000..2d6efea
Binary files /dev/null and b/bin/logo.png differ
diff --git a/bin/logo.svg b/bin/logo.svg
new file mode 100644
index 0000000..ade1d09
--- /dev/null
+++ b/bin/logo.svg
@@ -0,0 +1,109 @@
+
+
+
+
diff --git a/bin/nodetailfeedback.png b/bin/nodetailfeedback.png
new file mode 100644
index 0000000..d2d4e52
Binary files /dev/null and b/bin/nodetailfeedback.png differ
diff --git a/bin/nodetailfeedbackmini.png b/bin/nodetailfeedbackmini.png
new file mode 100644
index 0000000..6e6ba33
Binary files /dev/null and b/bin/nodetailfeedbackmini.png differ
diff --git a/bin/nofeedback.png b/bin/nofeedback.png
new file mode 100644
index 0000000..cf2f26c
Binary files /dev/null and b/bin/nofeedback.png differ
diff --git a/bin/nofeedbackmini.png b/bin/nofeedbackmini.png
new file mode 100644
index 0000000..cf2f26c
Binary files /dev/null and b/bin/nofeedbackmini.png differ
diff --git a/bin/nofeedbackstudent.png b/bin/nofeedbackstudent.png
new file mode 100644
index 0000000..1897966
Binary files /dev/null and b/bin/nofeedbackstudent.png differ
diff --git a/bin/nofeedbackstudent.svg b/bin/nofeedbackstudent.svg
new file mode 100644
index 0000000..11f2f17
--- /dev/null
+++ b/bin/nofeedbackstudent.svg
@@ -0,0 +1,199 @@
+
+
diff --git a/bin/nofeedbackstudentmini.png b/bin/nofeedbackstudentmini.png
new file mode 100644
index 0000000..763d946
Binary files /dev/null and b/bin/nofeedbackstudentmini.png differ
diff --git a/bin/nologo.png b/bin/nologo.png
new file mode 100644
index 0000000..185eb7f
Binary files /dev/null and b/bin/nologo.png differ
diff --git a/bin/nonotestudent.png b/bin/nonotestudent.png
new file mode 100644
index 0000000..407507a
Binary files /dev/null and b/bin/nonotestudent.png differ
diff --git a/bin/nonotestudentl.svg b/bin/nonotestudentl.svg
new file mode 100644
index 0000000..55022b6
--- /dev/null
+++ b/bin/nonotestudentl.svg
@@ -0,0 +1,369 @@
+
+
diff --git a/bin/nonotestudentmini.png b/bin/nonotestudentmini.png
new file mode 100644
index 0000000..33008a6
Binary files /dev/null and b/bin/nonotestudentmini.png differ
diff --git a/bin/notestudent.png b/bin/notestudent.png
new file mode 100644
index 0000000..bb222da
Binary files /dev/null and b/bin/notestudent.png differ
diff --git a/bin/notestudentmini.png b/bin/notestudentmini.png
new file mode 100644
index 0000000..fee0827
Binary files /dev/null and b/bin/notestudentmini.png differ
diff --git a/bin/noverifhistoriquestudent.png b/bin/noverifhistoriquestudent.png
new file mode 100644
index 0000000..27a6528
Binary files /dev/null and b/bin/noverifhistoriquestudent.png differ
diff --git a/bin/noverifhistoriquestudentmini.png b/bin/noverifhistoriquestudentmini.png
new file mode 100644
index 0000000..501739c
Binary files /dev/null and b/bin/noverifhistoriquestudentmini.png differ
diff --git a/bin/nozipstudent.png b/bin/nozipstudent.png
new file mode 100644
index 0000000..a3e3a98
Binary files /dev/null and b/bin/nozipstudent.png differ
diff --git a/bin/nozipstudentmini.png b/bin/nozipstudentmini.png
new file mode 100644
index 0000000..b9f9f3c
Binary files /dev/null and b/bin/nozipstudentmini.png differ
diff --git a/bin/rechercheDoublon.png b/bin/rechercheDoublon.png
new file mode 100644
index 0000000..16d306f
Binary files /dev/null and b/bin/rechercheDoublon.png differ
diff --git a/bin/rechercheDoublon.svg b/bin/rechercheDoublon.svg
new file mode 100644
index 0000000..f654113
--- /dev/null
+++ b/bin/rechercheDoublon.svg
@@ -0,0 +1,113 @@
+
+
+
+
diff --git a/bin/rechercheDoublonmini.png b/bin/rechercheDoublonmini.png
new file mode 100644
index 0000000..ce20ce5
Binary files /dev/null and b/bin/rechercheDoublonmini.png differ
diff --git a/bin/resources/detailfeedback.png b/bin/resources/detailfeedback.png
new file mode 100644
index 0000000..d3a1108
Binary files /dev/null and b/bin/resources/detailfeedback.png differ
diff --git a/bin/resources/detailfeedbackmini.png b/bin/resources/detailfeedbackmini.png
new file mode 100644
index 0000000..bc66935
Binary files /dev/null and b/bin/resources/detailfeedbackmini.png differ
diff --git a/bin/resources/dossieretudiant.png b/bin/resources/dossieretudiant.png
new file mode 100644
index 0000000..efdc477
Binary files /dev/null and b/bin/resources/dossieretudiant.png differ
diff --git a/bin/resources/dossieretudiantmin.png b/bin/resources/dossieretudiantmin.png
new file mode 100644
index 0000000..1016ed1
Binary files /dev/null and b/bin/resources/dossieretudiantmin.png differ
diff --git a/bin/resources/dossieretudiantmini.png b/bin/resources/dossieretudiantmini.png
new file mode 100644
index 0000000..47aab2e
Binary files /dev/null and b/bin/resources/dossieretudiantmini.png differ
diff --git a/bin/resources/feedbackstudent.png b/bin/resources/feedbackstudent.png
new file mode 100644
index 0000000..5a9fbc7
Binary files /dev/null and b/bin/resources/feedbackstudent.png differ
diff --git a/bin/resources/feedbackstudentmini.png b/bin/resources/feedbackstudentmini.png
new file mode 100644
index 0000000..d9c46c2
Binary files /dev/null and b/bin/resources/feedbackstudentmini.png differ
diff --git a/bin/resources/fichieretudiant.png b/bin/resources/fichieretudiant.png
new file mode 100644
index 0000000..5b220de
Binary files /dev/null and b/bin/resources/fichieretudiant.png differ
diff --git a/bin/resources/fichieretudiantmini.png b/bin/resources/fichieretudiantmini.png
new file mode 100644
index 0000000..eb0ddb2
Binary files /dev/null and b/bin/resources/fichieretudiantmini.png differ
diff --git a/bin/resources/logo.png b/bin/resources/logo.png
new file mode 100644
index 0000000..2d6efea
Binary files /dev/null and b/bin/resources/logo.png differ
diff --git a/bin/resources/nodetailfeedback.png b/bin/resources/nodetailfeedback.png
new file mode 100644
index 0000000..d2d4e52
Binary files /dev/null and b/bin/resources/nodetailfeedback.png differ
diff --git a/bin/resources/nodetailfeedbackmini.png b/bin/resources/nodetailfeedbackmini.png
new file mode 100644
index 0000000..6e6ba33
Binary files /dev/null and b/bin/resources/nodetailfeedbackmini.png differ
diff --git a/bin/resources/nofeedbackstudent.png b/bin/resources/nofeedbackstudent.png
new file mode 100644
index 0000000..1897966
Binary files /dev/null and b/bin/resources/nofeedbackstudent.png differ
diff --git a/bin/resources/nofeedbackstudentmini.png b/bin/resources/nofeedbackstudentmini.png
new file mode 100644
index 0000000..763d946
Binary files /dev/null and b/bin/resources/nofeedbackstudentmini.png differ
diff --git a/bin/resources/nologo.png b/bin/resources/nologo.png
new file mode 100644
index 0000000..185eb7f
Binary files /dev/null and b/bin/resources/nologo.png differ
diff --git a/bin/resources/nonotestudent.png b/bin/resources/nonotestudent.png
new file mode 100644
index 0000000..407507a
Binary files /dev/null and b/bin/resources/nonotestudent.png differ
diff --git a/bin/resources/nonotestudentmini.png b/bin/resources/nonotestudentmini.png
new file mode 100644
index 0000000..33008a6
Binary files /dev/null and b/bin/resources/nonotestudentmini.png differ
diff --git a/bin/resources/notestudent.png b/bin/resources/notestudent.png
new file mode 100644
index 0000000..bb222da
Binary files /dev/null and b/bin/resources/notestudent.png differ
diff --git a/bin/resources/notestudentmini.png b/bin/resources/notestudentmini.png
new file mode 100644
index 0000000..fee0827
Binary files /dev/null and b/bin/resources/notestudentmini.png differ
diff --git a/bin/resources/noverifhistoriquestudent.png b/bin/resources/noverifhistoriquestudent.png
new file mode 100644
index 0000000..27a6528
Binary files /dev/null and b/bin/resources/noverifhistoriquestudent.png differ
diff --git a/bin/resources/noverifhistoriquestudentmini.png b/bin/resources/noverifhistoriquestudentmini.png
new file mode 100644
index 0000000..501739c
Binary files /dev/null and b/bin/resources/noverifhistoriquestudentmini.png differ
diff --git a/bin/resources/nozipstudent.png b/bin/resources/nozipstudent.png
new file mode 100644
index 0000000..a3e3a98
Binary files /dev/null and b/bin/resources/nozipstudent.png differ
diff --git a/bin/resources/nozipstudentmini.png b/bin/resources/nozipstudentmini.png
new file mode 100644
index 0000000..b9f9f3c
Binary files /dev/null and b/bin/resources/nozipstudentmini.png differ
diff --git a/bin/resources/rechercheDoublon.png b/bin/resources/rechercheDoublon.png
new file mode 100644
index 0000000..16d306f
Binary files /dev/null and b/bin/resources/rechercheDoublon.png differ
diff --git a/bin/resources/rechercheDoublonmini.png b/bin/resources/rechercheDoublonmini.png
new file mode 100644
index 0000000..ce20ce5
Binary files /dev/null and b/bin/resources/rechercheDoublonmini.png differ
diff --git a/bin/resources/verifhistoriquestudent.png b/bin/resources/verifhistoriquestudent.png
new file mode 100644
index 0000000..d1b07c6
Binary files /dev/null and b/bin/resources/verifhistoriquestudent.png differ
diff --git a/bin/resources/verifhistoriquestudentmini.png b/bin/resources/verifhistoriquestudentmini.png
new file mode 100644
index 0000000..1264fb9
Binary files /dev/null and b/bin/resources/verifhistoriquestudentmini.png differ
diff --git a/bin/resources/zipstudent.png b/bin/resources/zipstudent.png
new file mode 100644
index 0000000..7c4bb39
Binary files /dev/null and b/bin/resources/zipstudent.png differ
diff --git a/bin/resources/zipstudentmini.png b/bin/resources/zipstudentmini.png
new file mode 100644
index 0000000..bb4bf33
Binary files /dev/null and b/bin/resources/zipstudentmini.png differ
diff --git a/bin/verifhistoriquestudent.png b/bin/verifhistoriquestudent.png
new file mode 100644
index 0000000..d1b07c6
Binary files /dev/null and b/bin/verifhistoriquestudent.png differ
diff --git a/bin/verifhistoriquestudent.svg b/bin/verifhistoriquestudent.svg
new file mode 100644
index 0000000..8eca754
--- /dev/null
+++ b/bin/verifhistoriquestudent.svg
@@ -0,0 +1,232 @@
+
+
+
+
diff --git a/bin/verifhistoriquestudentmini.png b/bin/verifhistoriquestudentmini.png
new file mode 100644
index 0000000..1264fb9
Binary files /dev/null and b/bin/verifhistoriquestudentmini.png differ
diff --git a/bin/zipstudent.png b/bin/zipstudent.png
new file mode 100644
index 0000000..7c4bb39
Binary files /dev/null and b/bin/zipstudent.png differ
diff --git a/bin/zipstudent.svg b/bin/zipstudent.svg
new file mode 100644
index 0000000..69006df
--- /dev/null
+++ b/bin/zipstudent.svg
@@ -0,0 +1,343 @@
+
+
diff --git a/bin/zipstudentmini.png b/bin/zipstudentmini.png
new file mode 100644
index 0000000..bb4bf33
Binary files /dev/null and b/bin/zipstudentmini.png differ
diff --git a/icons/fichieretudiant.png b/icons/fichieretudiant.png
index 982a1b8..5b220de 100644
Binary files a/icons/fichieretudiant.png and b/icons/fichieretudiant.png differ
diff --git a/icons/fichieretudiant.svg b/icons/fichieretudiant.svg
index 38917d5..6e777b0 100644
--- a/icons/fichieretudiant.svg
+++ b/icons/fichieretudiant.svg
@@ -1,8 +1,8 @@
+
+
+
diff --git a/icons/nologo.png b/icons/nologo.png
new file mode 100644
index 0000000..185eb7f
Binary files /dev/null and b/icons/nologo.png differ
diff --git a/icons/nonotestudent.png b/icons/nonotestudent.png
new file mode 100644
index 0000000..407507a
Binary files /dev/null and b/icons/nonotestudent.png differ
diff --git a/icons/nonotestudentl.svg b/icons/nonotestudentl.svg
new file mode 100644
index 0000000..55022b6
--- /dev/null
+++ b/icons/nonotestudentl.svg
@@ -0,0 +1,369 @@
+
+
diff --git a/icons/nonotestudentmini.png b/icons/nonotestudentmini.png
new file mode 100644
index 0000000..33008a6
Binary files /dev/null and b/icons/nonotestudentmini.png differ
diff --git a/icons/notestudent.png b/icons/notestudent.png
new file mode 100644
index 0000000..bb222da
Binary files /dev/null and b/icons/notestudent.png differ
diff --git a/icons/notestudentmini.png b/icons/notestudentmini.png
new file mode 100644
index 0000000..fee0827
Binary files /dev/null and b/icons/notestudentmini.png differ
diff --git a/icons/noverifhistoriquestudent.png b/icons/noverifhistoriquestudent.png
new file mode 100644
index 0000000..27a6528
Binary files /dev/null and b/icons/noverifhistoriquestudent.png differ
diff --git a/icons/noverifhistoriquestudentmini.png b/icons/noverifhistoriquestudentmini.png
new file mode 100644
index 0000000..501739c
Binary files /dev/null and b/icons/noverifhistoriquestudentmini.png differ
diff --git a/icons/nozipstudent.png b/icons/nozipstudent.png
new file mode 100644
index 0000000..a3e3a98
Binary files /dev/null and b/icons/nozipstudent.png differ
diff --git a/icons/nozipstudentmini.png b/icons/nozipstudentmini.png
new file mode 100644
index 0000000..b9f9f3c
Binary files /dev/null and b/icons/nozipstudentmini.png differ
diff --git a/icons/rechercheDoublon.png b/icons/rechercheDoublon.png
new file mode 100644
index 0000000..16d306f
Binary files /dev/null and b/icons/rechercheDoublon.png differ
diff --git a/icons/rechercheDoublon.svg b/icons/rechercheDoublon.svg
new file mode 100644
index 0000000..f654113
--- /dev/null
+++ b/icons/rechercheDoublon.svg
@@ -0,0 +1,113 @@
+
+
+
+
diff --git a/icons/rechercheDoublonmini.png b/icons/rechercheDoublonmini.png
new file mode 100644
index 0000000..ce20ce5
Binary files /dev/null and b/icons/rechercheDoublonmini.png differ
diff --git a/icons/verifhistoriquestudent.png b/icons/verifhistoriquestudent.png
new file mode 100644
index 0000000..d1b07c6
Binary files /dev/null and b/icons/verifhistoriquestudent.png differ
diff --git a/icons/verifhistoriquestudent.svg b/icons/verifhistoriquestudent.svg
new file mode 100644
index 0000000..8eca754
--- /dev/null
+++ b/icons/verifhistoriquestudent.svg
@@ -0,0 +1,232 @@
+
+
+
+
diff --git a/icons/verifhistoriquestudentmini.png b/icons/verifhistoriquestudentmini.png
new file mode 100644
index 0000000..1264fb9
Binary files /dev/null and b/icons/verifhistoriquestudentmini.png differ
diff --git a/icons/zipstudent.png b/icons/zipstudent.png
new file mode 100644
index 0000000..7c4bb39
Binary files /dev/null and b/icons/zipstudent.png differ
diff --git a/icons/zipstudent.svg b/icons/zipstudent.svg
new file mode 100644
index 0000000..69006df
--- /dev/null
+++ b/icons/zipstudent.svg
@@ -0,0 +1,343 @@
+
+
diff --git a/icons/zipstudentmini.png b/icons/zipstudentmini.png
new file mode 100644
index 0000000..bb4bf33
Binary files /dev/null and b/icons/zipstudentmini.png differ
diff --git a/src/MEPTL/feedbacks.java b/src/MEPTL/feedbacks.java
index 1e6bea4..77a3127 100644
--- a/src/MEPTL/feedbacks.java
+++ b/src/MEPTL/feedbacks.java
@@ -296,7 +296,8 @@ public class feedbacks {
if(!commandes.noDetail) {
- Enumeration EnuNod = Collections.enumeration(nodana.getNodes());
+ //Ecriture des détails de l'évaluation
+ Enumeration EnuNod = Collections.enumeration(nodana.retourneFirstEnfantsByName("evaluation").getNodes());
while(EnuNod.hasMoreElements()) {
node nod = EnuNod.nextElement();
@@ -304,66 +305,6 @@ public class feedbacks {
if(nod.isClose()) {
fichier.append(HTML.Table(nod));
}
-
-// //Metadonnées
-// if(nodana.retourneFirstEnfantsByName("meta")!=null) if(nodana.retourneFirstEnfantsByName("meta").isClose()) {
-// fichier.append(HTML.Table(nodana.retourneFirstEnfantsByName("meta")));
-// }
-
-// //style de paragraphe
-// if(nodana.retourneFirstEnfantsByName("paragraphs")!=null) if(nodana.retourneFirstEnfantsByName("paragraphs").isClose()) {
-// fichier.append(HTML.Table(nodana.retourneFirstEnfantsByName("paragraphs")));
-// }
-//
-// //pages
-// if(nodana.retourneFirstEnfantsByName("pages")!=null) if(nodana.retourneFirstEnfantsByName("pages").isClose()) {
-// fichier.append(HTML.Table(nodana.retourneFirstEnfantsByName("pages")));
-// }
-//
-// //sequences
-// if(nodana.retourneFirstEnfantsByName("sequences")!=null) if(nodana.retourneFirstEnfantsByName("sequences").isClose()) {
-// fichier.append(HTML.Table(nodana.retourneFirstEnfantsByName("sequences")));
-// }
-//
-// //numerotationchapitre
-// if(nodana.retourneFirstEnfantsByName("numerotationchapitre")!=null) if(nodana.retourneFirstEnfantsByName("numerotationchapitre").isClose()) {
-// fichier.append(HTML.Table(nodana.retourneFirstEnfantsByName("numerotationchapitre")));
-// }
-//
-// //frames
-// if(nodana.retourneFirstEnfantsByName("frames")!=null) if(nodana.retourneFirstEnfantsByName("frames").isClose()) {
-// fichier.append(HTML.Table(nodana.retourneFirstEnfantsByName("frames")));
-// }
-//
-// //section
-// if(nodana.retourneFirstEnfantsByName("sections")!=null) if(nodana.retourneFirstEnfantsByName("sections").isClose()) {
-// fichier.append(HTML.Table(nodana.retourneFirstEnfantsByName("sections")));
-// }
-//
-// //tableau
-// if(nodana.retourneFirstEnfantsByName("tableaux")!=null) if(nodana.retourneFirstEnfantsByName("tableaux").isClose()) {
-// fichier.append(HTML.Table(nodana.retourneFirstEnfantsByName("tableaux")));
-// }
-//
-// //bibliographies
-// if(nodana.retourneFirstEnfantsByName("bibliographies")!=null) if(nodana.retourneFirstEnfantsByName("bibliographies").isClose()) {
-// fichier.append(HTML.Table(nodana.retourneFirstEnfantsByName("bibliographies")));
-// }
-//
-// //tablematieres
-// if(nodana.retourneFirstEnfantsByName("tablematieres")!=null) if(nodana.retourneFirstEnfantsByName("tablematieres").isClose()) {
-// fichier.append(HTML.Table(nodana.retourneFirstEnfantsByName("tablematieres")));
-// }
-//
-// //tableillustrations
-// if(nodana.retourneFirstEnfantsByName("tableillustrations")!=null) if(nodana.retourneFirstEnfantsByName("tableillustrations").isClose()) {
-// fichier.append(HTML.Table(nodana.retourneFirstEnfantsByName("tableillustrations")));
-// }
-//
-// //structurepage
-// if(nodana.retourneFirstEnfantsByName("structurepage")!=null) if(nodana.retourneFirstEnfantsByName("structurepage").isClose()) {
-// fichier.append(HTML.Table(nodana.retourneFirstEnfantsByName("structurepage")));
-// }
}
diff --git a/src/MEPTL/meptl.java b/src/MEPTL/meptl.java
index aa9ecb0..dfe36e6 100644
--- a/src/MEPTL/meptl.java
+++ b/src/MEPTL/meptl.java
@@ -648,7 +648,9 @@ public class meptl {
nodhistorique.getAttributs().put("nbrModif", String.valueOf(nbrModif));
nodhistorique.getNodes().addAll(a.retourneNames(nodbody, "text:tracked-changes"));
- // Création du node structure à partir du node nodbody
+ //*********************************************************
+ //** Création du node structure à partir du node nodbody **
+ //*********************************************************
node nodstructure = new node();
nodstructure.setNomElt("structure");
for(int j = 0 ; j < nodbody.getNodes().size();j++) {
diff --git a/src/MEPTL/rechercherUnNodeStudent.java b/src/MEPTL/rechercherUnNodeStudent.java
index 51071cf..a8c4f23 100644
--- a/src/MEPTL/rechercherUnNodeStudent.java
+++ b/src/MEPTL/rechercherUnNodeStudent.java
@@ -241,42 +241,64 @@ public class rechercherUnNodeStudent {
if(nodSujet.retourneLesContenusEnfants("").length()<1) return null;
String valueAttribut = evaluation.withoutCodeAndPointPourRechercheContenuExact(nodSujet.retourneLesContenusEnfants(""));
- Pattern p = Pattern.compile("^text:p|^text:h|^text:span|^text:list");
+ Pattern p = Pattern.compile("^text:p|^text:h|^text:span|^text:list"); //le node qui peuvent rechercher par le contenu textuel
Matcher m = p.matcher(nameNode);
if(m.find()) {
- if(nod2Student!=null) if(nodStudent==null) nodStudent = a.retourneFirstNameNodeByFindContentExactly(nod2Student.getNodes(), valueAttribut, nameNode);
- if(nod2Student!=null) if(nodStudent==null) {
- ArrayList tousLesfreres = nod2Student.retourneTousLesFreres();
- for(int i = 0 ; i < tousLesfreres.size();i++) {
- if(nod2Student!=null) if(nodStudent==null) nodStudent = a.retourneFirstNameNodeByFindContentExactly(tousLesfreres.get(i).getNodes(), valueAttribut, nameNode);
- }
- }
- if(nod1Student!=null) if(nodStudent==null) nodStudent = a.retourneFirstNameNodeByFindContentExactly(nod1Student.getNodes(), valueAttribut, nameNode);
- if(nod0Student!=null) if(nodStudent==null) nodStudent = a.retourneFirstNameNodeByFindContentExactly(nod0Student.getNodes(), valueAttribut, nameNode);
-
- if(nodStudent!=null) return nodStudent;
-
- if(nod2Student!=null) if(nodStudent==null) nodStudent = a.retourneFirstNodeByFindContentExact(nod2Student.getNodes(), valueAttribut, nameNode);
- if(nod2Student!=null) if(nodStudent==null) {
- ArrayList tousLesfreres = nod2Student.retourneTousLesFreres();
- for(int i = 0 ; i < tousLesfreres.size();i++) {
- if(nod2Student!=null) if(nodStudent==null) nodStudent = a.retourneFirstNodeByFindContentExact(tousLesfreres.get(i).getNodes(), valueAttribut, nameNode);
- }
- }
- if(nod1Student!=null) if(nodStudent==null) nodStudent = a.retourneFirstNodeByFindContentExact(nod1Student.getNodes(), valueAttribut, nameNode);
- if(nod0Student!=null) if(nodStudent==null) nodStudent = a.retourneFirstNodeByFindContentExact(nod0Student.getNodes(), valueAttribut, nameNode);
-
- if(nodStudent!=null) return nodStudent;
- if(nod2Student!=null) if(nodStudent==null) nodStudent = a.retourneLeNodeByContentPlusProche(nod2Student.getNodes(), valueAttribut, nameNode,0.75,null);
- if(nod2Student!=null) if(nodStudent==null) {
- ArrayList tousLesfreres = nod2Student.retourneTousLesFreres();
- for(int i = 0 ; i < tousLesfreres.size();i++) {
- if(tousLesfreres.get(i)!=null) if(nodStudent==null) nodStudent = a.retourneLeNodeByContentPlusProche(tousLesfreres.get(i).getNodes(), nameNode,valueAttribut,0.75,null);
+ if(nodSujet.getAttributs().get("isDoublon")==null) {
+ //méthode texte rigoureusement exact
+ if(nod2Student!=null) if(nodStudent==null) nodStudent = a.retourneFirstNameNodeByFindContentExactly(nod2Student.getNodes(), valueAttribut, nameNode);
+ if(nod2Student!=null) if(nodStudent==null) {
+ ArrayList tousLesfreres = nod2Student.retourneTousLesFreres(); //Retourne tous les frère d'une même page
+ for(int i = 0 ; i < tousLesfreres.size();i++) {
+ if(nod2Student!=null) if(nodStudent==null) nodStudent = a.retourneFirstNameNodeByFindContentExactly(tousLesfreres.get(i).getNodes(), valueAttribut, nameNode);
+ }
+ }
+ if(nod1Student!=null) if(nodStudent==null) nodStudent = a.retourneFirstNameNodeByFindContentExactly(nod1Student.getNodes(), valueAttribut, nameNode);
+ if(nod0Student!=null) if(nodStudent==null) nodStudent = a.retourneFirstNameNodeByFindContentExactly(nod0Student.getNodes(), valueAttribut, nameNode);
+
+ if(nodStudent!=null) return nodStudent;
+
+ //méthode sans tenir compte de la casse et en supprimant tous les espaces
+ if(nod2Student!=null) if(nodStudent==null) nodStudent = a.retourneFirstNodeByFindContentExact(nod2Student.getNodes(), valueAttribut, nameNode);
+ if(nod2Student!=null) if(nodStudent==null) {
+ ArrayList tousLesfreres = nod2Student.retourneTousLesFreres();
+ for(int i = 0 ; i < tousLesfreres.size();i++) {
+ if(nod2Student!=null) if(nodStudent==null) nodStudent = a.retourneFirstNodeByFindContentExact(tousLesfreres.get(i).getNodes(), valueAttribut, nameNode);
+ }
}
+ if(nod1Student!=null) if(nodStudent==null) nodStudent = a.retourneFirstNodeByFindContentExact(nod1Student.getNodes(), valueAttribut, nameNode);
+ if(nod0Student!=null) if(nodStudent==null) nodStudent = a.retourneFirstNodeByFindContentExact(nod0Student.getNodes(), valueAttribut, nameNode);
+
+ if(nodStudent!=null) return nodStudent;
+
+ //méthode par le calcul de la distance de levenshtein
+ if(nod2Student!=null) if(nodStudent==null) nodStudent = a.retourneLeNodeByContentPlusProche(nod2Student.getNodes(), valueAttribut, nameNode,0.75,null);
+ if(nod2Student!=null) if(nodStudent==null) {
+ ArrayList tousLesfreres = nod2Student.retourneTousLesFreres();
+ for(int i = 0 ; i < tousLesfreres.size();i++) {
+ if(tousLesfreres.get(i)!=null) if(nodStudent==null) nodStudent = a.retourneLeNodeByContentPlusProche(tousLesfreres.get(i).getNodes(), nameNode,valueAttribut,0.75,null);
+ }
+ }
+ if(nod1Student!=null) if(nodStudent==null) nodStudent = a.retourneLeNodeByContentPlusProche(nod1Student.getNodes(), valueAttribut, nameNode,0.75,null);
+ if(nod0Student!=null) if(nodStudent==null) nodStudent = a.retourneLeNodeByContentPlusProche(nod0Student.getNodes(), valueAttribut, nameNode,0.75,null);
+
+ }else {
+
+ //méthode texte rigoureusement exact
+ if(nod2Student!=null) if(nodStudent==null) nodStudent = a.retourneFirstNameNodeByFindContentExactlyWithDoublon(nod2Student.getNodes(), valueAttribut, nameNode, nodSujet);
+ if(nod2Student!=null) if(nodStudent==null) {
+ ArrayList tousLesfreres = nod2Student.retourneTousLesFreres(); //Retourne tous les frère d'une même page
+ for(int i = 0 ; i < tousLesfreres.size();i++) {
+ if(nod2Student!=null) if(nodStudent==null) nodStudent = a.retourneFirstNameNodeByFindContentExactlyWithDoublon(tousLesfreres.get(i).getNodes(), valueAttribut, nameNode, nodSujet);
+ }
+ }
+ if(nod1Student!=null) if(nodStudent==null) nodStudent = a.retourneFirstNameNodeByFindContentExactlyWithDoublon(nod1Student.getNodes(), valueAttribut, nameNode, nodSujet);
+ if(nod0Student!=null) if(nodStudent==null) nodStudent = a.retourneFirstNameNodeByFindContentExactlyWithDoublon(nod0Student.getNodes(), valueAttribut, nameNode, nodSujet);
+
+
}
- if(nod1Student!=null) if(nodStudent==null) nodStudent = a.retourneLeNodeByContentPlusProche(nod1Student.getNodes(), valueAttribut, nameNode,0.75,null);
- if(nod0Student!=null) if(nodStudent==null) nodStudent = a.retourneLeNodeByContentPlusProche(nod0Student.getNodes(), valueAttribut, nameNode,0.75,null);
+
}
return nodStudent;
}
diff --git a/src/evaluer/analyseFichier.java b/src/evaluer/analyseFichier.java
index 788e52b..6e87025 100644
--- a/src/evaluer/analyseFichier.java
+++ b/src/evaluer/analyseFichier.java
@@ -107,8 +107,6 @@ public class analyseFichier {
while(EnuNod.hasMoreElements()) {
node nod = EnuNod.nextElement();
-
-
//Analyse Meta si evaluer=true
if(nod.getNomElt().equals("office:meta")) {
if(nod.getAttributs().get("evaluer")!=null) {
@@ -443,29 +441,31 @@ public class analyseFichier {
nodanalyse.ajouteEnfant(nodmenu);
nodanalyse.ajouteEnfant(erreurs);
+ node nodeEvaluation = new node();
+ nodeEvaluation.setNomElt("evaluation");
+ nodeEvaluation.setClose(true);
if(ordre!=null) {
Enumeration Key = Collections.enumeration(ordre);
while(Key.hasMoreElements()) {
String K = Key.nextElement();
- if(K.equals("meta")) if(!nodmeta.isVide()) nodanalyse.ajouteEnfant(nodmeta);
- if(K.equals("pages")) if(!nodpage.isVide()) nodanalyse.ajouteEnfant(nodpage);
- if(K.equals("paragraphs")) if(!nodparagraph.isVide()) nodanalyse.ajouteEnfant(nodparagraph);
- if(K.equals("sequences")) if(!nodsequence.isVide()) nodanalyse.ajouteEnfant(nodsequence);
- if(K.equals("numerotationchapitre")) if(!nodnumerochapitre.isVide()) nodanalyse.ajouteEnfant(nodnumerochapitre);
- if(K.equals("frames")) if(!nodframes.isVide()) nodanalyse.ajouteEnfant(nodframes);
- if(K.equals("sections")) if(!nodsections.isVide()) nodanalyse.ajouteEnfant(nodsections);
- if(K.equals("tableaux")) if(!nodtableaux.isVide()) nodanalyse.ajouteEnfant(nodtableaux);
- if(K.equals("bibliographies")) if(!nodbiblio.isVide()) nodanalyse.ajouteEnfant(nodbiblio);
- if(K.equals("tablematieres")) if(!nodtablematieres.isVide()) nodanalyse.ajouteEnfant(nodtablematieres);
- if(K.equals("tableillustrations")) if(!nodtableillustrations.isVide()) nodanalyse.ajouteEnfant(nodtableillustrations);
- if(K.equals("structurepage")) if(!nodstructurepage.isVide()) nodanalyse.ajouteEnfant(nodstructurepage);
+ if(K.equals("meta")) if(!nodmeta.isVide()) nodeEvaluation.ajouteEnfant(nodmeta);
+ if(K.equals("pages")) if(!nodpage.isVide()) nodeEvaluation.ajouteEnfant(nodpage);
+ if(K.equals("paragraphs")) if(!nodparagraph.isVide()) nodeEvaluation.ajouteEnfant(nodparagraph);
+ if(K.equals("sequences")) if(!nodsequence.isVide()) nodeEvaluation.ajouteEnfant(nodsequence);
+ if(K.equals("numerotationchapitre")) if(!nodnumerochapitre.isVide()) nodeEvaluation.ajouteEnfant(nodnumerochapitre);
+ if(K.equals("frames")) if(!nodframes.isVide()) nodeEvaluation.ajouteEnfant(nodframes);
+ if(K.equals("sections")) if(!nodsections.isVide()) nodeEvaluation.ajouteEnfant(nodsections);
+ if(K.equals("tableaux")) if(!nodtableaux.isVide()) nodeEvaluation.ajouteEnfant(nodtableaux);
+ if(K.equals("bibliographies")) if(!nodbiblio.isVide()) nodeEvaluation.ajouteEnfant(nodbiblio);
+ if(K.equals("tablematieres")) if(!nodtablematieres.isVide()) nodeEvaluation.ajouteEnfant(nodtablematieres);
+ if(K.equals("tableillustrations")) if(!nodtableillustrations.isVide()) nodeEvaluation.ajouteEnfant(nodtableillustrations);
+ if(K.equals("structurepage")) if(!nodstructurepage.isVide()) nodeEvaluation.ajouteEnfant(nodstructurepage);
}
-
-
}
+ nodanalyse.ajouteEnfant(nodeEvaluation);
diff --git a/src/evaluer/analyseLesNodesPrincipaux.java b/src/evaluer/analyseLesNodesPrincipaux.java
index 388bc26..39bf221 100644
--- a/src/evaluer/analyseLesNodesPrincipaux.java
+++ b/src/evaluer/analyseLesNodesPrincipaux.java
@@ -6,7 +6,6 @@ import java.util.Enumeration;
import MEPTL.meptl;
import cXML.Run;
import cXML.node;
-import calcul.calculNombrePointEvaluation;
public class analyseLesNodesPrincipaux {
@@ -1158,34 +1157,33 @@ public class analyseLesNodesPrincipaux {
node pageStudent = a.retourneFirstNodeByNameAttributValue(nodStudentS, "page", "numeroabsolue", numeroabsolue);
- if(calculNombrePointEvaluation.calculNombreDepoint(pageSujet, 0)>0) {
- //********************************************
- //** analyse les attributs des nodes **
- //********************************************
- page = evaluationAttribut.evalLesAttributEtContenuDuNode(pageStudent, pageSujet, page, "ana:page",pageSujet.getNomElt());
-
- //************************************
- //** analyse tous les nodes enfants **
- //************************************
- page = analyseLesNodesEnfants.nodeNext(page, "ana:page", pageStudent, nodStudentS, null, pageSujet, nodSujetParagraphs, nodStudentParagraphs,nodmenu, a);
+ //********************************************
+ //** analyse les attributs des nodes **
+ //********************************************
+ page = evaluationAttribut.evalLesAttributEtContenuDuNode(pageStudent, pageSujet, page, "ana:page",pageSujet.getNomElt());
- //****************************************************************
- //** Insère les attributs des points dans les node de l'analyse **
- //****************************************************************
- int points = evaluation.getPointsClass()-pointDebut;
- int pointTotal = evaluation.getPointTotal()-pointTotalDebut;
- Double proportioncorrect = 0.0;
- if(pointTotal>0) proportioncorrect = ( (double) points/ (double) pointTotal);
-
- page.getAttributs().put("point", String.valueOf(points));
- page.getAttributs().put("pointTotal", String.valueOf(pointTotal));
- page.getAttributs().put("proportioncorrect", String.valueOf(proportioncorrect));
-
- nodSpages.getNodes().add(page);
+ //************************************
+ //** analyse tous les nodes enfants **
+ //************************************
+ page = analyseLesNodesEnfants.nodeNext(page, "ana:page", pageStudent, nodStudentS, null, pageSujet, nodSujetParagraphs, nodStudentParagraphs,nodmenu, a);
+
+ //****************************************************************
+ //** Insère les attributs des points dans les node de l'analyse **
+ //****************************************************************
+ int points = evaluation.getPointsClass()-pointDebut;
+ int pointTotal = evaluation.getPointTotal()-pointTotalDebut;
+ Double proportioncorrect = 0.0;
+ if(pointTotal>0) proportioncorrect = ( (double) points/ (double) pointTotal);
- }
+ page.getAttributs().put("point", String.valueOf(points));
+ page.getAttributs().put("pointTotal", String.valueOf(pointTotal));
+ page.getAttributs().put("proportioncorrect", String.valueOf(proportioncorrect));
+
+ nodSpages.getNodes().add(page);
+
}
}
+
//****************************************************************
//** Insère les attributs des points dans les node de l'analyse **
//****************************************************************
diff --git a/src/fenetres/afficheText.java b/src/fenetres/afficheText.java
index 05ac861..ac7ff84 100644
--- a/src/fenetres/afficheText.java
+++ b/src/fenetres/afficheText.java
@@ -65,6 +65,7 @@ public class afficheText extends JEditorPane {
String imageInformation= "";
String imageDernierEnfant= "";
String imagePremierEnfant= "";
+ String imageIsDoublon= "";
StringBuilder sb = new StringBuilder();
@@ -231,6 +232,9 @@ public class afficheText extends JEditorPane {
if(Lesattributsdunode.get(i).equals("evalNameLegacyStyle") && !nod.getAttributs().get(Lesattributsdunode.get(i)).equals("0")) {
sb.append(""+imageEvalNameLegacyStyle+ " " + Lesattributsdunode.get(i) + " = \"" + nod.getAttributs().get(Lesattributsdunode.get(i))+"\"");
}
+ if(Lesattributsdunode.get(i).equals("isDoublon") && nod.getAttributs().get(Lesattributsdunode.get(i)).equals("true")) {
+ sb.append(""+imageIsDoublon+ " " + Lesattributsdunode.get(i) + " = \"" + nod.getAttributs().get(Lesattributsdunode.get(i))+"\"");
+ }
// sb.append("" + Lesattributsdunode.get(i) + "=\"" + nod.getAttributs().get(Lesattributsdunode.get(i))+"\"");
}
diff --git a/src/fenetres/create_act/actDownNode.java b/src/fenetres/create_act/actDownNode.java
index 7d2c632..b2722ee 100644
--- a/src/fenetres/create_act/actDownNode.java
+++ b/src/fenetres/create_act/actDownNode.java
@@ -12,6 +12,7 @@ import javax.swing.tree.DefaultMutableTreeNode;
import javax.swing.tree.DefaultTreeModel;
import javax.swing.tree.TreePath;
+import MEPTL.commandes;
import cXML.node;
import fenetres.create;
@@ -49,6 +50,11 @@ public class actDownNode extends AbstractAction{
DefaultTreeModel treeModel = (DefaultTreeModel) fenetres.create.getTree().getModel();
treeModel.insertNodeInto(selectNode, selectParentNode, selectedNodeIndex+1);
+ String nameNode = nod.getNomElt();
+ if(nameNode.equals("text:p")||nameNode.equals("text:h")||nameNode.equals("text:list-item")) {
+ actNewFichierAnalyse.placeIsDoublon(commandes.sujet.retourneFirstEnfantsByName("structurepage"));
+ }
+
DefaultMutableTreeNode root = (DefaultMutableTreeNode) treeModel.getRoot();
fenetres.create.setTree(treeModel);
treeModel.reload(root);
diff --git a/src/fenetres/create_act/actInsereInformationTrue.java b/src/fenetres/create_act/actInsereInformationTrue.java
index b70e452..2db9995 100644
--- a/src/fenetres/create_act/actInsereInformationTrue.java
+++ b/src/fenetres/create_act/actInsereInformationTrue.java
@@ -26,7 +26,7 @@ public class actInsereInformationTrue extends AbstractAction{
String content = nod.retourneLesContenusEnfants("");
if(!content.isEmpty()) if(content.replaceAll(" ", "").length()==0) content=content.replaceAll(" ", "");
if(content.length()>300) content = content.substring(0, 299);
- content = nod.toString() + " : " + content;
+ content = nod.getNomElt() + " : " + content;
nod.getAttributs().put("information", content);
fenetres.create.getTextNodeSelect().refreshAffichage(nod);
}
diff --git a/src/fenetres/create_act/actNewFichierAnalyse.java b/src/fenetres/create_act/actNewFichierAnalyse.java
index 5df2fdc..d8ff735 100644
--- a/src/fenetres/create_act/actNewFichierAnalyse.java
+++ b/src/fenetres/create_act/actNewFichierAnalyse.java
@@ -7,6 +7,11 @@ import java.awt.event.ActionEvent;
import java.awt.event.InputEvent;
import java.awt.event.KeyEvent;
import java.io.IOException;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.Enumeration;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
import javax.swing.AbstractAction;
import javax.swing.Action;
@@ -24,6 +29,7 @@ import MEPTL.ecritureSujet;
import MEPTL.meptl;
import MEPTL.verificationFichierAnalyse;
import cXML.Run;
+import cXML.node;
import evaluer.evaluation;
import fenetres.evaluate;
@@ -88,6 +94,11 @@ public class actNewFichierAnalyse extends AbstractAction{
commandes.sujet = meptl.LectureFichierEtudiantSousFormeDeNode(commandes.sujet,b,0);
+ //Pour les sujets, il faut rechercher les nodes en doublons (par exemple : text:p, text:h, text:list-item)
+ //L'information sera portée par l'attribut isDoublon="1" ou isDoublon="2", etc..
+ // Cela permet de recherche par le numéro du child.
+ placeIsDoublon(commandes.sujet.retourneFirstEnfantsByName("structurepage"));
+
commandes.sujet.getAttributs().put("analysis_filename","sujet.xml");
commandes.sujet = ecritureSujet.nodePourEcritureSujet(commandes.sujet,b,0);
@@ -128,5 +139,30 @@ public class actNewFichierAnalyse extends AbstractAction{
commandes.ecritCode = true;
}
+
+
+ public static void placeIsDoublon(node nod) {
+ if(nod.getNomElt().equals("structurepage")) {
+ Enumeration pages = Collections.enumeration(nod.getNodes());
+ while(pages.hasMoreElements()) {
+ node nodLaPage = pages.nextElement();
+ Pattern p = Pattern.compile("^text:p|^text:h|^text:list|^text:list-item"); //le node qui peuvent rechercher par le contenu textuel
+ ArrayList listTextesInPage = new ArrayList();
+ for(int i = 0 ; i < nodLaPage.getNodes().size();i++) {
+ Matcher m = p.matcher(nodLaPage.getNodes().get(i).getNomElt());
+ if(m.find()) {
+ String content = nodLaPage.getNodes().get(i).retourneLesContenusEnfants("");
+ if(listTextesInPage.contains(content)) {
+ nodLaPage.getNodes().get(i).getAttributs().put("isDoublon", "true");
+ }else {
+ nodLaPage.getNodes().get(i).getAttributs().remove("isDoublon");
+ listTextesInPage.add(content);
+ }
+ }
+ }
+ }
+ }
+ }
+
}
diff --git a/src/fenetres/create_act/actUpNode.java b/src/fenetres/create_act/actUpNode.java
index c84f2ea..4b9b9a0 100644
--- a/src/fenetres/create_act/actUpNode.java
+++ b/src/fenetres/create_act/actUpNode.java
@@ -12,6 +12,7 @@ import javax.swing.tree.DefaultMutableTreeNode;
import javax.swing.tree.DefaultTreeModel;
import javax.swing.tree.TreePath;
+import MEPTL.commandes;
import cXML.node;
import fenetres.create;
@@ -55,6 +56,11 @@ public class actUpNode extends AbstractAction{
DefaultTreeModel treeModel = (DefaultTreeModel) fenetres.create.getTree().getModel();
treeModel.insertNodeInto(selectNode, selectParentNode, selectedNodeIndex-1);
+ String nameNode = nod.getNomElt();
+ if(nameNode.equals("text:p")||nameNode.equals("text:h")||nameNode.equals("text:list-item")) {
+ actNewFichierAnalyse.placeIsDoublon(commandes.sujet.retourneFirstEnfantsByName("structurepage"));
+ }
+
DefaultMutableTreeNode root = (DefaultMutableTreeNode) treeModel.getRoot();
fenetres.create.setTree(treeModel);
treeModel.reload(root);
diff --git a/src/fenetres/evaluate.java b/src/fenetres/evaluate.java
index 5caae40..0b6f593 100644
--- a/src/fenetres/evaluate.java
+++ b/src/fenetres/evaluate.java
@@ -72,6 +72,8 @@ public class evaluate extends JFrame {
private JLabel lblNoDeatail;
private JLabel lblnonote;
private JLabel lblnozip;
+ private JLabel lblVerifHistorique;
+ private JLabel lblnologo;
private JCheckBox chckbxfichiersEtudiants;
private JCheckBox chckbxZipfeedback;
private JCheckBox chckbxnoFeedback;
@@ -129,16 +131,7 @@ public class evaluate extends JFrame {
- chckbxVerif = new JCheckBox("Vérification des historiques avant analyse");
- chckbxVerif.addChangeListener(new ChangeListener() {
- public void stateChanged(ChangeEvent e) {
- if(chckbxVerif.isSelected()) {
- commandes.verifHisto2=true;
- }else {
- commandes.verifHisto2=false;
- }
- }
- });
+
chckbxfichiersEtudiants = new JCheckBox("Les fichiers des étudiants
ne sont pas dans des dossiers nominatifs");
chckbxfichiersEtudiants.addChangeListener(new ChangeListener() {
@@ -239,22 +232,40 @@ public class evaluate extends JFrame {
chckbxZipfeedback.addChangeListener(new ChangeListener() {
public void stateChanged(ChangeEvent e) {
if(chckbxZipfeedback.isSelected()) {
- lblnozip.setIcon(new ImageIcon(evaluate.class.getResource("/resources/nozipstudent.png")));
+ lblnozip.setIcon(new ImageIcon(evaluate.class.getResource("/resources/zipstudent.png")));
commandes.zipfeedback=true;
}else {
- lblnozip.setIcon(new ImageIcon(evaluate.class.getResource("/resources/zipstudent.png")));
+ lblnozip.setIcon(new ImageIcon(evaluate.class.getResource("/resources/nozipstudent.png")));
commandes.zipfeedback=false;
}
}
});
-
-
+
+
+ lblVerifHistorique = new JLabel("");
+ lblVerifHistorique.setIcon(new ImageIcon(evaluate.class.getResource("/resources/noverifhistoriquestudent.png")));
+ panelWest.add(lblVerifHistorique, "cell 0 7");
+ chckbxVerif = new JCheckBox("Vérification des historiques avant analyse");
+ chckbxVerif.addChangeListener(new ChangeListener() {
+ public void stateChanged(ChangeEvent e) {
+ if(chckbxVerif.isSelected()) {
+ lblVerifHistorique.setIcon(new ImageIcon(evaluate.class.getResource("/resources/verifhistoriquestudent.png")));
+ commandes.verifHisto2=true;
+ }else {
+ lblVerifHistorique.setIcon(new ImageIcon(evaluate.class.getResource("/resources/noverifhistoriquestudent.png")));
+ commandes.verifHisto2=false;
+ }
+ }
+ });
chckbxVerif.setToolTipText("Cochez si vous voulez vérifier les échanges de fichiers entre les étudiants.");
chckbxVerif.setFont(new Font("Tahoma", Font.PLAIN, 12));
panelWest.add(chckbxVerif, "flowy,cell 1 7,growx,aligny top");
chckbxVerif.setSelected(commandes.verifHisto2);
+
+
+
lblChargementFichierCSV = new JLabel("Chargement de la liste des étudiants");
panelWest.add(lblChargementFichierCSV, "cell 1 8,alignx left,aligny center");
@@ -281,18 +292,6 @@ public class evaluate extends JFrame {
panelWest.add(lblFichierSVG, "cell 1 11,growx");
- chckbxNoLogo = new JCheckBox("Pas de logo");
- chckbxNoLogo.addChangeListener(new ChangeListener() {
- public void stateChanged(ChangeEvent e) {
- if(chckbxNoLogo.isSelected()) {
- commandes.noLogo=true;
- }else {
- commandes.noLogo=false;
- }
- }
- });
-
-
chckbxNewLogo = new JCheckBox("Nouveau logo");
chckbxNewLogo.addChangeListener(new ChangeListener() {
public void stateChanged(ChangeEvent e) {
@@ -307,10 +306,28 @@ public class evaluate extends JFrame {
chckbxNewLogo.setFont(new Font("Tahoma", Font.PLAIN, 12));
panelWest.add(chckbxNewLogo, "cell 1 12");
chckbxNewLogo.setSelected(commandes.newLogo);
+
+
+
+ chckbxNoLogo = new JCheckBox("Pas de logo");
+ lblnologo = new JLabel("");
+ lblnologo.setIcon(new ImageIcon(evaluate.class.getResource("/resources/logo.png")));
+ panelWest.add(lblnologo, "cell 0 13");
chckbxNoLogo.setToolTipText("Cochez si vous voulez pas de logo dans les feedbacks.");
chckbxNoLogo.setFont(new Font("Tahoma", Font.PLAIN, 12));
panelWest.add(chckbxNoLogo, "cell 1 13");
chckbxNoLogo.setSelected(commandes.noLogo);
+ chckbxNoLogo.addChangeListener(new ChangeListener() {
+ public void stateChanged(ChangeEvent e) {
+ if(chckbxNoLogo.isSelected()) {
+ lblnologo.setIcon(new ImageIcon(evaluate.class.getResource("/resources/nologo.png")));
+ commandes.noLogo=true;
+ }else {
+ lblnologo.setIcon(new ImageIcon(evaluate.class.getResource("/resources/logo.png")));
+ commandes.noLogo=false;
+ }
+ }
+ });
lblPath = new JLabel();
diff --git a/src/list/listeAttributsAnalyseWriter.java b/src/list/listeAttributsAnalyseWriter.java
index 0768d65..0c1def4 100644
--- a/src/list/listeAttributsAnalyseWriter.java
+++ b/src/list/listeAttributsAnalyseWriter.java
@@ -24,12 +24,9 @@ public class listeAttributsAnalyseWriter {
if(attribut.equals("information")) return true;
if(attribut.equals("poids")) return true;
if(attribut.equals("analyseStyle")) return true;
- if(attribut.equals("evalNameLegacyStyle")) return true;
- if(attribut.equals("allContent")) return true;
if(attribut.equals("index")) return true;
if(attribut.equals("recherche_index")) return true;
if(attribut.equals("recherche_contenu_exact")) return true;
- if(attribut.equals("evalNameNode")) return true;
if(attribut.equals("styletitre")) return true; //ancienne version, il faudra les supprimer au fur plus ajouter depuis la version v4.1.2
if(attribut.equals("evalNameCreator")) return true;
if(attribut.equals("evalNameInitialCreator")) return true;
@@ -37,14 +34,19 @@ public class listeAttributsAnalyseWriter {
if(attribut.equals("recherche_contenu_plus_proche_voisin")) return true;
if(attribut.equals("numero")) return true;
if(attribut.equals("numeroabsolue")) return true;
+ if(attribut.equals("isDoublon")) return true;
+
+
if(attribut.equals("EvaluerATraversAnalyseStyle")) return true;
+ // Les attributs évaluateurs
+ if(attribut.equals("evalNameLegacyStyle")) return true;
+ if(attribut.equals("allContent")) return true;
+ if(attribut.equals("evalNameNode")) return true;
if(attribut.equals("evalEntetePasActive")) return true;
if(attribut.equals("evalEnteteActive")) return true;
-
if(attribut.equals("evalPiedPagePasActive")) return true;
- if(attribut.equals("evalPiedPageActive")) return true;
-
+ if(attribut.equals("evalPiedPageActive")) return true;
if(attribut.equals("evalNameSequence")) return true;
if(attribut.equals("evalNamePage")) return true;
if(attribut.equals("evalTextUserDefined")) return true;
diff --git a/src/resources/fichieretudiant.png b/src/resources/fichieretudiant.png
index 982a1b8..5b220de 100644
Binary files a/src/resources/fichieretudiant.png and b/src/resources/fichieretudiant.png differ
diff --git a/src/resources/fichieretudiantmini.png b/src/resources/fichieretudiantmini.png
index 9702c6f..eb0ddb2 100644
Binary files a/src/resources/fichieretudiantmini.png and b/src/resources/fichieretudiantmini.png differ
diff --git a/src/resources/logo.png b/src/resources/logo.png
new file mode 100644
index 0000000..2d6efea
Binary files /dev/null and b/src/resources/logo.png differ
diff --git a/src/resources/nologo.png b/src/resources/nologo.png
new file mode 100644
index 0000000..185eb7f
Binary files /dev/null and b/src/resources/nologo.png differ
diff --git a/src/resources/noverifhistoriquestudent.png b/src/resources/noverifhistoriquestudent.png
new file mode 100644
index 0000000..27a6528
Binary files /dev/null and b/src/resources/noverifhistoriquestudent.png differ
diff --git a/src/resources/noverifhistoriquestudentmini.png b/src/resources/noverifhistoriquestudentmini.png
new file mode 100644
index 0000000..501739c
Binary files /dev/null and b/src/resources/noverifhistoriquestudentmini.png differ
diff --git a/src/resources/rechercheDoublon.png b/src/resources/rechercheDoublon.png
new file mode 100644
index 0000000..16d306f
Binary files /dev/null and b/src/resources/rechercheDoublon.png differ
diff --git a/src/resources/rechercheDoublonmini.png b/src/resources/rechercheDoublonmini.png
new file mode 100644
index 0000000..ce20ce5
Binary files /dev/null and b/src/resources/rechercheDoublonmini.png differ
diff --git a/src/resources/verifhistoriquestudent.png b/src/resources/verifhistoriquestudent.png
new file mode 100644
index 0000000..d1b07c6
Binary files /dev/null and b/src/resources/verifhistoriquestudent.png differ
diff --git a/src/resources/verifhistoriquestudentmini.png b/src/resources/verifhistoriquestudentmini.png
new file mode 100644
index 0000000..1264fb9
Binary files /dev/null and b/src/resources/verifhistoriquestudentmini.png differ