예제 #1
0
function supprimerVoteEtCitation($citation)
{
    $db = new Mypdo();
    $managerC = new CitationManager($db);
    $managerV = new VoteManager($db);
    $managerV->supprimerVoteCitation($citation);
    $managerC->supprimerCitation($citation);
}
 public function deleteByPerNum($per_num)
 {
     $voteManager = new VoteManager($this->db);
     $citationManager = new CitationManager($this->db);
     $personneManager = new PersonneManager($this->db);
     $listeVoteDeLaPersonne = $voteManager->getVoteByPerNum($per_num);
     if ($personneManager->isEtudiant($per_num)) {
         $listeCitationDeLaPersonne = $citationManager->getCitationToDeleteForStudent($per_num);
         if (isset($listeCitationDeLaPersonne)) {
             foreach ($listeCitationDeLaPersonne as $citation) {
                 $voteManager->deleteVoteByCitNum($citation->getCitationNum());
                 $citationManager->deleteCitationByCitNum($citation->getCitationNum());
             }
         }
     } else {
         $listeCitationDeLaPersonne = $citationManager->getCitationToDeleteForProf($per_num);
         if (isset($listeCitationDeLaPersonne)) {
             foreach ($listeCitationDeLaPersonne as $citation) {
                 $voteManager->deleteVoteByCitNum($citation->getCitationNum());
                 $citationManager->deleteCitationByCitNum($citation->getCitationNum());
             }
         }
     }
     if (isset($listeVoteDeLaPersonne)) {
         foreach ($listeVoteDeLaPersonne as $vote) {
             $voteManager->deleteVoteByPerNum($vote->getPerNum());
         }
     }
     if (isset($listeCitationDeLaPersonne)) {
         foreach ($listeCitationDeLaPersonne as $citation) {
             $citationManager->deleteCitationByCitNum($citation->getCitationNum());
         }
     }
     if ($personneManager->isEtudiant($per_num)) {
         $etudiantManager = new EtudiantManager($this->db);
         $retour = $etudiantManager->delete($per_num);
     } else {
         $salarieManager = new SalarieManager($this->db);
         $retour = $salarieManager->delete($per_num);
     }
     $sql = "DELETE FROM personne WHERE per_num=:per_num;";
     $requete = $this->db->prepare($sql);
     $requete->bindValue(':per_num', $per_num);
     $retour = $requete->execute();
     return $retour;
 }
 public function deleteForChange($per_num)
 {
     $voteManager = new VoteManager($this->db);
     $citationManager = new CitationManager($this->db);
     $citationToDelete = $citationManager->getCitationToDeleteForStudent($per_num);
     if (isset($citationToDelete)) {
         foreach ($citationToDelete as $citation) {
             $voteManager->deleteVoteByCitNum($citation->getCitationPerNum());
             $citationManager->deleteCitationByCitNum($citation->getCitationPerNum());
         }
     }
     $citationManager->deleteByPerNum($per_num);
     $sql = "DELETE FROM vote WHERE per_num=:per_num; DELETE FROM citation WHERE per_num_etu=:per_num; DELETE FROM etudiant WHERE per_num=:per_num";
     $requete = $this->db->prepare($sql);
     $requete->bindValue(":per_num", $per_num);
     $retour = $requete->execute();
 }
예제 #4
0
<h1> Noter une citation </h1>
<?php 
$db = new Mypdo();
$managerV = new VoteManager($db);
$managerV->voter($_SESSION['numCitation'], $_SESSION['id'], $_POST['noteCit']);
?>

<!-- message de confirmation -->
<img src="image/valid.png" alt="ImageValide" /> Votre note a bien été prise en compte !<?php 
unset($_SESSION['numCitation']);
//on desinitialise le numero de la citation
예제 #5
0
<?php

$db = new Mypdo();
$managerC = new CitationManager($db);
$managerP = new PersonneManager($db);
$managerV = new VoteManager($db);
?>
<h1>Liste des citations déposées</h1>
<p>Actuellement <?php 
echo $managerC->getNbCitationValide()->nbCitation;
?>
 citation(s) enregistrée(s) </p>


<table class="tableCli">
	<tr class="hautTableau">
		<td><b>Nom de l'enseignant </b></td>
		<td><b>Libellé</b></td>
		<td><b>Date</b></td>
		<td><b>Moyenne des notes</b></td><?php 
if (isset($_SESSION['id'])) {
    ?>
			<td><b>Noter</b></td><?php 
}
?>
	</tr>

	<?php 
