echo "<p>Aucune proposition de remplacement n'a reçu d'accueil favorable pour le moment.</p>";
        //require("../lib/footer.inc.php");
        //die();
    }
    $tab_r = $tab_propositions_avec_reponse_positive;
} else {
    // On affiche les anciens remplacements pour attribuer après coup.
    echo "<p>Si des remplacements de cours (<em>dans le passé</em>) ont eu lieu sans pour autant être validés dans Gepi, vous pouvez les attribuer/valider maintenant à des fins de statistiques/totaux dans le cas où des rémunérations de remplacements sont prévues.</p>";
    $sql = "SELECT * FROM abs_prof_remplacement WHERE date_debut_r<'" . strftime('%Y-%m-%d %H:%M:%S') . "';";
    $res = mysqli_query($GLOBALS["mysqli"], $sql);
    if (mysqli_num_rows($res) > 0) {
        $tab_remplacements = array();
        $cpt = 0;
        while ($lig = mysqli_fetch_object($res)) {
            //if(check_proposition_remplacement_validee2($lig->id)=="") {
            if (check_proposition_remplacement_validee($lig->id_absence, $lig->id_groupe, $lig->id_classe, $lig->jour, $lig->id_creneau) == "") {
                // Créneau sans remplacement programmé
                //$tab_remplacements[]=$lig->id;
                $tab_remplacements[$cpt]['id'] = $lig->id;
                $tab_remplacements[$cpt]['id_absence'] = $lig->id_absence;
                $tab_remplacements[$cpt]['id_groupe'] = $lig->id_groupe;
                $tab_remplacements[$cpt]['id_classe'] = $lig->id_classe;
                $tab_remplacements[$cpt]['jour'] = $lig->jour;
                $tab_remplacements[$cpt]['id_creneau'] = $lig->id_creneau;
                $tab_remplacements[$cpt]['date_debut_r'] = $lig->date_debut_r;
                $tab_remplacements[$cpt]['date_fin_r'] = $lig->date_fin_r;
                $tab_remplacements[$cpt]['date_reponse'] = $lig->date_reponse;
                $tab_remplacements[$cpt]['login_user'] = $lig->login_user;
                $tab_remplacements[$cpt]['commentaire_prof'] = $lig->commentaire_prof;
                // Normalement ce qui suit est vide
                $tab_remplacements[$cpt]['validation_remplacement'] = $lig->validation_remplacement;
        $msg .= "{$nb_suppr} proposition(s) supprimée(s).<br />";
    }
}
if (isset($_GET['valider_proposition']) || isset($_POST['valider_proposition'])) {
    check_token();
    $valider_proposition = isset($_POST['valider_proposition']) ? $_POST['valider_proposition'] : (isset($_GET['valider_proposition']) ? $_GET['valider_proposition'] : "");
    $tab = explode("|", $valider_proposition);
    $commentaire_validation = isset($_POST['commentaire_validation']) ? $_POST['commentaire_validation'] : "";
    $salle = isset($_POST['salle']) ? $_POST['salle'] : "";
    if (isset($tab[4])) {
        $id_groupe = $tab[0];
        $id_classe = $tab[1];
        $jour = $tab[2];
        $id_creneau = $tab[3];
        $login_user = $tab[4];
        $deja_validee = check_proposition_remplacement_validee($id_absence, $id_groupe, $id_classe, $jour, $id_creneau);
        if ($deja_validee != "") {
            if ($deja_validee == civ_nom_prenom($login_user)) {
                // On ne devrait pas arriver là
                $msg = "Le remplacement était déjà attribué à ce professeur.<br />";
            } else {
                // On désinscrit le professeur précédemment choisi
                $sql = "UPDATE abs_prof_remplacement SET validation_remplacement='' WHERE id_absence='" . $id_absence . "' AND \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tid_groupe='" . $id_groupe . "' AND \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tid_classe='" . $id_classe . "' AND \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tjour='" . $jour . "' AND \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tid_creneau='" . $id_creneau . "';";
                //echo "$sql<br />";
                $update = mysqli_query($GLOBALS["mysqli"], $sql);
                if ($update) {
                    $chaine_commentaire_validation = "";
                    $chaine_salle = "";
                    $sql = "UPDATE abs_prof_remplacement SET validation_remplacement='oui'";
                    if ($commentaire_validation != "") {
                        $sql .= ", commentaire_validation='{$commentaire_validation}'";
示例#3
0
 // Propositions (dans le futur) ayant reçu une réponse de la part du professeur
 $tab = get_tab_propositions_remplacements($_SESSION['login'], "futures_avec_reponse");
 if (count($tab) > 0) {
     $nb_propositions_ou_remplacements += count($tab);
     echo "\n<h3>Propositions de remplacement auxquelles vous avez répondu</h3>\n\n<form action=\"" . $_SERVER['PHP_SELF'] . "#debut_de_page\" method=\"post\" style=\"width: 100%; margin-left:3em;\">\n\t<fieldset class='fieldset_opacite50'>\n\t\t" . add_token_field() . "\n\n\t\t<p class='bold'>Vous avez répondu à la(aux) " . count($tab) . " proposition(s) suivante(s).</p>\n\t\t<ul>";
     $temoin_saisie_possible = 0;
     for ($loop = 0; $loop < count($tab); $loop++) {
         /*
         echo "<pre>";
         print_r($tab[$loop]);
         echo "</pre>";
         */
         $nom_classe = get_nom_classe($tab[$loop]['id_classe']);
         $info_groupe = get_info_grp($tab[$loop]['id_groupe'], array('description', 'matieres', 'classes', 'profs'));
         // Ne pas proposer de répondre à un remplacement déjà attribué
         $attribue_a = check_proposition_remplacement_validee($tab[$loop]['id_absence'], $tab[$loop]['id_groupe'], $tab[$loop]['id_classe'], $tab[$loop]['jour'], $tab[$loop]['id_creneau']);
         if ($attribue_a == "") {
             if ($tab[$loop]['reponse'] == 'oui') {
                 $checked_oui = " checked";
                 $checked_non = "";
                 $style_oui = " style='font-weight:bold;'";
                 $style_non = "";
             } elseif ($tab[$loop]['reponse'] == 'non') {
                 $checked_oui = "";
                 $checked_non = " checked";
                 $style_oui = "";
                 $style_non = " style='font-weight:bold;'";
             }
             echo "\n\t\t\t<li>\n\t\t\t\t<p><strong>Le " . formate_date($tab[$loop]['date_debut_r'], "n", "complet") . " en " . $tab_creneaux[$tab[$loop]['id_creneau']]['nom_creneau'] . " (<em>" . $tab_creneaux[$tab[$loop]['id_creneau']]['debut_court'] . " à " . $tab_creneaux[$tab[$loop]['id_creneau']]['fin_court'] . "</em>)&nbsp;: {$nom_classe}</strong> (<em style='font-size:x-small;'>remplacement de {$info_groupe}</em>)</p>\n\t\t\t\t<input type='radio' name='reponse_proposition[" . $tab[$loop]['id'] . "]' id='reponse_proposition_" . $tab[$loop]['id'] . "_oui' value='oui' onchange=\"checkbox_change('reponse_proposition_" . $tab[$loop]['id'] . "_oui');checkbox_change('reponse_proposition_" . $tab[$loop]['id'] . "_non');checkbox_change('reponse_proposition_" . $tab[$loop]['id'] . "_vide')\"{$checked_oui} /><label for='reponse_proposition_" . $tab[$loop]['id'] . "_oui' id='texte_reponse_proposition_" . $tab[$loop]['id'] . "_oui'{$style_oui}> Proposition acceptée</label><br />\n\t\t\t\t<input type='radio' name='reponse_proposition[" . $tab[$loop]['id'] . "]' id='reponse_proposition_" . $tab[$loop]['id'] . "_non' value='non' onchange=\"checkbox_change('reponse_proposition_" . $tab[$loop]['id'] . "_oui');checkbox_change('reponse_proposition_" . $tab[$loop]['id'] . "_non');checkbox_change('reponse_proposition_" . $tab[$loop]['id'] . "_vide')\"{$checked_non} /><label for='reponse_proposition_" . $tab[$loop]['id'] . "_non' id='texte_reponse_proposition_" . $tab[$loop]['id'] . "_non'{$style_non}> Proposition rejetée</label><br />\n\t\t\t\t<input type='radio' name='reponse_proposition[" . $tab[$loop]['id'] . "]' id='reponse_proposition_" . $tab[$loop]['id'] . "_vide' value='' onchange=\"checkbox_change('reponse_proposition_" . $tab[$loop]['id'] . "_oui');checkbox_change('reponse_proposition_" . $tab[$loop]['id'] . "_non');checkbox_change('reponse_proposition_" . $tab[$loop]['id'] . "_vide')\" /><label for='reponse_proposition_" . $tab[$loop]['id'] . "_vide' id='texte_reponse_proposition_" . $tab[$loop]['id'] . "_vide'> Pas de réponse</label><br />\n\t\t\t\tCommentaire&nbsp;: <textarea name='commentaire_proposition[" . $tab[$loop]['id'] . "]' style='vertical-align:top;'>" . $tab[$loop]['commentaire_prof'] . "</textarea>\n\t\t\t</li>";
             $temoin_saisie_possible++;
         } else {
示例#4
0
function test_reponses_favorables_propositions_remplacement()
{
    global $gepiPath;
    $retour = "";
    $nb = 0;
    $sql = "SELECT * FROM abs_prof_remplacement WHERE date_fin_r>='" . strftime('%Y-%m-%d %H:%M:%S') . "' AND reponse='oui';";
    $res = mysqli_query($GLOBALS["mysqli"], $sql);
    if (mysqli_num_rows($res) > 0) {
        while ($lig = mysqli_fetch_object($res)) {
            if (check_proposition_remplacement_validee($lig->id_absence, $lig->id_groupe, $lig->id_classe, $lig->jour, $lig->id_creneau) == "") {
                $nb++;
            }
        }
    }
    if ($nb > 0) {
        $retour = "<div class='postit' style='text-align:center;'>{$nb} proposition(s) de remplacement a(ont) reçu un accueil favorable.<br />Vous pouvez choisir à qui <a href='{$gepiPath}/mod_abs_prof/attribuer_remplacement.php'>attribuer le(s) remplacement(s)</a>.</div>";
    }
    return $retour;
}