function addPatientSQL($idimport, $table) { global $errs; global $news1; global $mods1; global $errs1; global $news2; global $mods2; global $errs2; // Récupération des informations sur le patient à créer. $param['cw'] = "WHERE idimport='{$idimport}'"; $req = new clResultQuery(); $res = $req->Execute("Fichier", "getImports", $param, "ResultQuery"); $i = 0; if ($res['uf'][$i] == '6004') { $base = 'terminal2_tuv2'; $news2++; } else { $base = BDD; $news1++; } if ($res['INDIC_SVC'][2]) { $ras = $req->Execute("Fichier", "getMaxIdToulon", $param, "ResultQuery"); $max = 1; for ($j = 0; isset($ras['idpatient'][$j]); $j++) { if ($ras['idpatient'][$j] > $max) { $max = $ras['idpatient'][$j]; } } $max++; $data['idpatient'] = $max; $data['idu'] = $res['idu'][$i]; $data['ilp'] = $res['ilp'][$i]; $data['nsej'] = $res['idpass'][$i]; $data['uf'] = $res['uf'][$i]; $data['nom'] = $res['nom'][$i]; $data['prenom'] = $res['prenom'][$i]; $data['sexe'] = $res['sexe'][$i]; $data['dt_naissance'] = $res['dt_naissance'][$i]; $data['adresse_libre'] = $res['adresse_libre'][$i]; $data['adresse_cp'] = $res['adresse_cp'][$i]; $data['adresse_ville'] = $res['adresse_ville'][$i]; $data['telephone'] = $res['telephone'][$i]; $data['prevenir'] = str_replace('^', '<br/>', $res['prevenir'][$i]); $data['medecin_traitant'] = $res['medecin_traitant'][$i]; $data['dt_admission'] = $res['dt_admission'][$i]; $data['mode_admission'] = $res['mode_admission'][$i]; $data['iduser'] = "******"; $data['manuel'] = 0; //newfct ( gen_affiche_tableau, $data ) ; // Calcul de la durée depuis lequel le patient est admis. $d1 = new clDate(); $d2 = new clDate($data['dt_admission']); $duree = new clDuree($d1->getDifference($d2)); $duree->invertNegatif(); // Appel de la classe Requete. $requete = new clRequete($base, $table, $data); // Exécution de la requete. $res = $requete->addRecord(); // Si le patient est admis depuis plus de 30 minutes, alors il est placé dans la table des sortis if ($duree->getMinutes() > 30) { $pat = new clPatient($res['cur_id'], '', $base); $pat->sortirPatient('simple'); } // Mise à jour de la date de traitement de l'import. $date = new clDate(); $data2['dt_traitement'] = $date->getDatetime(); // Appel de la classe Requete. $requete = new clRequete(BDD, IMPORTS, $data2); // Exécution de la requete. $requete->updRecord("idimport='{$idimport}'"); } else { // En cas d'erreur, on la signale... $errs->addErreur("clImportation : Impossible d'importer ce nouveau patient, l'identifiant de l'import est introuvable (idimport=\"{$idimport}\")."); $errs1++; $errs2++; } }
function genBlocEtatCivil($nomBloc, $mod, $droit, $date = '', $sortie = '') { global $session; global $options; // Initialisation des objets et des variables utilisées. // Pour générer des formulaires plus loin. $form = new clForm(); // Date d'exécution. $now = new clDate(); // Récupération des options. $retourmax = $options->getOption("Dates Patient"); $tranches = $options->getOption("DatesDécoup Patient"); // Récupération de la valeur actuelle du bloc. $res = ''; eval("\$res = \$this->patient->get{$nomBloc} ( ) ;"); // Si une date a été transmise et qu'elle n'est pas nulle, on initialise $res avec cette valeur. if ($date) { if ($res != "0000-00-00 00:00:00") { $res = $date->getDate("d-m-Y H:i"); } else { $res = ''; } } // Si toutes ces conditions sont réunies, alors on fait transiter le patient sorti vers la table des patients présents. if ($session->getNavi(3) == "mod" . $nomBloc and ($_POST['AnnulerSortie'] or $_POST['AnnulerSortie_x']) and $session->getDroit($this->type . "_EtatCivil", $droit)) { $modif = "0000-00-00 00:00:00"; $this->patient->setAttribut($nomBloc, $modif); $this->patient = new clPatient($this->idpatient, "Sortis"); $this->patient->entrerPatient(); if ($options->getOption("Module_CCAM")) { $ccam = new clCCAMCotationActesDiags($this->paramCCAM); $ccam->deleteBAL(); if ($options->getOption('HprimXML_Actif')) { $hprimXml = new clHprimXML(); } } $res = ""; // Si ces conditions sont réunies, alors on change la date du champs avec la valeur transmise. } elseif ($session->getNavi(3) == "mod" . $nomBloc and ($_POST['Valider'] or $_POST['Valider_x']) and $session->getDroit($this->type . "_EtatCivil", $droit)) { if ($date) { if ($_POST['ValiderMaintenant'] or $_POST['ValiderMaintenant_x']) { $newdate = new clDate(); } elseif ($_POST["mod" . $nomBloc] == "now") { $newdate = new clDate(); } else { $newdate = new clDate($_POST["mod" . $nomBloc]); } $modif = $newdate->getDatetime(); $res = $newdate->getDate("d-m-Y H:i"); // Si le paramètre $sortie est vrai, alors on fait transiter le patient présent vers la table des patients sortis. if ($sortie) { $this->patient->setAttribut($nomBloc, $modif); $this->patient = new clPatient($this->idpatient, "Presents"); clFoRmX_manip::rangerDossMedChrono($this->patient); clFoRmX_manip::rangerDossMedAEV($this->patient); $this->patient->sortirPatient(); if ($options->getOption("Module_CCAM")) { $this->paramCCAM["dtFinInterv"] = $this->patient->getDateSortie(); $ccam = new clCCAMCotationActesDiags($this->paramCCAM); $ccam->writeBALSorti(); if ($options->getOption('HprimXML_Actif')) { $hprimXml = new clHprimXML(); } } $this->rien = "sortie"; } // Dans le dernier cas, il s'agit d'un bloc de type "textarea" tout simple à mettre à jour. } else { $modif = $_POST["mod" . $nomBloc]; $res = $modif; } // Mise à jour du patient. $session->setLogSup("Modification du bloc {$nomBloc}"); $this->patient->setAttribut($nomBloc, $modif); $this->patient = new clPatient($this->idpatient, $this->type); // Dans ce cas, nous devons afficher le formulaire adéquate à la modification du bloc. } elseif ($session->getNavi(3) == "mod" . $nomBloc and !$_POST['Annuler'] and !$_POST['Annuler_x']) { // Cas des champs de type date. $session->setLogSup("Demande de modification du bloc {$nomBloc}"); if ($date) { if ($sortie and $this->patient->getDateExamen() != '0000-00-00 00:00:00') { $dateMin = new clDate($this->patient->getDateExamen()); } else { $dateMin = new clDate($this->patient->getDateAdmission()); } $dateNow = new clDate(); if ($tranches >= 5) { $minutes = $dateNow->getMinutes(); $minutesless = $minutes % 5; $dateNow->addMinutes(-$minutesless); } $data[now] = 'Maintenant'; $min = $dateMin->getTimestamp(); $t = $dateNow->getTimestamp(); $data[$t] = $dateNow->getDate("d-m-Y H:i"); // On limite la taille du select $d1 = new clDate(); $d2 = new clDate($dateMin->getDatetime()); $duree = new clDuree($d1->getDifference($d2)); $duree->invertNegatif(); //if ( $duree->getDays() > 50 ) { // $d1 -> addDays ( -50 ) ; // $min = $d1 -> getTimestamp ( ) ; //} // On parcourt les dates en fonctions des options. for ($i = 0; $dateNow->getTimestamp() >= $min; $i += $tranches) { $t = $dateNow->getTimestamp(); $data[$t] = $dateNow->getDate("d-m-Y H:i"); $dateNow->addMinutes(-$tranches); } $f .= $res . "<br />" . $form->genForm(URL); /* // Préparation de la première date de la liste. $now -> addHours ( -$retourmax ) ; $min = $now -> getTimestamp ( ) ; $now -> addHours ( $retourmax ) ; if ( $tranches >= 5 ) { $minutes = $now -> getMinutes ( ) ; $minutesless = ( $minutes % 5 ) ; $now -> addMinutes ( -$minutesless ) ; } $data[now] = 'Maintenant' ; $t = $now -> getTimestamp ( ) ; $data[$t] = $now -> getDate ( "d-m-Y H:i" ) ; // On parcourt les dates en fonctions des options. for ( $i = 0 ; $now -> getTimestamp ( ) >= $min ; $i += $tranches ) { $t = $now -> getTimestamp ( ) ; $data[$t] = $now -> getDate ( "d-m-Y H:i" ) ; $now -> addMinutes ( -$tranches ) ; } $f .= $res."<br />".$form -> genForm ( URL ) ; */ // S'il ne s'agit pas de la date de sortie et que le patient est sorti, // alors on affiche le select contenant la liste des dates possibles. if (!($this->type == "Sortis" and $sortie)) { $f .= $form->genSelect("mod" . $nomBloc, 1, $data); } } else { // Cas d'un formulaire de type "textarea" tout simple. $f .= $form->genForm(URL); $f .= $form->genTextArea("mod" . $nomBloc, $res) . "<br /><center>"; } // Cas d'une date. if ($date) { // Cas de la date de sortie. if ($sortie) { // Cas d'un patient déjà sorti : On affiche seulement un bouton d'annulation de sortie. if ($this->type == "Sortis") { $f .= $form->genImage("AnnulerSortie", "Annuler la sortie", URLIMG . "annulerSortie.gif"); $f .= $form->genHidden("navi", $session->genNavi("Liste_Presents", $session->getNavi(1), $session->getNavi(2), "mod" . $nomBloc)); $f .= $form->genEndForm(); // $f .= $form -> genForm ( URL ) ; // $f .= $form -> genImage ( "RetourPatient", "Retour du patient", URLIMGRET ) ; // $f .= $form -> genHidden ( "navi", $session->genNavi ( "Liste_Presents", $this->patient->getID ( ) ) ) ; // Dans les autres cas, on affiche les boutons de validation / annulation de la sortie. } else { $contraintes = new clContraintes($this->patient->getID(), $this->paramCCAM); //formulaire(s) à remplir bloquant la sortie ( pré-contraintes ) ? if (clTuFormxTrigger::getWatcher($this->patient)->isTriggersOnOut()) { $enquetes = clTuFormxTriggerWatcher::getInstance($this->patient); $enquetes->launchTriggersOnOut(); //eko("trigers lances, sortie de la fenetre bloquante"); return ''; } else { if (clTuFormxTrigger::getWatcher($this->patient)->isTriggersWaitingForLauch()) { //eko("watchers en cours, sortie de la fenetre bloquante"); return ''; } else { if ($contraintes->runCheck()) { $f .= $form->genImage("Valider", "Valider", URLIMGVAL, 'style="border: 0px; background-color: #FFFF99;"'); $f .= $form->genHidden("navi", $session->genNavi($session->getNavi(0), $session->getNavi(1), $session->getNavi(2), "mod" . $nomBloc)); $f .= $form->genEndForm(); $f .= $form->genForm(URL); $f .= $form->genImage("Annuler", "Annuler", URLIMGANN, 'style="border: 0px; background-color: #FFFF99;"'); $f .= $form->genHidden("navi", $session->genNavi($session->getNavi(0), $session->getNavi(1), $session->getNavi(2), "mod" . $nomBloc)); } else { $session->setLogSup('Contraintes non respectées pour la sortie'); $this->af .= $contraintes->getContraintes(); } } } } // Cas d'un champs date normal : affichage des boutons valider et annuler. } else { $f .= $form->genImage("Valider", "Valider", URLIMGVAL, 'style="border: 0px; background-color: #FFFF99;"'); $f .= $form->genHidden("navi", $session->genNavi($session->getNavi(0), $session->getNavi(1), $session->getNavi(2), "mod" . $nomBloc)); $f .= $form->genEndForm(); $f .= $form->genForm(URL); $f .= $form->genImage("Annuler", "Annuler", URLIMGANN, 'style="border: 0px; background-color: #FFFF99;"'); $f .= $form->genHidden("navi", $session->genNavi($session->getNavi(0), $session->getNavi(1), $session->getNavi(2), "mod" . $nomBloc)); } // Cas d'un champs normal : affichage des boutons valider et annuler. } else { $f .= $form->genImage("Valider", "Valider", URLIMGVAL, 'style="border: 0px; background-color: #FFFF99;"'); $f .= $form->genHidden("navi", $session->genNavi($session->getNavi(0), $session->getNavi(1), $session->getNavi(2), "mod" . $nomBloc)); $f .= $form->genEndForm(); $f .= $form->genForm(URL); $f .= $form->genImage("Annuler", "Annuler", URLIMGANN, 'style="border: 0px; background-color: #FFFF99;"'); $f .= $form->genHidden("navi", $session->genNavi($session->getNavi(0), $session->getNavi(1), $session->getNavi(2), "mod" . $nomBloc)); } // On ferme la balise du formulaire. $f .= "</center>" . $form->genEndForm(); // On modifie le bloc ModeliXe passé en paramètres. $mod->MxText($nomBloc, $f); // On signale que le bloc a été modifié. $af = 1; } // S'il n'y a pas eu d'affichage jusqu'à maintenant, il ne s'agit que d'afficher la valeur contenue dans ce bloc. if (!$af) { // Si le droit de modification est présent, alors nous affichons le lien pour modifier le bloc. if ($session->getDroit($this->type . "_EtatCivil", $droit)) { if ($date) { $image = URLIMGHOR; } else { $image = URLIMGMOD; } if ($nomBloc == "DateExamen" and $_POST['Medecin'] and $this->patient->getDateExamen() == "0000-00-00 00:00:00" and !$this->patient->getMedecin()) { $date = new clDate(); $dateA = new clDate($this->patient->getDateAdmission()); if ($date->getTimestamp() > $dateA->getTimestamp()) { $this->patient->setAttribut("DateExamen", $date->getDatetime()); $res = $date->getDate("d-m-Y H:i"); } else { $dateA->addSeconds(1); $this->patient->setAttribut("DateExamen", $dateA->getDatetime()); $res = $dateA->getDate("d-m-Y H:i"); } } if ($nomBloc == "DateExamen" and isset($_POST['Medecin']) and !$_POST['Medecin']) { $this->patient->setAttribut("DateExamen", "0000-00-00 00:00:00"); $res = "--"; } if (!$this->export) { if ($nomBloc == "DateSortie") { $retour = ''; if ($options->getOption('EnqueteRadio')) { $retour = clListeRadios::getRetour($this->patient->getID(), IDAPPLICATION); } if ($retour) { $mod->MxText("retourRadio", $retour); } else { $questionSortie = $this->getQuestionSortie(); if ($questionSortie) { $mod->MxText("retourRadio", $questionSortie); } else { $mod->MxImage("imgModifier" . $nomBloc, $image, "Modifier {$nomBloc}"); $mod->MxUrl("lien" . $nomBloc, URLNAVI . $session->genNavi($session->getNavi(0), $session->getNavi(1), $session->getNavi(2), "mod" . $nomBloc)); } } } else { $mod->MxImage("imgModifier" . $nomBloc, $image, "Modifier {$nomBloc}"); $mod->MxUrl("lien" . $nomBloc, URLNAVI . $session->genNavi($session->getNavi(0), $session->getNavi(1), $session->getNavi(2), "mod" . $nomBloc)); } } } // Affichage du contenu du bloc s'il existe sinon on affiche la valeur par défaut. if ($res) { $mod->MxText($nomBloc, nl2br($res)); } else { $mod->MxText($nomBloc, VIDEDEFAUT); } } }
function addPatientHL7($data, $table, $base = BDD) { global $errs; global $options; // Calcul de la durée depuis lequel le patient est admis. $d1 = new clDate(); $d2 = new clDate($data['dt_admission']); $duree = new clDuree($d1->getDifference($d2)); $duree->invertNegatif(); // Procédure anti-fantôme : si aucun de ces champs n'est saisi, on ne fait pas l'ajout du patient. if ($data['nom'] or $data['prenom'] or $data['sexe'] or $data['ilp']) { // Appel de la classe Requete. $requete = new clRequete($base, $table, $data); // Exécution de la requete. $res = $requete->addRecord(); // eko ( "On ajoute un nouveau patient (nsej=$nsej)" ) ; // Si le patient est admis depuis plus de 30 minutes, alors il est placé dans la table des sortis if ($duree->getMinutes() > $options->getOption('ImportsBasculeSortis')) { $pat = new clPatient($res['cur_id'], '', $base); $pat->sortirPatient('simple'); } $this->news1++; } }
function genListe() { global $session; $res = $this->genRequete(); //eko ( $res ) ; //print affTab ( $res ) ; $list = new ListMaker("template/RadioListe.html"); $navi = $session->genNavi("Radio"); $list->addUserVar('navi', $navi); $list->addUrlVar('navi', $navi); $list->addUserVar('typeListe', $_SESSION['typeListe']); $list->addUrlVar('typeListe', $_SESSION['typeListe']); $list->setSortColumn('col0', 'UF', 'uf'); $list->setSortColumn('col1', 'Patient', 'nomD'); $list->setSortColumn('col2', 'Age', 'ageD'); $list->setSortColumn('col3', 'Arrivée', 'arriveeD'); $list->setSortColumn('col4', 'Soignants', 'soignants'); $list->setSortColumn('col5', 'Motif', 'motif'); $list->setSortColumn('col6', 'Date demande', 'demande'); $list->setSortColumn('col7', 'Description', 'description'); $list->setSortColumn('col8', 'Etat', 'etatD'); $list->setSortColumn('col9', 'Détail', 'detail'); $list->setdefaultSort('col8'); $item = array(); $dureead = new clDuree(); $date = new clDate(); // Parcours de la liste des patients récupérés par la requête. for ($i = 0; isset($res['idradio'][$i]); $i++) { $ras = $this->getInfosPatient($res['idpatient'][$i], $res['idapplication'][$i]); if ($session->getDroit("Liste_Radio", "m")) { $j = XhamTools::genAjax('onClick', 'mod', 'navi=' . $session->genNavi('Ajax', 'modRadios', $res['idradio'][$i])); } else { $j = ''; } $item['js'] = $j; $item['ItemColor'] = 'rad' . $res['etat'][$i]; $item['etatD'] = $res['etat'][$i]; switch ($res['etat'][$i]) { case 'a': $date->setDate($res['dt_creation'][$i]); $duree = $dureead->getAge($date->getDatetime()); if (!$dureead->invertNegatif()) { $item['etat'] = 'Non pris en charge<br/>Depuis ' . $duree; } else { $temp = explode(" ", $res['dt_creation'][$i]); list($annee, $mois, $jour) = explode("-", $temp[0]); $item['etat'] = 'A prendre en charge<br/>Dans ' . $dureead->getAge() . "<br>le " . $jour . "/" . $mois . "/" . $annee . " à " . $temp[1]; $item['ItemColor'] = 'rad' . 'elephant'; } break; case 'b': $date->setDate($res['dt_pec'][$i]); $duree = $dureead->getAge($date->getDatetime()); $item['etat'] = 'Pris en charge<br/>Depuis ' . $duree; break; case 'c': $date->setDate($res['dt_encours'][$i]); $duree = $dureead->getAge($date->getDatetime()); $item['etat'] = 'En cours<br/>Depuis ' . $duree; break; case 'd': $date->setDate($res['dt_fin'][$i]); $duree = $dureead->getAge($date->getDatetime()); $item['etat'] = 'Terminé<br/>Depuis ' . $duree; break; } // Calcul du sexe de la personne... (?!). switch ($ras['sexe'][0]) { case 'M': $img = URLIMG . "homme.png"; break; case 'F': $img = URLIMG . "femme.png"; break; default: $img = URLIMG . "Indefini.png"; break; } $item['sexe'] = "<img src=\"{$img}\" alt=\"" . $ras['sexe'][0] . "\" />"; // Calcul de l'âge. $date = new clDate($ras['dt_naissance'][0]); $age = new clDuree($date->getTimestamp()); $str = $age->getAgePrecis($date->getTimestamp()); if ($ras['dt_naissance'][0] != "0000-00-00 00:00:00") { $item['age'] = $str; $item['ageD'] = $date->getTimestamp(); } else { $item['age'] = VIDEDEFAUT; $item['ageD'] = VIDEDEFAUT; } global $ufs; $item['uf'] = isset($ufs[$ras['uf'][0]]) ? $ufs[$ras['uf'][0]] : $ras['uf'][0]; if ($ras['dt_admission'][0] != "0000-00-00 00:00:00") { $datead = new clDate($ras['dt_admission'][0]); $dateSimple = $datead->getDate("d-m-Y"); $dateHeure = $datead->getDate("H\\hi"); $item['arrivee'] = $dateSimple . "<br />" . $dateHeure; $item['arriveeD'] = $datead->getTimestamp(); } else { $item['arrivee'] = VIDEDEFAUT; $item['arriveeD'] = VIDEDEFAUT; } // Médecin et IDE. switch ($res['idapplication'][$i]) { case '1': if ($ras['medecin_urgences'][0]) { $med = "Dr " . $ras['medecin_urgences'][0]; } else { $med = VIDEDEFAUT; } if ($ras['ide'][0]) { $ide = "Ide " . $ras['ide'][0]; } else { $ide = VIDEDEFAUT; } $item['soignants'] = $med . "<br />" . $ide; if ($ras['salle_examen'][0]) { $sal = $ras['salle_examen'][0]; } else { $sal = VIDEDEFAUT; } $item['salle'] = $sal; break; case '24': if ($ras['medecin'][0]) { $med = "Dr " . $ras['medecin'][0]; } else { $med = VIDEDEFAUT; } if ($ras['chirurgien'][0]) { $ide = "Chir " . $ras['chirurgie'][0]; } else { $ide = VIDEDEFAUT; } $item['soignants'] = $med . "<br />" . $ide; if ($ras['chambre'][0]) { $sal = $ras['chambre'][0]; } else { $sal = VIDEDEFAUT; } $item['salle'] = $sal; break; default: if ($ras['medecin_urgences'][0]) { $med = "Dr " . $ras['medecin_urgences'][0]; } else { $med = VIDEDEFAUT; } if ($ras['ide'][0]) { $ide = "Ide " . $ras['ide'][0]; } else { $ide = VIDEDEFAUT; } $item['soignants'] = $med . "<br />" . $ide; if ($ras['salle_examen'][0]) { $sal = $ras['salle_examen'][0]; } else { $sal = VIDEDEFAUT; } $item['salle'] = $sal; break; } // Motif de recours. if ($ras['motif_recours'][0]) { $item['motif'] = $ras['motif_recours'][0]; } else { $item['motif'] = VIDEDEFAUT; } // Patient $item['urlpatient'] = URLNAVI . $session->genNavi($session->getNavi(0), "FichePatient", $res['idpatient'][$i]); // Concaténation du nom et du prénom. $item['patient'] = "<span " . clPatient::genInfoBulle($ras, 0, $res['idapplication'][$i]) . ">" . strtoupper($ras['nom'][0]) . "</span><br />" . ucfirst(strtolower($ras['prenom'][0]) . "<br/>" . $ras['nsej'][0]); if ($res['dt_creation'][$i] != "0000-00-00 00:00:00") { $datead = new clDate($res['dt_creation'][$i]); $dateSimple = $datead->getDate("d-m-Y"); $dateHeure = $datead->getDate("H\\hi"); $item['demande'] = $dateSimple . "<br />" . $dateHeure; $item['demandeD'] = $datead->getTimestamp(); } else { $item['arrivee'] = VIDEDEFAUT; $item['arriveeD'] = VIDEDEFAUT; } $parp = '&etape=' . $res['etat'][$i] . '&idradio=' . $res['idradio'][$i]; //$item['detail'] = "<a onmouseout=\"request('".URLNAVI."QWpheHxnZXRSYWRpb3M=',null,'getRadios') ;\" href=\"".URLNAVI.$session->genNavi("Radio","",$res['idpatient'][$i],$ras['idu'][0],$ras['nsej'][0])."$parp&Formulaire2print=radio&FormX_ext_goto_=".$res['id_instance'][$i]."&act_print=1\" target=\"_blank\">" ; $jo = 'onClick="setWait(\'navigation\');location.reload();"'; //$jo = 'onClick=""' ; $item['detail'] = "<a {$jo} href=\"" . URLNAVI . $session->genNavi("Radio", "", $res['idpatient'][$i], $ras['idu'][0], $ras['nsej'][0]) . "{$parp}&Formulaire2print=radio&FormX_ext_goto_=" . $res['id_instance'][$i] . "&act_print=1\" target=\"_blank\">"; $item['detail'] .= "<img src=\"images/pdf.png\" alt=\"Afficher le PDF\"/></a>"; $rel = new clRequete(BDD, '', '', MYSQL_HOST, MYSQL_USER, MYSQL_PASS); $rese = $rel->exec_requete("select * from radios_enquetes where idradio=" . $res['idradio'][$i], 'resultquery'); global $pi; if ($rese['INDIC_SVC'][2]) { if ($rese['date'][0] == '0000-00-00 00:00:00') { $img = 'formko.gif'; } else { $img = 'formok.gif'; } if ($session->getDroit("Liste_Radio", "m")) { $j = XhamTools::genAjax('onClick', 'mod', 'navi=' . $session->genNavi('Ajax', 'modRadiosEnquetes', $res['idradio'][$i])); } else { $j = ''; } $item['detail'] .= ' <img ' . $j . ' src="images/' . $img . '" ' . $pi->genInfoBulle("Ouvrir le formulaire d'enquête.") . ' style="cursor: pointer; pointer: hand;" />'; } if ($res['retour'][$i]) { $dateR = new clDate($res['dt_retour'][$i]); $retour = '<b>Formulaire de retour saisi par les urgences :</b>'; $retour .= '<br/><u>Auteur :</u> ' . $res['retourid'][$i]; $retour .= '<br/><u>Date :</u> ' . $dateR->getDate('d/m/Y H:i:s'); switch ($res['retour'][$i]) { case 'Oui': $resultat = 'Anomalie détectée avec cette radio.'; break; case 'Non': $resultat = 'Aucune anomalie détectée avec cette radio.'; break; case 'NR': $resultat = "L'utilisateur signale que cette radio n'a pas été réalisée."; break; case 'NI': $resultat = "L'utilisateur n'a pas interprété cette radio."; break; default: $resultat = "L'utilisateur n'a pas rempli le formulaire."; break; } $retour .= '<br/><u>Résultat :</u> ' . $resultat; $retour .= '<br/><u>Commentaire :</u>' . ($res['commentaire'][$i] ? $res['commentaire'][$i] : 'Aucun commentaire.'); $item['detail'] .= " <img src=\"" . URLIMGOBS . "\" " . $pi->genInfoBulle($retour) . " alt=\"Comm.\" />"; } $html = $this->getDetailRadio($res, $i); $item['description'] = $html; $ok = 0; switch ($_SESSION['typeListe']) { case 'all': $ok = 1; break; case 'alm': $ok = 1; break; case 'd': $ok = 1; break; case 'rall': if (eregi('RADIO', $html)) { $ok = 1; } break; case 'ralm': if (eregi('RADIO', $html)) { $ok = 1; } break; case 'rd': if (eregi('RADIO', $html)) { $ok = 1; } break; case 'eall': if (eregi('ECHO', $html)) { $ok = 1; } break; case 'ealm': if (eregi('ECHO', $html)) { $ok = 1; } break; case 'ed': if (eregi('ECHO', $html)) { $ok = 1; } break; case 'sall': if (eregi('SCAN', $html)) { $ok = 1; } break; case 'salm': if (eregi('SCAN', $html)) { $ok = 1; } break; case 'sd': if (eregi('SCAN', $html)) { $ok = 1; } break; case 'ec': $nb = 200; $ok = 1; break; case 'et': $nb = 200; $ok = 1; break; default: $nb = 50; $ok = 1; break; } if ($ok) { $list->addItem($item); } } // Récupération du code HTML généré. return $list->getList($nb); }