$listeCitation = $managerC->getListeCitations();
//on liste les citations validées
foreach ($listeCitation as $citation) {
예제 #6
0
<?php

require_once './VoteState.php';
require_once './NormalVoteState.php';
require_once './RepeatVoteState.php';
require_once './SpiteVoteState.php';
require_once './BlackVoteState.php';
require_once './VoteManager.php';
$vote_manager = new VoteManager();
for ($i = 0; $i < 9; $i++) {
    $vote_manager->vote("u1", "A");
}
<script> changerTitre("Voter pour une citation"); </script>
<h1>Voter pour une citation</h1>
<?php 
$pdo = new Mypdo();
$citationManager = new CitationManager($pdo);
$personneManager = new PersonneManager($pdo);
$voteManager = new VoteManager($pdo);
if (!isConnected() || !$personneManager->isEtudiant(getPersonneConnectee()->getPerNum())) {
    throw new ExceptionPerso("Vous n'avez pas les droits pour afficher cette page. Seul un etudiant peut ajouter une citation !", ExceptionPerso::ERR_DROITS);
}
if (empty($_GET['id'])) {
    throw new ExceptionPerso("Merci de ne pas modifier l'URL de la page", ExceptionPerso::ERR_URL);
} else {
    $citation = $citationManager->getCitation($_GET['id']);
    if (empty($_POST['vot_valeur'])) {
        $detailsProf = $personneManager->getPersonne($citation->getCitationPerNum());
        $moyenne = $voteManager->getMoyenneVote($citation->getCitationNum());
        include "include/pages/form/voterCitation.form.inc.php";
    } else {
        if ($voteManager->isPerNumDejaVote(getPersonneConnectee()->getPerNum(), $citation->getCitationNum())) {
            throw new ExceptionPerso("Vous avez déjà voté pour cette citation !", ExceptionPerso::ERR_VOTE);
        }
        $vote = new Vote(array('cit_num' => $citation->getCitationNum(), 'per_num' => getPersonneConnectee()->getPerNum(), 'vot_valeur' => $_POST['vot_valeur'] === "zero" ? 0 : $_POST["vot_valeur"]));
        $retour = $voteManager->add($vote);
        if ($retour != 0) {
            afficherMessageSucces("Votre vote a été pris en compte !");
            redirection(1, LISTER_CITATIONS);
        } else {
            afficherMessageErreur("Votre vote n'a pas été pris en compte, il se peut que vous ayiez déjà voté !");
            redirection(5, LISTER_CITATIONS);
        }
예제 #8
0
<h1>Supprimer une ville</h1>
<?php 
$db = new Mypdo();
$managerP = new PersonneManager($db);
$managerV = new VilleManager($db);
$managerVo = new VoteManager($db);
$managerC = new CitationManager($db);
$managerE = new EtudiantManager($db);
$managerDe = new DepartementManager($db);
$managerDi = new DivisionManager($db);
if ($managerV->isVille($_GET['ville'])) {
    $nomVille = $managerV->getNomVilleIdVille($_GET['ville']);
    //recuperation du nom de la ville
    //on recupere la liste des departements correspondant à la ville
    $listeDepartements = $managerDe->getDepartementIdVille($_GET['ville']);
    if (!empty($listeDepartements)) {
        foreach ($listeDepartements as $departement) {
            //on recupere la liste des etudiants correspondant au departement
            $listeEtudiant = $managerE->getEtudiantIdDepartement($departement->getDepNum());
            if (!empty($listeEtudiant)) {
                foreach ($listeEtudiant as $etudiant) {
                    //on recupere la liste des citations correspondant à l'étudiant
                    $listeCit = $managerC->getCitationIdEtudiant($etudiant->getNumPers());
                    foreach ($listeCit as $citation) {
                        supprimerVoteEtCitation($citation->getNumCit());
                    }
                    //suppression des votes restants (pour citations entrées par un autre etudiant)
                    $managerVo->supprimerVoteIdPersonne($etudiant->getNumPers());
                    //suppression de l'etudiant
                    $managerE->supprimerEtudiant($etudiant->getNumPers());
                    //suppression de la personne
예제 #9
0
<h1> Noter une citation </h1>

<?php 
$db = new Mypdo();
$managerP = new PersonneManager($db);
$managerE = new EtudiantManager($db);
$managerC = new CitationManager($db);
$managerV = new VoteManager($db);
$_SESSION['numCitation'] = $_GET['citation'];
if (!$managerE->isEtudiant($_SESSION['id'])) {
    ?>
  <img src="image/erreur.png" alt="Erreur" /> Seul les <b>étudiants</b> ont le droit de noter une citation <br/><br/>
  <a href="index.php?page=2" class="bouton">Retour aux citations</a><?php 
} else {
    if ($managerV->aVote($_SESSION['numCitation'], $_SESSION['id'])) {
        ?>
    <img src="image/erreur.png" alt="Erreur" /> Vous avez déjà voté pour cette citation <br/><br/>
    <a href="index.php?page=2" class="bouton">Retour aux citations</a><?php 
    } else {
        if ($managerC->isCitationValide($_GET['citation'])) {
            ?>
      <!-- libellé de la citation-->
      <p>Evaluez la citation : <b>"<?php 
            echo $managerC->getLibelleCitation($_GET['citation'])->cit_libelle;
            ?>
"</b></p>
      <div class="divCentre" id="ajout">
        <form action="index.php?page=85" method="post" name="voteCitation">
          <div class="texteFormulaire">
            <p>Note :</p>
          </div>
<h1>Supprimer une personnes enregistrée</h1>
<?php 
$db = new Mypdo();
$managerP = new PersonneManager($db);
$managerC = new CitationManager($db);
$managerE = new EtudiantManager($db);
$managerS = new SalarieManager($db);
$managerV = new VoteManager($db);
$supprimer = TRUE;
//verification que l'id personne existe (au cas d'une URL tapée)
if ($managerP->isPersonne($_GET['personne'])) {
    $personne = $managerP->getPersonneById($_GET['personne']);
    $prenom = $personne->per_prenom;
    $nom = $personne->per_nom;
    //on recupere le nom et le prenom de la personne pour affchage de confirmation
    //cas etudiant
    if ($managerE->isEtudiant($_GET['personne'])) {
        $listeCit = $managerC->getCitationIdEtudiant($_GET['personne']);
        foreach ($listeCit as $citation) {
            supprimerVoteEtCitation($citation->getNumCit());
            //suppression des citations et des votes associés à l'étudiant
        }
        //suppression des votes restants (pour citations entrées par un autre etudiant)
        $managerV->supprimerVoteIdPersonne($_GET['personne']);
        //suppression de l'etudiant
        $managerE->supprimerEtudiant($_GET['personne']);
    } else {
        //cas administrateur
        if ($managerP->isAdminId($_GET['personne'])) {
            //on ne peut pas supprimer le derniere administrateur de la base de données
            if ($managerP->nbAdmin() == 1) {