$criteria = new Criteria(CahierTexteNoticePriveePeer::DATABASE_NAME);
        $criteria->add(CahierTexteNoticePriveePeer::DATE_CT, $today, '=');
        $criteria->add(CahierTexteNoticePriveePeer::ID_LOGIN, $utilisateur->getLogin());
        $cahierTexteNoticePrivees = $groupe->getCahierTexteNoticePrivees($criteria);
        $cahierTexteNoticePrivee = isset($cahierTexteNoticePrivees[0]) ? $cahierTexteNoticePrivees[0] : NULL;
    }
    if ($cahierTexteNoticePrivee == null) {
        //pas de notices, on initialise un nouvel objet
        $cahierTexteNoticePrivee = new CahierTexteNoticePrivee();
        $cahierTexteNoticePrivee->setIdGroupe($groupe->getId());
        $cahierTexteNoticePrivee->setDateCt($today);
        $cahierTexteNoticePrivee->setIdLogin($utilisateur->getLogin());
    }
}
// Vérification : est-ce que l'utilisateur a le droit de modifier cette entré ?
if (my_strtolower($cahierTexteNoticePrivee->getIdLogin()) != my_strtolower($utilisateur->getLogin())) {
    echo "Erreur edition de notice privee : vous n'avez pas le droit de modifier cette notice car elle appartient à un autre professeur.";
    die;
}
//on mets le groupe dans le session, pour naviguer entre absence, cahier de texte et autres
$_SESSION['id_groupe_session'] = $cahierTexteNoticePrivee->getIdGroupe();
// **********************************************
// Affichage des différents groupes du professeur
//\$A($('id_groupe_colonne_gauche').options).find(function(option) { return option.selected; }).value is a javascript trick to get selected value.
echo "<div id=\"div_chaine_edition_notice\" style=\"display:inline;\"><img id=\"chaine_edition_notice\" onLoad=\"updateChaineIcones()\" style=\"border: 0px; vertical-align : middle\" HEIGHT=\"16\" WIDTH=\"16\" src=\"../images/blank.gif\" alt=\"Lier\" title=\"Lier la liste avec la fenetre la liste des notices\" /></div>&nbsp;\n";
echo "<select id=\"id_groupe_colonne_droite\" onChange=\"javascript:\n\t\t\tupdateListeNoticesChaine();\n\t\t\tid_groupe = (\$A(\$('id_groupe_colonne_droite').options).find(function(option) { return option.selected; }).value);\n\t\t\tgetWinEditionNotice().setAjaxContent('./ajax_edition_notice_privee.php?today=" . $today . "&id_groupe=' + id_groupe,\n      \t\t\t { onComplete:function() {initWysiwyg();}}\n      \t\t);\n\t\t\tcompte_rendu_en_cours_de_modification('aucun');\n\t\t\">\n";
echo "<option value='-1'>choisissez un groupe</option>\n";
$groups = $utilisateur->getGroupes();
foreach ($groups as $group_iter) {
    $sql = "SELECT 1=1 FROM j_groupes_visibilite WHERE id_groupe='" . $group_iter->getId() . "' AND domaine='cahier_texte' AND visible='n';";
    $test_grp_visib = mysqli_query($GLOBALS["mysqli"], $sql);
	/**
	 * Filter the query by a related CahierTexteNoticePrivee object
	 *
	 * @param     CahierTexteNoticePrivee $cahierTexteNoticePrivee  the related object to use as filter
	 * @param     string $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL
	 *
	 * @return    UtilisateurProfessionnelQuery The current query, for fluid interface
	 */
	public function filterByCahierTexteNoticePrivee($cahierTexteNoticePrivee, $comparison = null)
	{
		if ($cahierTexteNoticePrivee instanceof CahierTexteNoticePrivee) {
			return $this
				->addUsingAlias(UtilisateurProfessionnelPeer::LOGIN, $cahierTexteNoticePrivee->getIdLogin(), $comparison);
		} elseif ($cahierTexteNoticePrivee instanceof PropelCollection) {
			return $this
				->useCahierTexteNoticePriveeQuery()
				->filterByPrimaryKeys($cahierTexteNoticePrivee->getPrimaryKeys())
				->endUse();
		} else {
			throw new PropelException('filterByCahierTexteNoticePrivee() only accepts arguments of type CahierTexteNoticePrivee or PropelCollection');
		}
	}