Ejemplo n.º 1
0
 for ($cpt = 0; $cpt < $matieres['count']; $cpt++) {
     $code_matiere = $matieres[$cpt]['cn'][0];
     $nom_matiere = $matieres[$cpt]['description'][0];
     // On test si on a déjà cette matière
     $nouvelle_matiere = MatierePeer::retrieveByPK($code_matiere);
     if ($nouvelle_matiere != null) {
         echo "La matière " . $nouvelle_matiere->getMatiere() . " (" . $nouvelle_matiere->getNomComplet() . ") existe d&eacute;j&agrave;<br/>";
     } else {
         $nouvelle_matiere = new Matiere();
         $nouvelle_matiere->setMatiere($code_matiere);
         $nouvelle_matiere->setNomComplet($nom_matiere);
         $nouvelle_matiere->save();
     }
     // Maintenant on associe les profs à cette matiere
     $nb_profs = $matieres[$cpt]['memberuid']['count'];
     $matiere_profs = $nouvelle_matiere->getProfesseurs();
     if ($nb_profs > 0) {
         for ($i = 0; $i < $nb_profs; $i++) {
             // On vérifie que le prof existe, quand même...
             $prof = UtilisateurProfessionnelPeer::retrieveByPK($matieres[$cpt]['memberuid'][$i]);
             // Le prof existe, on créer l'association, si elle n'existe pas encore
             if ($prof != null) {
                 // L'association n'existe pas, on la créé
                 // Pour ça, on doit déterminer l'ordre
                 if (!$matiere_profs->contains($prof)) {
                     $assoc = JProfesseursMatieresQuery::create()->filterByProfesseur($prof)->orderByOrdreMatieres('desc')->findOne();
                     $nouvel_ordre = $assoc == null ? 1 : $assoc->getOrdreMatieres() + 1;
                     $new_assoc = new JProfesseursMatieres();
                     $new_assoc->setProfesseur($prof);
                     $new_assoc->setMatiere($nouvelle_matiere);
                     $new_assoc->setOrdreMatieres($nouvel_ordre);