diff --git a/Course.class.php b/Course.class.php new file mode 100644 index 0000000..f2b3f48 --- /dev/null +++ b/Course.class.php @@ -0,0 +1,134 @@ +id = $node->getAttribute("xml:id"); + $this->registerdate = $node->getAttribute("registerdate"); + if (intval($node->getAttribute("validated"))) + $this->validated = true; + $this->name = $node->getAttribute("name"); + $this->code = $node->getAttribute("code"); + $this->branch = $node->getAttribute("branch"); + } + } + + public static function new_Course($name, $code, $branch = "") + { + $c = new Course(); + $c->id = sha1($code); + $c->registerdate = time(); + $c->name = $name; + $c->code = $code; + $c->branch = $branch; + + return $c; + } + + public static function getCourses($filename = "courses.xml") + { + $courses = array(); + $treeXML = new DOMDocument('1.0', 'UTF-8'); + + if (@$treeXML->load($filename)) + { + $nodes = $treeXML->getElementsByTagName("course"); + foreach($nodes as $node) + { + $c = new Course($node); + $courses[$c->id] = $c; + } + } + + return $courses; + } + + public static function setCourses($courses, $filename = "courses.xml") + { + $treeXML = new DOMDocument('1.0', 'UTF-8'); + $root_node = $treeXML->createElement("users"); + $treeXML->appendChild($root_node); + + foreach ($courses as $course) + $root_node->appendChild($course->to_xml($treeXML)); + + $treeXML->formatOutput = true; + $treeXML->save($filename); + } + + public function to_xml($root) + { + $qnode = $root->createElement("course"); + + $qnode->setAttribute("xml:id", $this->id); + $qnode->setAttribute("name", $this->name); + $qnode->setAttribute("code", intval($this->code)); + $qnode->setAttribute("branch", $this->branch); + $qnode->setAttribute("registerdate", $this->registerdate); + $qnode->setAttribute("validated", $this->validated); + + return $qnode; + } + + public function set_validated($validated) + { + $this->validated = $validated; + } + + public function getId() + { + return $this->id; + } + + public function getName() + { + return $this->name; + } + + public function isValidated() + { + return $this->validated; + } +} + +/* +$cs = Course::getCourses(); + +foreach($cs as $c) + $c->set_validated(true); +Course::setCourses($cs); +//*/ +/* +$cs = Course::getCourses(); + +$c = Course::new_Course("Base de donnees", "RELA"); +$cs[] = $c; + +$c = Course::new_Course("Compression de donnee", "CODO"); +$cs[] = $c; + +$c = Course::new_Course("Protocole de liaisons", "PROLI"); +$cs[] = $c; + +$c = Course::new_Course("Typologie des langages", "TYLA", "TDA;SRC"); +$cs[] = $c; + +$c = Course::new_Course("Active directory", "ACDI"); +$cs[] = $c; + +$c = Course::new_Course("Graphes reseaux flots", "GRF"); +$cs[] = $c; + +Course::setCourses($cs); +//*/ +?> \ No newline at end of file diff --git a/index.php b/index.php index 68d2b9a..254f5f7 100644 --- a/index.php +++ b/index.php @@ -119,48 +119,24 @@ <

Quelques détails

- Le champ "De quelle matière s'agit-il ?" n'est là qu'a titre - indicatif. Il va permettre à la personne qui valide votre question - d'aller vérifier par lui même la véracité de votre réponse. + Ce champ est là à titre indicatif. Il va permettre à la personne + qui valide votre question d'aller vérifier par lui même la + véracité de votre réponse ; et il permet également de filtrer + les questions en fonction des matière que chacun souhaite réviser.


-
@@ -191,7 +167,7 @@ onclick="add()"/>

-
+