Esempio n. 1
0
/**
 * Affichage de la liste des conteneurs
 *
 * @global array 
 * @global text 
 * @global int 
 * @global int 
 * @param int $id_conteneur Id du conteneur
 * @param int $periode_num Numéro de la période
 * @param text $empty existance de notes, no si le conteneur contient des notes (passage par référence) 
 * @param int $ver_periode Etat du vérouillage de la période
 * @return text no si le conteneur contient des notes, yes sinon
 * @see getSettingValue()
 * @see get_nom_prenom_eleve()
 * @see creer_div_infobulle()
 * @see add_token_in_url()
 * @see traitement_magic_quotes()
 */
function affiche_devoirs_conteneurs($id_conteneur, $periode_num, &$empty, $ver_periode)
{
    global $tabdiv_infobulle, $gepiClosedPeriodLabel, $id_groupe, $eff_groupe, $acces_exceptionnel_saisie;
    if (isset($id_groupe) && !isset($eff_groupe)) {
        $sql = "SELECT 1=1 FROM j_eleves_groupes WHERE id_groupe='{$id_groupe}' AND periode='{$periode_num}';";
        //echo "$sql<br />";
        $res_ele_grp = mysqli_query($GLOBALS["mysqli"], $sql);
        $eff_groupe = mysqli_num_rows($res_ele_grp);
    }
    //
    // Cas particulier de la racine
    $gepi_denom_boite = getSettingValue("gepi_denom_boite");
    if (getSettingValue("gepi_denom_boite_genre") == 'm') {
        $message_cont = "Etes-vous sûr de vouloir supprimer le " . getSettingValue("gepi_denom_boite") . " ci-dessous ?";
        $message_cont_non_vide = "Le " . getSettingValue("gepi_denom_boite") . " est non vide. Il ne peut pas être supprimé.";
    } else {
        $message_cont = "Etes-vous sûr de vouloir supprimer la " . getSettingValue("gepi_denom_boite") . " ci-dessous ?";
        $message_cont_non_vide = "La " . getSettingValue("gepi_denom_boite") . " est non vide. Elle ne peut pas être supprimée.";
    }
    $message_dev = "Etes-vous sûr de vouloir supprimer l\\'évaluation ci-dessous et les notes qu\\'elle contient ?";
    $sql = "SELECT * FROM cn_conteneurs WHERE (parent='0' and id_racine='{$id_conteneur}')";
    $appel_conteneurs = mysqli_query($GLOBALS["mysqli"], $sql);
    $nb_cont = mysqli_num_rows($appel_conteneurs);
    if ($nb_cont != 0) {
        echo "<ul>\n";
        $id_cont = old_mysql_result($appel_conteneurs, 0, 'id');
        $id_parent = old_mysql_result($appel_conteneurs, 0, 'parent');
        $id_racine = old_mysql_result($appel_conteneurs, 0, 'id_racine');
        $nom_conteneur = old_mysql_result($appel_conteneurs, 0, 'nom_court');
        $modeBoiteMoy = old_mysql_result($appel_conteneurs, 0, 'mode');
        echo "<li>\n";
        echo htmlspecialchars($nom_conteneur);
        if ($ver_periode <= 1) {
            echo " (<strong>" . $gepiClosedPeriodLabel . "</strong>) ";
        }
        echo "- <a href='saisie_notes.php?id_conteneur={$id_cont}'>Visualisation</a> - <a href = 'add_modif_conteneur.php?id_conteneur={$id_cont}&amp;mode_navig=retour_index'>Configuration</a>\n";
        $ponderation_cont = old_mysql_result($appel_conteneurs, 0, 'ponderation');
        if ($ponderation_cont != '0.0') {
            $message_ponderation = "La meilleure note de la " . getSettingValue("gepi_denom_boite") . " est pondérée d'un coefficient +{$ponderation_cont}";
            echo " - <img src='../images/icons/flag.png' width='17' height='18' alt=\"{$message_ponderation}\" title=\"{$message_ponderation}\" />";
        }
        $sql = "SELECT mode FROM cn_conteneurs WHERE id_racine='{$id_conteneur}';";
        $res_nb_conteneurs = mysqli_query($GLOBALS["mysqli"], $sql);
        if (mysqli_num_rows($res_nb_conteneurs) > 1) {
            echo " - <a href='add_modif_conteneur.php?id_conteneur={$id_conteneur}&mode_navig=retour_index' title=\"";
            if ($modeBoiteMoy == 1) {
                echo "la moyenne s'effectue sur toutes les notes contenues à la racine et dans les " . my_strtolower(getSettingValue("gepi_denom_boite")) . "s sans tenir compte des options définies dans ces " . my_strtolower(getSettingValue("gepi_denom_boite")) . "s.";
            } else {
                echo "la moyenne s'effectue sur toutes les notes contenues à la racine et sur les moyennes des " . my_strtolower(getSettingValue("gepi_denom_boite")) . "s en tenant compte des options dans ces " . my_strtolower(getSettingValue("gepi_denom_boite")) . "s.";
            }
            echo "\">Mode Moy.: {$modeBoiteMoy}</a>";
        }
        if ($ver_periode >= 2) {
            echo " - <a href='add_modif_dev.php?id_conteneur={$id_racine}&amp;mode_navig=retour_index' title=\"Créer une évaluation\"><img src='../images/icons/add.png' class='icone16' alt='Ajouter une évaluation' /></a>";
        }
        $appel_dev = mysqli_query($GLOBALS["mysqli"], "select * from cn_devoirs where id_conteneur='{$id_cont}' order by date");
        $nb_dev = mysqli_num_rows($appel_dev);
        if ($nb_dev != 0) {
            $empty = 'no';
        }
        if ($ver_periode >= 2 || $acces_exceptionnel_saisie) {
            $j = 0;
            if ($nb_dev > 0) {
                echo "<ul>\n";
                while ($j < $nb_dev) {
                    if (getSettingValue("utiliser_sacoche") == 'yes') {
                        echo '<form id="sacoche_form_' . $j . '" method="POST" action="' . getSettingValue("sacocheUrl") . '/index.php?sso&page=evaluation_gestion&section=groupe">';
                        echo '<input type="hidden" name="id" value="' . getSettingValue("sacoche_base") . '"/>';
                        echo '<input type="hidden" name="page" value="evaluation_gestion"/>';
                        echo '<input type="hidden" name="section" value="groupe"/>';
                        echo '<input type="hidden" name="source" value="distant-gepi-saml"/>';
                        //source simplesaml pour préselectionner la source dans le module multiauth et éviter de choisir le webmestre
                        //encodage du devoir
                        mysqli_data_seek($appel_dev, $j);
                        $devoir_array = mysqli_fetch_array($appel_dev);
                        $devoir_array = array_map_deep('ensure_utf8', $devoir_array);
                        echo '<input type="hidden" name="period_num" value=\'' . $periode_num . '\'/>';
                        echo '<input type="hidden" name="gepi_cn_devoirs_array" value="' . htmlspecialchars(json_encode($devoir_array), ENT_COMPAT, 'UTF-8') . '"/>';
                        $group_array = get_group($id_groupe);
                        //on va purger un peut notre array
                        unset($group_array['classes']);
                        unset($group_array['matieres']);
                        unset($group_array['eleves']['all']);
                        for ($i = 0; $i < 5; $i++) {
                            if ($i != $periode_num) {
                                unset($group_array['eleves']['' . $i]);
                            }
                        }
                        $current_group = array_map_deep('ensure_utf8', $group_array);
                        echo '<input type="hidden" name="gepi_current_group" value="' . htmlspecialchars(json_encode($current_group), ENT_COMPAT, 'UTF-8') . '"/>';
                        echo '</form>';
                    }
                    $nom_dev = old_mysql_result($appel_dev, $j, 'nom_court');
                    $id_dev = old_mysql_result($appel_dev, $j, 'id');
                    $date_dev = old_mysql_result($appel_dev, $j, 'date');
                    $date_ele_resp_dev = old_mysql_result($appel_dev, $j, 'date_ele_resp');
                    echo "<li>\n";
                    echo "<span style='color:green;'>{$nom_dev}</span>";
                    echo " - <a href='saisie_notes.php?id_conteneur={$id_cont}&amp;id_devoir={$id_dev}'>Saisie</a>";
                    $sql = "SELECT 1=1 FROM cn_notes_devoirs cnd, j_eleves_classes jec WHERE cnd.id_devoir='{$id_dev}' AND cnd.statut!='v' AND jec.login=cnd.login AND jec.periode='{$periode_num}';";
                    $res_eff_dev = mysqli_query($GLOBALS["mysqli"], $sql);
                    $eff_dev = mysqli_num_rows($res_eff_dev);
                    echo " <span title=\"Effectif des notes saisies/effectif total de l'enseignement\" style='font-size:small;";
                    if (isset($eff_groupe)) {
                        if ($eff_dev == $eff_groupe) {
                            echo "color:green;";
                        } else {
                            echo "color:red;";
                        }
                    }
                    echo "'>({$eff_dev}";
                    if (isset($eff_groupe)) {
                        echo "/{$eff_groupe}";
                    }
                    echo ")</span>";
                    // Pour détecter une anomalie:
                    $sql = "SELECT * FROM cn_notes_devoirs cnd, j_eleves_classes jec WHERE cnd.id_devoir='{$id_dev}' AND cnd.statut!='v' AND jec.login=cnd.login AND jec.periode='{$periode_num}' AND jec.login not in (select login from j_eleves_groupes where id_groupe='{$id_groupe}' and periode='{$periode_num}');";
                    $test_anomalie = mysqli_query($GLOBALS["mysqli"], $sql);
                    if (mysqli_num_rows($test_anomalie) > 0) {
                        $titre_infobulle = "Note pour un fantôme";
                        $texte_infobulle = "Une ou des notes existent pour un ou des élèves qui ne sont plus inscrits dans cet enseignement&nbsp;:<br />";
                        $cpt_ele_anomalie = 0;
                        while ($lig_anomalie = mysqli_fetch_object($test_anomalie)) {
                            if ($cpt_ele_anomalie > 0) {
                                $texte_infobulle .= ", ";
                            }
                            $texte_infobulle .= get_nom_prenom_eleve($lig_anomalie->login, 'avec_classe') . "&nbsp;(<i title=\"Note enregistrée\">";
                            if ($lig_anomalie->statut == '') {
                                $texte_infobulle .= $lig_anomalie->note;
                            } elseif ($lig_anomalie->statut == 'v') {
                                $texte_infobulle .= "_";
                            } else {
                                $texte_infobulle .= $lig_anomalie->statut;
                            }
                            $texte_infobulle .= "</i>)";
                            $cpt_ele_anomalie++;
                        }
                        $texte_infobulle .= "<br />";
                        $texte_infobulle .= "Cliquer <a href='" . $_SERVER['PHP_SELF'] . "?id_groupe={$id_groupe}&amp;periode_num={$periode_num}&amp;clean_anomalie_dev={$id_dev}" . add_token_in_url() . "' class='bold'>ici</a> pour supprimer les notes associées?";
                        $tabdiv_infobulle[] = creer_div_infobulle('anomalie_' . $id_dev, $titre_infobulle, "", $texte_infobulle, "", 35, 0, 'y', 'y', 'n', 'n');
                        echo " <a href=\"#\" onclick=\"afficher_div('anomalie_{$id_dev}','y',100,100);return false;\" title=\"Une ou des notes existent pour un ou des élèves qui ne sont plus inscrits dans cet enseignement.\nCliquez pour contrôler la liste.\"><img src='../images/icons/flag.png' width='17' height='18' alt='' /></a>";
                    }
                    if (getSettingValue("utiliser_sacoche") == 'yes') {
                        echo " - <a href='#' onclick=\"document.getElementById('sacoche_form_" . $j . "').submit();\">Évaluer par compétence</a>";
                    }
                    echo " - <a href = 'add_modif_dev.php?id_conteneur={$id_conteneur}&amp;id_devoir={$id_dev}&amp;mode_navig=retour_index'>Configuration</a>";
                    // Autre anomalie
                    $sql = "SELECT * FROM cn_devoirs WHERE id='{$id_dev}' AND facultatif!='O' AND facultatif!='N' AND facultatif!='B';";
                    $test_anomalie = mysqli_query($GLOBALS["mysqli"], $sql);
                    if (mysqli_num_rows($test_anomalie) > 0) {
                        $titre_infobulle = "Devoir facultatif ou pas ?";
                        $texte_infobulle = "Le devoir n'est pas 'catégorisé' comme facultatif ou non.<br />Son mode de prise en compte ou non dans la moyenne n'est pas défini.<br />";
                        $texte_infobulle .= "Cliquer <a href='add_modif_dev.php?id_conteneur={$id_cont}&amp;id_devoir={$id_dev}&amp;mode_navig=retour_index&amp;interface_simplifiee=n" . add_token_in_url() . "#statut_evaluation' class='bold'>ici</a> pour choisir un mode.";
                        $tabdiv_infobulle[] = creer_div_infobulle('anomalie2_' . $id_dev, $titre_infobulle, "", $texte_infobulle, "", 35, 0, 'y', 'y', 'n', 'n');
                        echo " <a href=\"#\" onclick=\"afficher_div('anomalie2_{$id_dev}','y',100,100);return false;\" title=\"Mode de prise en compte ou non dans la moyenne non défini.\"><img src='../images/icons/flag.png' width='17' height='18' alt='' /></a>";
                    }
                    $note_sur = old_mysql_result($appel_dev, $j, 'note_sur');
                    if ($note_sur != '20') {
                        echo " (<em><span title='Note sur {$note_sur}'>/{$note_sur}</span></em>)";
                    }
                    $display_parents = old_mysql_result($appel_dev, $j, 'display_parents');
                    $coef = old_mysql_result($appel_dev, $j, 'coef');
                    echo " (<i><span title='Coefficient {$coef}'>{$coef}</span> ";
                    echo "<span id='span_visibilite_{$id_dev}'>";
                    if ($display_parents == 1) {
                        echo "<a href='" . $_SERVER['PHP_SELF'] . "?id_groupe={$id_groupe}&amp;id_racine={$id_racine}&amp;id_dev={$id_dev}&amp;mode=change_visibilite_dev&amp;visible=n" . add_token_in_url() . "' onclick=\"change_visibilite_dev({$id_dev},'n');return false;\"><img src='../images/icons/visible.png' width='19' height='16' title='Evaluation du " . formate_date($date_dev) . " visible sur le relevé de notes.\nVisible à compter du " . formate_date($date_ele_resp_dev) . " pour les parents et élèves.\n\nCliquez pour ne pas faire apparaître cette note sur le relevé de notes.' alt='Evaluation visible sur le relevé de notes' /></a>";
                    } else {
                        echo " <a href='" . $_SERVER['PHP_SELF'] . "?id_groupe={$id_groupe}&amp;id_racine={$id_racine}&amp;id_dev={$id_dev}&amp;mode=change_visibilite_dev&amp;visible=y" . add_token_in_url() . "' onclick=\"change_visibilite_dev({$id_dev},'y');return false;\"><img src='../images/icons/invisible.png' width='19' height='16' title='Evaluation non visible sur le relevé de notes.\n\t\t\t\t\t\nCliquez pour faire apparaître cette note sur le relevé de notes.' alt='Evaluation non visible sur le relevé de notes' /></a>\n";
                    }
                    echo "</span>";
                    echo "</i>)";
                    $sql = "SELECT * FROM cc_dev WHERE id_cn_dev='{$id_dev}';";
                    $res_cc_dev = mysqli_query($GLOBALS["mysqli"], $sql);
                    if (mysqli_num_rows($res_cc_dev) > 0) {
                        $lig_cc_dev = mysqli_fetch_object($res_cc_dev);
                        echo " - <a href='index_cc.php?id_racine=" . $id_racine . "' title=\"Voir l'évaluation cumul associée {$lig_cc_dev->nom_court} ({$lig_cc_dev->nom_complet})\">" . $lig_cc_dev->nom_court . "</a>";
                    }
                    echo " - <a href='copie_dev.php?id_devoir=" . $id_dev . "' title=\"Copier le devoir et les notes vers une autre période ou un autre enseignement (Les notes ne sont copiées que si les élèves sont les mêmes).\"><img src='../images/icons/copy-16.png' width='16' height='16' alt='' /></a>\n";
                    echo " - <a href = 'index.php?id_racine={$id_racine}&amp;del_dev={$id_dev}" . add_token_in_url() . "' onclick=\"return confirmlink(this, 'suppression de " . traitement_magic_quotes($nom_dev) . "', '" . $message_dev . "')\">Suppression</a>\n";
                    echo "</li>\n";
                    $j++;
                }
                echo "</ul>\n";
            }
        }
        echo "</li>\n";
        echo "</ul>\n";
    }
    if ($ver_periode >= 2 || $acces_exceptionnel_saisie) {
        $appel_conteneurs = mysqli_query($GLOBALS["mysqli"], "SELECT * FROM cn_conteneurs WHERE (parent='{$id_conteneur}') order by nom_court");
        $nb_cont = mysqli_num_rows($appel_conteneurs);
        if ($nb_cont > 0) {
            echo "<ul>\n";
            $i = 0;
            while ($i < $nb_cont) {
                $id_cont = old_mysql_result($appel_conteneurs, $i, 'id');
                $id_parent = old_mysql_result($appel_conteneurs, $i, 'parent');
                $id_racine = old_mysql_result($appel_conteneurs, $i, 'id_racine');
                $nom_conteneur = old_mysql_result($appel_conteneurs, $i, 'nom_court');
                if ($id_cont != $id_parent) {
                    echo "<li>\n";
                    echo "{$nom_conteneur} - <a href='saisie_notes.php?id_conteneur={$id_cont}'>Visualisation</a>";
                    echo " - <a href = 'add_modif_conteneur.php?id_conteneur={$id_cont}&amp;mode_navig=retour_index'>Configuration</a>\n";
                    $display_bulletin = old_mysql_result($appel_conteneurs, $i, 'display_bulletin');
                    $coef = old_mysql_result($appel_conteneurs, $i, 'coef');
                    echo " (<i><span title='Coefficient {$coef}'>{$coef}</span> ";
                    if ($display_bulletin == 1) {
                        echo "<img src='../images/icons/visible.png' width='19' height='16' title='{$gepi_denom_boite} visible sur le bulletin' alt='{$gepi_denom_boite} visible sur le bulletin' />";
                    } else {
                        echo " <img src='../images/icons/invisible.png' width='19' height='16' title=\"" . ucfirst($gepi_denom_boite) . " non visible sur le bulletin.\nCela ne signifie pas que les notes ne sont pas prises en compte dans le calcul de la moyenne.\nEn revanche, on n'affiche pas une case spécifique pour ce" . (getSettingValue('gepi_denom_boite_genre') == 'f' ? "tte" : "") . " " . $gepi_denom_boite . " dans le bulletin.\" alt='" . ucfirst($gepi_denom_boite) . " non visible sur le bulletin.' />\n";
                    }
                    echo "</i>)";
                    $ponderation_cont = old_mysql_result($appel_conteneurs, $i, 'ponderation');
                    if ($ponderation_cont != '0.0') {
                        $message_ponderation = "La meilleure note de la " . getSettingValue("gepi_denom_boite") . " est pondérée d'un coefficient +{$ponderation_cont}";
                        echo " - <img src='../images/icons/flag.png' width='17' height='18' alt=\"{$message_ponderation}\" title=\"{$message_ponderation}\" />";
                    }
                    $appel_dev = mysqli_query($GLOBALS["mysqli"], "select * from cn_devoirs where id_conteneur='{$id_cont}' order by date");
                    $nb_dev = mysqli_num_rows($appel_dev);
                    if ($nb_dev != 0) {
                        $empty = 'no';
                    }
                    // Existe-t-il des sous-conteneurs?
                    $sql = "SELECT 1=1 FROM cn_conteneurs WHERE (parent='{$id_cont}')";
                    $test_sous_cont = mysqli_query($GLOBALS["mysqli"], $sql);
                    $nb_sous_cont = mysqli_num_rows($test_sous_cont);
                    if ($nb_dev == 0 && $nb_sous_cont == 0) {
                        echo " - <a href = 'index.php?id_racine={$id_racine}&amp;del_cont={$id_cont}" . add_token_in_url() . "' onclick=\"return confirmlink(this, 'suppression de " . traitement_magic_quotes($nom_conteneur) . "', '" . $message_cont . "')\">Suppression</a>\n";
                    } else {
                        echo " - <a href = '#' onclick='alert(\"{$message_cont_non_vide}\")'><font color='gray'>Suppression</font></a>\n";
                    }
                    $j = 0;
                    if ($nb_dev > 0) {
                        echo "<ul>\n";
                        while ($j < $nb_dev) {
                            $nom_dev = old_mysql_result($appel_dev, $j, 'nom_court');
                            $id_dev = old_mysql_result($appel_dev, $j, 'id');
                            $date_dev = old_mysql_result($appel_dev, $j, 'date');
                            $date_ele_resp_dev = old_mysql_result($appel_dev, $j, 'date_ele_resp');
                            echo "<li>\n";
                            echo "<font color='green'>{$nom_dev}</font> - <a href='saisie_notes.php?id_conteneur={$id_cont}&amp;id_devoir={$id_dev}'>Saisie</a>";
                            //$sql="SELECT 1=1 FROM cn_notes_devoirs cnd, j_eleves_classes jec WHERE cnd.id_devoir='$id_dev' AND cnd.statut!='-' AND cnd.statut!='v' AND jec.login=cnd.login AND jec.periode='$periode_num';";
                            $sql = "SELECT 1=1 FROM cn_notes_devoirs cnd, j_eleves_classes jec WHERE cnd.id_devoir='{$id_dev}' AND cnd.statut!='v' AND jec.login=cnd.login AND jec.periode='{$periode_num}';";
                            $res_eff_dev = mysqli_query($GLOBALS["mysqli"], $sql);
                            $eff_dev = mysqli_num_rows($res_eff_dev);
                            echo " <span title=\"Effectif des notes saisies/effectif total de l'enseignement\" style='font-size:small;";
                            if (isset($eff_groupe)) {
                                if ($eff_dev == $eff_groupe) {
                                    echo "color:green;";
                                } else {
                                    echo "color:red;";
                                }
                            }
                            echo "'>({$eff_dev}";
                            if (isset($eff_groupe)) {
                                echo "/{$eff_groupe}";
                            }
                            echo ")</span>";
                            // Pour détecter une anomalie:
                            $sql = "SELECT * FROM cn_notes_devoirs cnd, j_eleves_classes jec WHERE cnd.id_devoir='{$id_dev}' AND cnd.statut!='v' AND jec.login=cnd.login AND jec.periode='{$periode_num}' AND jec.login not in (select login from j_eleves_groupes where id_groupe='{$id_groupe}' and periode='{$periode_num}');";
                            $test_anomalie = mysqli_query($GLOBALS["mysqli"], $sql);
                            if (mysqli_num_rows($test_anomalie) > 0) {
                                $titre_infobulle = "Note pour un fantôme";
                                $texte_infobulle = "Une ou des notes existent pour un ou des élèves qui ne sont plus inscrits dans cet enseignement&nbsp;:<br />";
                                $cpt_ele_anomalie = 0;
                                while ($lig_anomalie = mysqli_fetch_object($test_anomalie)) {
                                    if ($cpt_ele_anomalie > 0) {
                                        $texte_infobulle .= ", ";
                                    }
                                    $texte_infobulle .= get_nom_prenom_eleve($lig_anomalie->login, 'avec_classe') . "&nbsp;(<i title=\"Note enregistrée\">";
                                    if ($lig_anomalie->statut == '') {
                                        $texte_infobulle .= $lig_anomalie->note;
                                    } elseif ($lig_anomalie->statut == 'v') {
                                        $texte_infobulle .= "_";
                                    } else {
                                        $texte_infobulle .= $lig_anomalie->statut;
                                    }
                                    $texte_infobulle .= "</i>)";
                                    $cpt_ele_anomalie++;
                                }
                                $texte_infobulle .= "<br />";
                                $texte_infobulle .= "Cliquer <a href='" . $_SERVER['PHP_SELF'] . "?id_groupe={$id_groupe}&amp;periode_num={$periode_num}&amp;clean_anomalie_dev={$id_dev}" . add_token_in_url() . "' class='bold'>ici</a> pour supprimer les notes associées?";
                                $tabdiv_infobulle[] = creer_div_infobulle('anomalie_' . $id_dev, $titre_infobulle, "", $texte_infobulle, "", 35, 0, 'y', 'y', 'n', 'n');
                                echo " <a href=\"#\" onclick=\"afficher_div('anomalie_{$id_dev}','y',100,100);return FALSE;\" title=\"Une ou des notes existent pour un ou des élèves qui ne sont plus inscrits dans cet enseignement.\nCliquez pour contrôler la liste.\"><img src='../images/icons/flag.png' width='17' height='18' alt='' /></a>";
                            }
                            echo " - <a href = 'add_modif_dev.php?id_conteneur={$id_conteneur}&amp;id_devoir={$id_dev}&amp;mode_navig=retour_index'>Configuration</a>";
                            // Autre anomalie
                            $sql = "SELECT * FROM cn_devoirs WHERE id='{$id_dev}' AND facultatif!='O' AND facultatif!='N' AND facultatif!='B';";
                            $test_anomalie = mysqli_query($GLOBALS["mysqli"], $sql);
                            if (mysqli_num_rows($test_anomalie) > 0) {
                                $titre_infobulle = "Devoir facultatif ou pas ?";
                                $texte_infobulle = "Le devoir n'est pas 'catégorisé' comme facultatif ou non.<br />Son mode de prise en compte ou non dans la moyenne n'est pas défini.<br />";
                                $texte_infobulle .= "Cliquer <a href='add_modif_dev.php?id_conteneur={$id_conteneur}&amp;id_devoir={$id_dev}&amp;mode_navig=retour_index&amp;interface_simplifiee=n" . add_token_in_url() . "#statut_evaluation' class='bold'>ici</a> pour choisir un mode.";
                                $tabdiv_infobulle[] = creer_div_infobulle('anomalie2_' . $id_dev, $titre_infobulle, "", $texte_infobulle, "", 35, 0, 'y', 'y', 'n', 'n');
                                echo " <a href=\"#\" onclick=\"afficher_div('anomalie2_{$id_dev}','y',100,100);return false;\" title=\"Mode de prise en compte ou non dans la moyenne non défini.\"><img src='../images/icons/flag.png' width='17' height='18' alt='' /></a>";
                            }
                            $note_sur = old_mysql_result($appel_dev, $j, 'note_sur');
                            if ($note_sur != '20') {
                                echo " (<em><span title='Note sur {$note_sur}'>/{$note_sur}</span></em>)";
                            }
                            $display_parents = old_mysql_result($appel_dev, $j, 'display_parents');
                            $coef = old_mysql_result($appel_dev, $j, 'coef');
                            echo " (<i><span title='Coefficient {$coef}'>{$coef}</span> ";
                            /*
                            if($display_parents==1) {echo "<img src='../images/icons/visible.png' width='19' height='16' title='Evaluation du ".formate_date($date_dev)." visible sur le relevé de notes.
                            Visible à compter du ".formate_date($date_ele_resp_dev)." pour les parents et élèves.' alt='Evaluation visible sur le relevé de notes' />";}
                            else {echo " <img src='../images/icons/invisible.png' width='19' height='16' title='Evaluation non visible sur le relevé de notes' alt='Evaluation non visible sur le relevé de notes' />\n";}
                            */
                            echo "<span id='span_visibilite_{$id_dev}'>";
                            if ($display_parents == 1) {
                                echo "<a href='" . $_SERVER['PHP_SELF'] . "?id_groupe={$id_groupe}&amp;id_racine={$id_racine}&amp;id_dev={$id_dev}&amp;mode=change_visibilite_dev&amp;visible=n" . add_token_in_url() . "' onclick=\"change_visibilite_dev({$id_dev},'n');return false;\"><img src='../images/icons/visible.png' width='19' height='16' title='Evaluation du " . formate_date($date_dev) . " visible sur le relevé de notes.\nVisible à compter du " . formate_date($date_ele_resp_dev) . " pour les parents et élèves.\n\nCliquez pour ne pas faire apparaître cette note sur le relevé de notes.' alt='Evaluation visible sur le relevé de notes' /></a>";
                            } else {
                                echo " <a href='" . $_SERVER['PHP_SELF'] . "?id_groupe={$id_groupe}&amp;id_racine={$id_racine}&amp;id_dev={$id_dev}&amp;mode=change_visibilite_dev&amp;visible=y" . add_token_in_url() . "' onclick=\"change_visibilite_dev({$id_dev},'y');return false;\"><img src='../images/icons/invisible.png' width='19' height='16' title='Evaluation non visible sur le relevé de notes.\n\t\t\t\t\t\nCliquez pour faire apparaître cette note sur le relevé de notes.' alt='Evaluation non visible sur le relevé de notes' /></a>\n";
                            }
                            echo "</span>";
                            echo "</i>)";
                            $sql = "SELECT * FROM cc_dev WHERE id_cn_dev='{$id_dev}';";
                            $res_cc_dev = mysqli_query($GLOBALS["mysqli"], $sql);
                            if (mysqli_num_rows($res_cc_dev) > 0) {
                                $lig_cc_dev = mysqli_fetch_object($res_cc_dev);
                                echo " - <a href='index_cc.php?id_racine=" . $id_racine . "' title=\"Voir l'évaluation cumul associée {$lig_cc_dev->nom_court} ({$lig_cc_dev->nom_complet})\">" . $lig_cc_dev->nom_court . "</a>";
                            }
                            echo " - <a href='copie_dev.php?id_devoir=" . $id_dev . "' title=\"Copier le devoir et les notes vers une autre période ou un autre enseignement (Les notes ne sont copiées que si les élèves sont les mêmes).\"><img src='../images/icons/copy-16.png' width='16' height='16' alt='' /></a>\n";
                            echo " - <a href = 'index.php?id_racine={$id_racine}&amp;del_dev={$id_dev}" . add_token_in_url() . "' onclick=\"return confirmlink(this, 'suppression de " . traitement_magic_quotes($nom_dev) . "', '" . $message_dev . "')\">Suppression</a>\n";
                            echo "</li>\n";
                            $j++;
                        }
                        echo "</ul>\n";
                    }
                }
                if ($id_conteneur != $id_cont) {
                    affiche_devoirs_conteneurs($id_cont, $periode_num, $empty, $ver_periode);
                }
                if ($id_cont != $id_parent) {
                    echo "</li>\n";
                }
                $i++;
            }
            echo "</ul>\n";
        }
    }
    if ($empty != 'no') {
        return 'yes';
    }
}
Esempio n. 2
0
                     $info_anomalie .= " - <a href='export_cahier_notes.php?id_racine=" . $tmp_cn . "' target='_blank'>Exporter les notes</a> - ";
                 }
                 $info_anomalie .= "<a href='" . $_SERVER['PHP_SELF'] . "?clean_anomalie_cn=y&amp;&amp;id_groupe={$id_groupe}&amp;periode_num={$periode_num}&amp;suppr_id_dev=" . $lig_dev->id . add_token_in_url() . "'><img src='../images/delete16.png' class='icone16' alt='Supprimer ce devoir' title='Supprimer ce devoir' /></a>\n";
                 $info_anomalie .= "</li>\n";
             }
             $info_anomalie .= "</ul>\n";
         }
     }
     if ($info_anomalie != "") {
         $info_anomalie .= "<p>Si vous pensez qu'un de ces enseignements devrait apparaître dans les carnets de notes, prenez contact avec l'administration de votre établissement.</p>\n";
         $info_anomalie .= "</div>\n";
     }
     echo $info_anomalie;
 }
 echo "<h3 class='gepi'>Liste des évaluations du carnet de notes</h3>\n";
 $empty = affiche_devoirs_conteneurs($id_racine, $periode_num, $empty, $current_group["classe"]["ver_periode"]["all"][$periode_num]);
 //echo "</ul>\n";
 if ($empty == 'yes') {
     echo "<p><b>Actuellement, aucune évaluation.</b> Vous devez créer au moins une évaluation.</p>\n";
 } else {
     echo "\n<script type='text/javascript'>\n\tfunction change_visibilite_dev(id_dev, visible) {\n\t\tnew Ajax.Updater(\$('span_visibilite_'+id_dev),'" . $_SERVER['PHP_SELF'] . "?id_groupe={$id_groupe}&id_racine={$id_racine}&id_dev='+id_dev+'&mode=change_visibilite_dev&visible='+visible+'&mode_js=y&" . add_token_in_url(false) . "',{method: 'get'});\n\t}\n</script>";
 }
 if ($periode_num >= 2) {
     echo "<p><a href='toutes_notes.php?id_groupe={$id_groupe}'>Voir toutes les évaluations de l'année</a></p>\n";
 }
 if ($empty != 'yes' && getSettingAOui('active_bulletins')) {
     $sql = "SELECT 1=1 FROM j_groupes_visibilite WHERE id_groupe='{$id_groupe}' AND domaine='bulletins' AND visible='n';";
     $test_jgv = mysqli_query($GLOBALS["mysqli"], $sql);
     if (mysqli_num_rows($test_jgv) == 0) {
         //if (($current_group["classe"]["ver_periode"]["all"][$periode_num] >= 2)||($acces_exceptionnel_saisie)) {
         if ($current_group["classe"]["ver_periode"]["all"][$periode_num] >= 2) {