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"); }