Beispiel #1
0
 /**
  * Met a jour la base de données
  * @param DevoirsModel $d
  * @return boolean
  */
 public static function update(DevoirsModel $d)
 {
     $db = DB::Connect();
     $query = $db->prepare("UPDATE " . self::TABLE . " SET " . self::NOM_COL . " = :name," . self::GROUPE_COL . " = :groupe," . " WHERE " . self::ID_COL . " = :id");
     try {
         $query->bindValue(":id", $d->getId(), PDO::PARAM_INT);
         $query->bindValue(":name", $d->getName(), PDO::PARAM_STR);
         $query->bindValue(":groupe", $d->enGroupe(), PDO::PARAM_BOOL);
         $db->beginTransaction();
         $query->execute();
         $db->commit();
     } catch (PDOException $e) {
         $db->rollback();
         DB::setError($e->getMessage());
         return false;
     }
     return self::findById($d->getId());
 }
Beispiel #2
0
 /**
  * Gere les echanges ajax avec la page pour modifier un cours
  * @param type $id_cours
  */
 public function updateCours($id_cours)
 {
     $this->enseignantOnly();
     $user = $this->_session->user;
     $matiere = MatieresModel::findById($id_cours);
     $result = array("result" => "ok");
     if ($matiere) {
         $newMatiere = json_decode($_POST["jsonData"]);
         if ($newMatiere->id === $matiere->id) {
             // Matiere
             if (!empty($newMatiere->nom) && $newMatiere->nom != $matiere->getName()) {
                 $matiere->setName($newMatiere->nom);
                 $matiere->save();
             }
             // Devoirs
             if (!empty($newMatiere->devoirs)) {
                 $matiere->loadDevoirs();
                 foreach ($newMatiere->devoirs as $d) {
                     if ($d->id < 0) {
                         // INSERT NEW DEVOIR
                         $devoir = new DevoirsModel();
                         $devoir->setIdMat($matiere->getId());
                         $devoir->setResp($user->id);
                         $devoir->setName($d->nom);
                         $devoir->enGroupe(boolval($d->groupe));
                         $devoir->create();
                         if (!empty($d->fichiers)) {
                             foreach ($d->fichiers as $f) {
                                 // INSERT NEW FICHIER
                                 $fichier = new FichiersModel();
                                 $fichier->setName($f->nom);
                                 $fichier->setDate($f->date);
                                 $fichier->setHeure($f->heure);
                                 $fichier->setIdDevoir($d->id);
                                 $fichier->acceptRetard(boolval($f->retard));
                                 $fichier->create();
                             }
                         }
                     } else {
                         $devoir = $matiere->findDevoir($d->id);
                         if ($devoir) {
                             if ($devoir->getName() !== $d->nom || $devoir->enGroupe() !== boolval($d->groupe)) {
                                 $devoir->setName($d->nom);
                                 $devoir->enGroupe(boolval($d->groupe));
                                 $devoir->save();
                             }
                             if (!empty($d->fichiers)) {
                                 foreach ($d->fichiers as $f) {
                                     if ($f->id < 0) {
                                         // INSERT NEW FICHIER
                                         $fichier = new FichiersModel();
                                         $fichier->setName($f->nom);
                                         $fichier->setDate($f->date);
                                         $fichier->setHeure($f->heure);
                                         $fichier->setIdDevoir($d->id);
                                         $fichier->acceptRetard(boolval($f->retard));
                                         $fichier->create();
                                     } else {
                                         $fichier = $devoir->getFichiersAttendus($f->id);
                                         if ($fichier) {
                                             if ($fichier->getName() !== $f->nom || $fichier->getDate() !== $f->date || $fichier->getHeure() !== $f->heure || $fichier->acceptRetard() !== boolval($f->retard)) {
                                                 $fichier->setName($f->nom);
                                                 $fichier->setDate($f->date);
                                                 $fichier->setHeure($f->heure);
                                                 $fichier->acceptRetard(boolval($f->retard));
                                                 $fichier->save();
                                             }
                                         } else {
                                             $result["result"] = "OOPS - FICHIER NON TROUVE";
                                         }
                                     }
                                 }
                             }
                         } else {
                             $result["result"] = "OOPS - DEVOIR NON TROUVE";
                         }
                     }
                 }
             }
         } else {
             echo json_encode(["result" => 'Mauvais identifiants']);
         }
     } else {
         $result["result"] = "error";
     }
     echo json_encode($result);
 }
Beispiel #3
0
 /**
  * Récupère tous ses devoirs associé dans la BDD 
  */
 public function loadDevoirs()
 {
     $this->devoirs = DevoirsModel::findAll($this->id);
 }