예제 #1
0
파일: clFusions.php 프로젝트: jeromecc/tuv2
 function genListes()
 {
     global $session;
     // Chargement du template ModeliXe.
     $mod = new ModeliXe("FusionPatients.mxt");
     $mod->SetModeliXe();
     // Affichage ou non du champs d'informations.
     if ($this->infos) {
         $mod->MxText("informations.infos", $this->infos);
     } else {
         $mod->MxBloc("informations", "modify", " ");
     }
     // Affichage ou non du champs d'erreurs.
     if ($this->erreurs) {
         $mod->MxText("erreurs.erreurs", $this->erreurs);
     } else {
         $mod->MxBloc("erreurs", "modify", " ");
     }
     // Initialisation des variables.
     if (isset($_POST['valeurNom'])) {
         $_SESSION['valeurNom'] = $_POST['valeurNom'];
     }
     if (isset($_POST['valeurPrenom'])) {
         $_SESSION['valeurPrenom'] = $_POST['valeurPrenom'];
     }
     if (isset($_POST['valeurAnnee'])) {
         $_SESSION['valeurAnnee'] = $_POST['valeurAnnee'];
     }
     // Génération des champs du formulaire.
     $mod->MxFormField("nom", "text", "valeurNom", stripslashes($_SESSION['valeurNom']));
     $mod->MxFormField("prenom", "text", "valeurPrenom", stripslashes($_SESSION['valeurPrenom']));
     // Fabrication du filtre pour la requête.
     $dateVal = new clDate($_POST['filtreDate']);
     if (($_SESSION['valeurNom'] or $_SESSION['valeurPrenom']) and $_POST['valeurDate']) {
         $this->filtre = "AND nom LIKE '" . $_SESSION['valeurNom'] . "%' " . ($_SESSION['valeurPrenom'] ? " AND prenom LIKE '" . $_SESSION['valeurPrenom'] . "%'" : '') . " AND dt_admission LIKE '" . $dateVal->getDate("Y-m-d") . "%'";
     } elseif ($_SESSION['valeurNom'] or $_SESSION['valeurPrenom']) {
         $this->filtre = "AND nom LIKE '" . $_SESSION['valeurNom'] . "%'" . ($_SESSION['valeurPrenom'] ? " AND prenom LIKE '" . $_SESSION['valeurPrenom'] . "%'" : '');
     } elseif ($_POST['filtreDate']) {
         $this->filtre = "AND dt_admission LIKE '" . $dateVal->getDate("Y-m-d") . "%'";
     } elseif (!isset($_POST['filtreDate'])) {
         $this->filtre = "AND dt_admission LIKE '" . date("Y-m-d") . "%'";
     }
     // Génération des dates possibles.
     //$dt = new clDate ( DATELANCEMENT ) ;
     $dt = new clDate();
     $dt->addWeeks(-13);
     $this->filtre .= " AND dt_admission>='" . $dt->getDate('Y-m-d') . "%'";
     $listeDates[] = "Pas de filtre";
     // Calcul de la liste des valeurs possibles pour la date.
     $dta = new clDate(date("Y-m-d 00:00:00"));
     if (!isset($_POST['filtreDate'])) {
         $_POST['filtreDate'] = $dta->getTimestamp();
     }
     for (; $dt->getTimestamp() <= $dta->getTimestamp(); $dta->addDays(-1)) {
         $listeDates[$dta->getTimestamp()] = $dta->getDate("d-m-Y");
     }
     // Si on n'a aucune date, on initialise la variable avec un tableau vide (pour ModeliXe).
     if (!is_array($listeDates)) {
         $listeDates = array();
     }
     // Passage du tableau de dates à ModeliXe.
     $mod->MxSelect("date", "filtreDate", $_POST['filtreDate'], $listeDates, '', '', "onChange=\"reload(this.form)\"");
     // Récupération et ajout dans ModeliXe de la liste des patients entrés manuellement.
     $manuels = $this->getPatientsManuels();
     $mod->MxSelect("manuels", "manuel", isset($_POST['manuel']) ? $_POST['manuel'] : '', $manuels, '', '', "size=\"25\"");
     // Récupération et ajout dans ModeliXe de la liste des patients entrés automatiquement.
     $automatiques = $this->getPatientsAutomatiques();
     $mod->MxSelect("automatiques", "automatique", isset($_POST['automatique']) ? $_POST['automatique'] : '', $automatiques, '', '', "size=\"25\"");
     // Génération de la variable de navigation.
     $mod->MxHidden("hidden", "navi=" . $session->genNavi($session->getNavi(0), $session->getNavi(1)));
     // Affichage du bouton "Fusionner" en fonction des droits.
     if (!$session->getDroit("Administration_Fusions", "w")) {
         $mod->MxBloc("fusionner", "modify", " ");
     }
     // On enlève le bouton "Supprimer" pour le moment.
     $mod->MxBloc("supprimer", "modify", " ");
     // Récupération du code généré par ModeliXe.
     $this->af .= $mod->MxWrite("1");
 }