/** * Supprime un enseignant et ses inscriptions en cascade * @param Enseignant $enseignant * @throws \Exception */ public static function rmEnseignant(Enseignant $enseignant) { $conn = Main::bdd(); try { $conn->beginTransaction(); foreach ($enseignant->getLesInscriptions()->getCollection() as $inscription) { $reqPrepare = $conn->prepare("DELETE FROM choix WHERE idInscription = ?"); $reqPrepare->execute(array($inscription->getId())); } $reqPrepare = $conn->prepare("DELETE FROM inscription WHERE idEns = ?"); $reqPrepare->execute(array($enseignant->getId())); $reqPrepare = $conn->prepare("DELETE FROM enseignant WHERE idEns = ?"); $reqPrepare->execute(array($enseignant->getId())); $conn->commit(); } catch (\PDOException $e) { $conn->rollBack(); throw new \Exception("L'enseignant " . $enseignant->getId() . " n'a pas pu être supprimé. Détails : <p>" . $e->getMessage() . "</p>"); } }
Main::setFlashMessage("L'écolé a bien été modifiée", "valid"); echo '<script>document.location.href ="?uc=ecole"</script>'; } else { throw new \Exception("Impossible de modifier l'école (mauvais formats entrés)"); } } catch (\Exception $e) { Main::setFlashMessage($e->getMessage(), "error"); } break; case 'voirAjouterEcole': require_once ROOT . 'views/kiosqueadmin/schools/v_SchoolAdd.php'; break; case 'AjouterEcole': try { if (!is_numeric($_POST['nomEcole']) && is_numeric($_POST['cpEcole']) && is_numeric($_POST['telDir']) && !empty($_POST['nomEcole']) && !empty($_POST['adresseEcole']) && !empty($_POST['cpEcole']) && !empty($_POST['villeEcole']) && !empty($_POST['mailDir']) && !empty($_POST['telDir']) && !empty($_POST['nomDir'])) { $directeur = new Enseignant(1, $_POST['civDir'], $_POST['nomDir'], $_POST['prenomDir'], $_POST['mailDir'], $_POST['telDir'], 1); $ecole = new Ecole(1, $_POST['typeEcole'], $_POST['nomEcole'], $_POST['adresseEcole'], 1, $_POST['cpEcole'], $_POST['villeEcole'], $_POST['mailDir'], $directeur); $idEcole = MEcole::setEcole($ecole); $ecole->setId($idEcole); $directeur->setEcole($ecole); $idEnseignant = MEnseignant::addEnseignant($directeur); $directeur->setId($idEnseignant); $ecole->setDirecteur($directeur); MEcole::editEcole($ecole, $directeur); Main::setFlashMessage("L'école a bien été ajoutée", "valid"); echo '<script>document.location.href ="?uc=ecole"</script>'; } else { echo '<script>document.location.href ="?uc=ecole"</script>'; throw new \Exception("Impossible d'ajouter l'école (mauvais formats entrés)"); } } catch (\Exception $e) {
public static function getInscriptionByIdEnseignantNonJoin(Enseignant $enseignant) { $conn = Main::bdd(); try { $reqPrepare = $conn->prepare("SELECT * FROM inscription WHERE idEns = ?"); $reqPrepare->execute(array($enseignant->getId())); $tab = $reqPrepare->fetchall(); return $tab; } catch (\PDOException $e) { throw new \Exception("L'enseignant " . $enseignant->getId() . " n'a aucune inscription."); } }