/** * toHTML * @param String $type : type de réponse voulue de l'entreprise ("accepter" ou "refuser") * @return HTML */ public function toHTML($type) { $acceptPhrases = array("En attente", "Validé"); $acceptClass = array("attente", "valide"); $actionPhrase = array("accepter" => "Accepter", "refuser" => "Refuser"); $actionLien = array("accepter" => "accepterStage.php", "refuser" => "annulerStage.php"); $offre = OffreStage::createFromID($this->idOffre); $etudiant = Etudiant::createFromID($this->idEtu); $enseignant = Enseignant::createFromID($this->idEns); return <<<HTML <tr> <td><a href="../offres/offre.php?id={$this->idOffre}">{$offre->getIntitule()}</a></td> <td>{$etudiant->getNom()} {$etudiant->getPrenom()}</td> <td>{$enseignant->getNomPrenom()}</td> <td class="{$acceptClass[$this->acceptEnt]}">{$acceptPhrases[$this->acceptEnt]}</td> <td class="{$acceptClass[$this->acceptEns]}">{$acceptPhrases[$this->acceptEns]}</td> <td class="{$acceptClass[$this->acceptEtu]}">{$acceptPhrases[$this->acceptEtu]}</td> <td> <a href="{$actionLien[$type]}?idO={$this->idOffre}&idEtu={$this->idEtu}" >{$actionPhrase[$type]}</a></td> </tr> HTML; }
<?php require_once "../inc/config.inc.php"; session_start(); if (isset($_SESSION["membre"]) && $_SESSION["membre"] instanceof Entreprise) { $idOffre = (int) $_GET["idO"]; $idEtudiant = (int) $_GET["idE"]; $idEntreprise = $_SESSION["membre"]->getID(); if (in_array(OffreStage::createFromID($idOffre), $_SESSION["membre"]->getOffresProposees())) { $message = "Candidature acceptée. Vous pouvez voir l'état d'avancement du stage dans votre récapitulatif <a href='listeStagesEntreprise.php'>\"Mes stages\"</a><br>\n <a href=\"listeCandidatures.php?id={$idOffre}\">Retour</a>"; $g = Gestionnaire::getInstance(); $g->creeStage($idEtudiant, $idOffre); // MAJ de l'objet en session : $_SESSION["membre"] = Entreprise::createFromID($_SESSION["membre"]->getID()); } else { $message = "Vous ne pouvez pas accepter cette offre. <a href=\"index.php\">Retour</a>"; } $p = new Page("Gestion des stages :: Valider une candidature"); $p->appendCssUrl("../inc/style/stylePageAjout.css"); $p->appendContent(<<<HTML <header> <h1>Valider une candidature</h1> </header> <p class="mesage">{$message}</p> HTML ); echo $p->toHTML(); } else { header("Location: ../index.php"); }
/** * Faire postuler cet Etudiant à une offre, passée en paramètre * @param OffreStage $o : l'offre à laquelle postuler * @return void */ public function candidaterOffre($o, $lettre = 'Pas de message') { $idOffre = $o->getId(); $pdo = myPDO::getInstance(); // On récupère d'abord la Personne $stmt = $pdo->prepare(<<<SQL INSERT INTO CANDIDATURE (idEtu, idOffre, lettreMotiv, refuse) VALUES (:idEtu, :idOffre, :msg, :acc) SQL ); $stmt->execute(array(':idEtu' => $this->idEtu, ':idOffre' => $idOffre, ':msg' => $lettre, ':acc' => '0')); $this->offresPostulees[] = $o; }
<?php require_once "../inc/config.inc.php"; session_start(); if (isset($_SESSION["membre"]) && $_SESSION["membre"] instanceof Entreprise) { $p = new Page("Gestion des stages :: Voir les candidatures"); $p->appendCssUrl("../inc/style/styleOffres.css"); $p->appendCssUrl("../inc/style/styleCandEtu.css"); $p->appendJsUrl("../inc/script/scriptOffres.js"); $p->appendCssUrl("../inc/style/stylePageOffres.css"); $p->appendCssUrl("../inc/style/stylePageOffresEnt.css"); $idOffre = (int) $_GET["id"]; if (in_array(OffreStage::createFromID($idOffre), $_SESSION["membre"]->getOffresProposees())) { $nomOffre = OffreStage::createFromID($idOffre)->getIntitule(); $html = <<<HTML <header> <h1>Liste des candidatures pour l'offre <a href="../offres/offre.php?id={$idOffre}">"{$nomOffre}"</a></h1> <p>Cliquez sur une offre pour lire la lettre de motivation du candidat<br> <a href="listeOffresEntreprise.php"><- Retour</a></p> </header> <table> <thead> <tr> <th>Nom</th> <th>Prénom</th> <th>CV</th> <th>Valider</th> <th>Refuser</th> </tr> </thead> <tbody>
/** * Crée une Offre dans la BD, correspondant à cette entreprise * @param $_REQUEST $formulaire : les données de l'offre, entrées dans le formulaire par l'entreprise * @return void */ public function creerOffre($formulaire) { OffreStage::creerOffre($formulaire, $this->id); }
public function creeStage($idEtudiant, $idOffre) { $pdo = myPDO::getInstance(); $stmt = $pdo->prepare(<<<SQL INSERT INTO STAGE(idEtu, idOffre, idEns, acceptEnt, acceptEtu, acceptEns) VALUES(:idEtu, :idOffre, :idEns, 1, 0, 0) SQL ); $idEns = $this->calculTuteur(OffreStage::createFromID($idOffre)->getEntrepriseId()); $stmt->execute(array("idEtu" => $idEtudiant, "idOffre" => $idOffre, "idEns" => $idEns)); $stmt2 = $pdo->prepare(<<<SQL UPDATE CANDIDATURE SET refuse = 2 WHERE idEtu = :idEtu AND idOffre = :idOffre SQL ); $stmt2->execute(array("idEtu" => $idEtudiant, "idOffre" => $idOffre)); }
public function getTutorats() { // pb car affiche dans les 2 tableaux $html = <<<HTML <table> <thead> <tr> <th>Etudiant</th> <th>Entreprise</th> <th>Debut Stage</th> <th>Fin Stage</th> </tr> </thead> <tbody> HTML; foreach ($this->stagesTutores as $s) { $o = OffreStage::createFromID($s->getIdOffre()); $e = Etudiant::createFromID($s->getIdEtu()); $ent = Entreprise::createFromID($o->getEntrepriseId()); $html .= "<tr>"; $html .= "<td>" . $e->getNom() . "</td>"; $html .= "<td>" . $ent->getNomEntreprise() . "</td>"; $html .= "<td>" . $o->getDateDebut() . "</td>"; $html .= "<td>" . $o->getDateFin() . "</td>"; $html .= "</tr>"; $html .= "<tr class='descriptionOffre' style='display:none'><td colspan='4'>" . $o->getDescription() . "</td></tr>"; } $html .= "</tbody></table>"; return $html; }
<?php require_once "../inc/config.inc.php"; session_start(); if (isset($_SESSION["membre"]) && $_SESSION["membre"] instanceof Entreprise) { $id = (int) $_GET["id"]; $o = OffreStage::createFromID($id); if ($o->getIdEnt() == $_SESSION["membre"]->getID()) { $pdo = myPDO::getInstance(); $stmt = $pdo->prepare(<<<SQL UPDATE OFFRESTAGE SET supprime = 1 WHERE idOffre = :id SQL ); $stmt->execute(array("id" => $id)); // MAJ de l'objet en session : $_SESSION["membre"] = Entreprise::createFromID($_SESSION["membre"]->getID()); } header("Location: listeOffresEntreprise.php"); } else { header("Location: ../index.php"); }