static function getDataTransfertsSamu(clDate $date1, clDate $date2)
 {
     $strDate1 = $date1->getDate();
     $strDate2 = $date2->addDays(1)->getDate();
     $obRequete = new clRequete(BDD, 'patients_sortis', array(), MYSQL_HOST, MYSQL_USER, MYSQL_PASS);
     $requete = "SELECT * FROM `patients_sortis` WHERE `dt_admission` >= '{$strDate1}' and dt_sortie <= '{$strDate2}' AND `type_destination` = 'T' AND moyen_transport LIKE '%SMUR%' ";
     return $obRequete->exec_requete($requete, 'tab');
 }
Exemple #2
0
 function genListe($res)
 {
     // Chargement du template ModeliXe.
     $mod = new ModeliXe("recherchePatients.html");
     $mod->SetModeliXe();
     for ($i = 0; isset($res['idpatient'][$i]) and $i < 29; $i++) {
         $dateN = new clDate($res['dt_naissance'][$i]);
         $mod->MxText("patient.ib", clPatient::genInfoBulle($res, $i) . " onClick=\"document.forms.creationPatient.nom.value='" . $res['nom'][$i] . "';" . "document.forms.creationPatient.prenom.value='" . $res['prenom'][$i] . "';" . "document.forms.creationPatient.sexe.value='" . $res['sexe'][$i] . "';" . "document.forms.creationPatient.naissance.value='" . $dateN->getDate("d/m/Y") . "';" . "document.forms.creationPatient.adresse.value='" . $res['adresse_libre'][$i] . "';" . "document.forms.creationPatient.cp.value='" . $res['adresse_cp'][$i] . "';" . "document.forms.creationPatient.ville.value='" . $res['adresse_ville'][$i] . "';" . "document.forms.creationPatient.telephone.value='" . $res['telephone'][$i] . "';" . "" . "" . "\"");
         $mod->MxText("patient.nom", $res['nom'][$i]);
         $mod->MxText("patient.prenom", $res['prenom'][$i]);
         $mod->MxText("patient.naissance", $dateN->getDate('d/m/Y'));
         if (strlen($res['adresse_libre'][$i]) > 46) {
             $trr = '...';
         } else {
             $trr = '';
         }
         $mod->MxText("patient.adresse", substr($res['adresse_libre'][$i], 0, 46) . $trr);
         $mod->MxBloc("patient", "loop");
     }
     $this->af .= $mod->MxWrite("1");
 }
Exemple #3
0
function getDateE2($formx)
{
    global $tool;
    $idu = $formx->getVar('ids');
    $req = new clResultQuery();
    $param = array();
    $param['cw'] = "dt_naissance";
    $param['idu'] = $idu;
    $res = $req->Execute("Fichier", "getInfoPatientFromIDU", $param, "ResultQuery");
    $DateNPat = $res['dt_naissance'][0];
    //eko($DateNPat);
    // Calcul sur les différentes dates.
    $age = new clDate($DateNPat);
    $dateSimple = $age->getDate("d-m-Y");
    $dateComple = $age->getDateText();
    $duree = new clDuree();
    return "" . utf8_encode($dateComple) . "";
}
Exemple #4
0
function getPatientMineur($formx)
{
    global $tool;
    $idu = $formx->getVar('ids');
    $req = new clResultQuery();
    $param = array();
    $param['cw'] = "dt_naissance";
    $param['idu'] = $idu;
    $res = $req->Execute("Fichier", "getInfoPatientFromIDU", $param, "ResultQuery");
    $DateNPat = $res['dt_naissance'][0];
    //eko($DateNPat);
    // Calcul sur les différentes dates.
    $age = new clDate($DateNPat);
    $dateSimple = $age->getDate("d-m-Y");
    $dateComple = $age->getDateText();
    $duree = new clDuree();
    $duree->getAgePrecis($age->getTimestamp());
    if ($duree->getYears() < 18) {
        return "mineur";
    } else {
        return "majeur";
    }
}
Exemple #5
0
 function genListe()
 {
     global $session;
     global $options;
     if ($session->getNavi(2) == 'Valider') {
         // On valide la ligne sur laquelle on vient de cliquer.
         $id = $session->getNavi(3);
         eko($id);
         $date = new clDate();
         $data['etat'] = $date->getDatetime();
         $requete = new clRequete(BDD, 'bal', $data);
         $sql = $requete->updRecord('id=' . $id);
     }
     // Préparation de la requête.
     $req = new clResultQuery();
     $URL = 1;
     $item['urlimg'] = 'images/bt-valider.gif';
     if ($options->getOption("TriListeBE") == "nom") {
         $order = " ORDER BY nom";
     } else {
         $order = '';
     }
     switch ($_REQUEST['f']) {
         case '1':
             $param['cw'] = "WHERE etat='' AND type='UHCD' {$order}";
             break;
         case '2':
             $param['cw'] = "WHERE etat='' AND type='Sortie' {$order}";
             break;
         case '3':
             $URL = 0;
             $item['urlimg'] = 'images/valider.gif';
             $param['cw'] = "WHERE etat!='' ORDER BY etat DESC LIMIT 0, 200";
             break;
         default:
             $param['cw'] = "WHERE etat='' {$order}";
             break;
     }
     // Exécution de la requête.
     $res = $req->Execute("Fichier", "getBal", $param, "ResultQuery");
     $list = new ListMaker("template/ListeBE.html");
     for ($i = 0; isset($res['id'][$i]); $i++) {
         // récupération date admission
         /* $dt_adm = "Date inconnue";
         	    $sql = "SELECT dt_admission FROM `patients_presents` WHERE nsej='".$res['nsej'][$i]."'";
         	    $obRequete = new clRequete(BDD, 'patients_presents', array() ,MYSQL_HOST, MYSQL_USER , MYSQL_PASS );
         	    $tabResult = $obRequete->exec_requete($sql, 'tab');
         	    if (isset($tabResult[0])) $dt_adm = $tabResult[0]['dt_admission'];
         	    else {
         		 $obRequete = new clRequete(BDD, 'patients_sortis', array() ,MYSQL_HOST, MYSQL_USER , MYSQL_PASS );
         		$sql = "SELECT dt_admission FROM `patients_sortis` WHERE nsej='".$res['nsej'][$i]."'";
         		$tabResult = $obRequete->exec_requete($sql, 'tab');
         		if (isset($tabResult[0])) $dt_adm = $tabResult[0]['dt_admission'];
         	    }*/
         $item['dt_adm'] = $res['date_admission'][$i];
         $item['ilp'] = $res['ilp'][$i];
         $item['nsej'] = $res['nsej'][$i];
         $item['patient'] = $res['nom'][$i] . ' ' . ucfirst(strtolower($res['prenom'][$i]));
         $item['uf'] = $res['uf'][$i];
         if ($res['dest_attendue'][$i]) {
             $item['destAttendue'] = $res['dest_attendue'][$i];
         } else {
             $item['destAttendue'] = '--';
         }
         $item['action'] = $res['action'][$i];
         $date = new clDate($res['date'][$i]);
         $item['date'] = $date->getDate('d-m-Y H:i:s');
         if ($URL) {
             $item['urlbe'] = URLNAVI . $session->genNavi($session->getNavi(0), $session->getNavi(1), 'Valider', $res['id'][$i]) . '&f=' . $_REQUEST['f'];
         } else {
             $item['urlbe'] = URLNAVI . $session->genNavi($session->getNavi(0), $session->getNavi(1)) . '&f=' . $_REQUEST['f'];
         }
         $list->addItem($item);
     }
     // Récupération du code HTML généré.
     return $list->getList();
 }
Exemple #6
0
 function getListeDates()
 {
     $dateDeb = new clDate(DATELANCEMENT);
     $dateFin = new clDate();
     $tDeb = $dateDeb->getTimestamp();
     $tab = array();
     for (; $dateFin->getTimestamp() >= $tDeb; $dateFin->addDays(-1)) {
         $tab[$dateFin->getDate("Y-m-d")] = $dateFin->getDate("d/m/Y");
     }
     return $tab;
 }
Exemple #7
0
 function addToTab($tab, $prc, $filtre)
 {
     global $session;
     $req = new clResultQuery();
     $param['table'] = PPRESENTS;
     //$param['cw'] = "WHERE $filtre UNION SELECT * FROM patients_sortis WHERE $filtre" ;
     $param['cw'] = "WHERE {$filtre} AND manuel=0 AND iduser!='SUPPRIME' UNION SELECT * FROM patients_sortis WHERE {$filtre} AND manuel=0 AND iduser!='SUPPRIME' ORDER BY dt_admission, nom";
     $res = $req->Execute("Fichier", "getPatients", $param, "ResultQuery");
     $date = new clDate();
     for ($i = 0; isset($res['idpatient'][$i]); $i++) {
         if (!isset($tab[$res['idpatient'][$i]])) {
             $tab[$res['idpatient'][$i]]['survol'] = clPatient::genInfoBulle($res, $i);
             if ($res['dt_sortie'][$i] == '0000-00-00 00:00:00') {
                 $auttable = PPRESENTS;
             } else {
                 $auttable = PSORTIS;
             }
             if ($this->p['dt_sortie'][0] == '0000-00-00 00:00:00') {
                 $mantable = PPRESENTS;
             } else {
                 $mantable = PSORTIS;
             }
             //$js = XhamTools::genAjax ( 'onclick', 'fusion', 'ajax=1&amp;navi='.$session->genNavi ( 'Administration', 'FusionsV2', 'setFusions', $this->p['idpatient'][0], $mantable, $res['idpatient'][$i], $auttable) ) ;
             $nomAut = $res['nom'][$i] . " " . $res['prenom'][$i];
             $nomMan = $this->p['nom'][0] . " " . $this->p['prenom'][0];
             $js = "onclick=\"if (window.confirm('Etes-vous certain de vouloir fusionner le patient manuel " . addslashes($nomMan) . " et le patient automatique " . addslashes($nomAut) . " ?')){request('index.php?ajax=1&navi=" . $session->genNavi('Administration', 'FusionsV2', 'setFusions', $this->p['idpatient'][0], $mantable, $res['idpatient'][$i], $auttable) . "',null,'fusion');return true;} else {return false;}\"";
             $tab[$res['idpatient'][$i]]['js'] = $js;
             $tab[$res['idpatient'][$i]]['suppr'] = '';
             $tab[$res['idpatient'][$i]]['nom'] = $res['nom'][$i];
             $tab[$res['idpatient'][$i]]['nsej'] = $res['nsej'][$i];
             $tab[$res['idpatient'][$i]]['nom'] = $res['nom'][$i];
             $tab[$res['idpatient'][$i]]['prenom'] = $res['prenom'][$i];
             $tab[$res['idpatient'][$i]]['sexe'] = $res['sexe'][$i];
             $tab[$res['idpatient'][$i]]['sexe'] = $res['sexe'][$i];
             $tab[$res['idpatient'][$i]]['sexe'] = $res['sexe'][$i];
             $date->setDate($res['dt_naissance'][$i]);
             $tab[$res['idpatient'][$i]]['dt_naissance'] = $date->getDate('d-m-Y');
             $date->setDate($res['dt_admission'][$i]);
             $tab[$res['idpatient'][$i]]['dt_admission'] = $date->getDate('d-m-Y H:i');
             $tab[$res['idpatient'][$i]]['prc'] = $prc;
             $this->nbRes++;
         }
         //elseif ( $tab[$res['idpatient'][$i]]['prc'] < 99 ) $tab[$res['idpatient'][$i]]['prc']++ ;
     }
     return $tab;
     //print affTab ( $tab ) ;
 }
Exemple #8
0
 function launchAES()
 {
     global $options;
     $mails = '';
     $codes = '';
     $contenu = '';
     $config[type] = "MySQL";
     $config[host] = MYSQL_HOST;
     $config[login] = MYSQL_USER;
     $config[password] = MYSQL_PASS;
     $config[db] = BDD;
     $date = new clDate();
     $date_naissance = new clDate();
     $date_admission = new clDate();
     //$aujourdhui =getdate();
     //$date ->getHours ( )
     $date1 = $date->getDate("Y-m-d");
     // aujourdhui J
     $date->addDays("-1");
     $date2 = $date->getDate("Y-m-d");
     // date J-1
     $heure = $date->getDate("H:i:00");
     $date->addHours("-8");
     $hour1 = $date->getDate("H:i:00");
     $date->addHours("8");
     $date->addHours("-16");
     $hour2 = $date->getDate("H:i:00");
     $requete = new clResultQuery();
     $listeGen = new clListesGenerales("recup");
     $listeMails = $listeGen->getListeItems("Mails Alertes AES", "1", '', '', "1");
     $listeCodesR = $listeGen->getListeItems("Alertes AES - Code Recours", "1", '', '', "1");
     $listeCodesD = $listeGen->getListeItems("Alertes AES - Code Diagnostics", "1", '', '', "1");
     while (list($key, $val) = each($listeMails)) {
         if ($mails) {
             $virgule = ',';
         } else {
             $virgule = '';
         }
         if ($val != "--") {
             $mails .= $virgule . $val;
         }
     }
     //print "Mails : $mails" ;
     while (list($key, $val) = each($listeCodesR)) {
         if ($codes) {
             $or = ' OR ';
         } else {
             $or = '';
         }
         if ($val != "--") {
             $codes .= $or . "recours_code='" . $val . "'";
         }
     }
     while (list($key, $val) = each($listeCodesD)) {
         if ($codes) {
             $or = ' OR ';
         } else {
             $or = '';
         }
         if ($val != "--") {
             $codes .= $or . "diagnostic_code='" . $val . "'";
         }
     }
     if ($heure >= "15:00:00") {
         $req2 = "SELECT * FROM patients_sortis WHERE ({$codes}) AND dt_sortie BETWEEN '{$date1} {$hour1}' AND '{$date1} {$heure}'";
         $res1 = $requete->Execute("Query", $req2, $config);
     } else {
         $req2 = "SELECT * FROM patients_sortis WHERE ({$codes}) AND dt_sortie BETWEEN '{$date2} {$hour2}' AND '{$date1} {$heure}'";
         $res1 = $requete->Execute("Query", $req2, $config);
     }
     $contenu1 = $contenu1 . "\n";
     if ($res1[idpatient] > 0) {
         if ($options->getOption("typeMail") == "HTML") {
             $contenu1 = "<table align=\"center\" border =1>\n\t\t\t       <tr bgcolor=\"Silver\">\n\t\t\t       <th colspan=\"5\">Informations AES (Patients sortis)</th>\n\t\t\t\t</tr>\n\t\t\t\t<tr bgcolor=\"Silver\">\n\t\t\t\t<th>Nom</th>\n\t\t\t\t<th>Prénom</th>\n\t\t\t\t<th>Né(e) le</th>\n\t\t\t\t<th>Admission le</th>\n\t\t\t\t<th>Médecin Urg.</th>\n\t\t\t\t</tr>";
         } else {
             $contenu1 = "Informations AES (Patients sortis)\tNom\tPrénom\tNé(e) le\tAdmission le\tMédecin Urg.\n";
         }
         for ($i = 0; isset($res1[idpatient][$i]); ++$i) {
             // Affectation de resultats dans le tableau entrants
             $date_naissance->setDate($res1[dt_naissance][$i]);
             $date_admission->setDate($res1[dt_admission][$i]);
             if ($options->getOption("typeMail") == "HTML") {
                 $contenu1 .= "<tr>";
                 $contenu1 .= "<td>" . $res1[nom][$i] . "</td>";
                 $contenu1 .= "<td>" . $res1[prenom][$i] . "</td>";
                 $contenu1 .= "<td>" . $date_naissance->getDate('d-m-Y H:i:s') . "</td>";
                 $contenu1 .= "<td>" . $date_admission->getDate('d-m-Y H:i:s') . "</td>";
                 $contenu1 .= "<td>Dr " . $res1[medecin_urgences][$i] . "</td>";
                 $contenu1 .= "</tr>";
                 //Ecriture du log
             } else {
                 $contenu1 .= $res1[nom][$i] . "\t" . $res1[prenom][$i] . "\t";
                 $contenu1 .= $date_naissance->getDate('d-m-Y H:i:s') . "\t";
                 $contenu1 .= $date_admission->getDate('d-m-Y H:i:s') . "\t";
                 $contenu1 .= "Dr " . $res1[medecin_urgences][$i] . '\\n';
             }
             $text_log1 .= $text_log1 . "\n";
             $text_log1 .= $res1[nom][$i] . ";";
             $text_log1 .= $res1[prenom][$i] . ";";
             $text_log1 .= $res1[dt_naissance][$i] . ";";
             $text_log1 .= $res1[dt_admission][$i] . ";";
             $text_log1 .= $res1[medecin_urgences][$i] . ";";
             $text_log1 .= " patients sortis ";
             $fp = fopen("fichier_log.txt", "a");
             fputs($fp, $text_log1);
         }
         if ($options->getOption("typeMail") == "HTML") {
             $contenu1 .= "</table>";
         }
         eko($contenu1);
     } else {
         $verif2 = 1;
         eko("Aucun enregistrement correspondant à la requête de patients sortis.");
         $contenu1 .= "Aucun enregistrement correspondant à la requête de patients sortis.";
     }
     // Paramètre de mail
     $reply = Erreurs_MailApp;
     if ($options->getOption("typeMail") == "HTML") {
         $comment = "<hr><i>Ce message a été envoyé automatiquement par un serveur !</i> ";
     } else {
         $comment = "\n\nCe message a été envoyé automatiquement par un serveur !";
     }
     $contenu2 = $contenu;
     $contenu2 .= $contenu1;
     $contenu2 .= $comment;
     //$contenu2 .= "<br>req1 : $req<br>" ;
     //$contenu2 .= "req2 : $req2<br>" ;
     $from = Erreurs_MailApp;
     //$dest_mail = "*****@*****.**" ;
     $dest_mail = $mails;
     eko("\nContenu : {$contenu2}\n");
     if ($options->getOption("typeMail") == "HTML") {
         $content = "Content-Type: text/html; charset=\"iso-8859-1\"";
     } else {
         $content = "Content-Type: text/plain; charset=\"iso-8859-1\"";
     }
     $head = "From: {$from}\n{$content}\n";
     $obj = "Alerte AES";
     if ($verif2) {
         $dest_mail = "*****@*****.**";
         $obj = "Alerte AES (RAS)";
     } else {
         mail($dest_mail, $obj, $contenu2, $head);
     }
     eko($comment);
 }
Exemple #9
0
 function hxmlCreate($res, $i)
 {
     global $options;
     global $stopAffichage;
     //$stopAffichage = 1 ;
     $tabActe = array();
     $tabActe = explode('|', $res['CONTENU'][$i]);
     $type = $res['TYPE'][$i];
     $idpass = $tabActe[0];
     $idu = $tabActe[1];
     $nomu = XhamTools::sansAccent($tabActe[2]);
     $pren = XhamTools::sansAccent($tabActe[3]);
     $sexe = $tabActe[4];
     $dtnai = $tabActe[5];
     $dtdem = $tabActe[6];
     $hhdem = $tabActe[7];
     $ufd = $tabActe[8];
     $action = $tabActe[9];
     $idact = $tabActe[10];
     $cdccam = $tabActe[11];
     $cddiags = $tabActe[12];
     $cdacti = $tabActe[13];
     $cdphase = $tabActe[14];
     $dtr = $tabActe[15];
     $hhr = $tabActe[16];
     $nomumed = XhamTools::sansAccent($tabActe[17]);
     $prenmed = XhamTools::sansAccent($tabActe[18]);
     $adeli = $tabActe[19];
     $ufr = $tabActe[20];
     $modif = $tabActe[21];
     $ngapl = $tabActe[22];
     $ngapc = $tabActe[23];
     $factu = $tabActe[24];
     $cdasso = $tabActe[25];
     $nuitjf = $tabActe[26];
     // eko ( $tabActe ) ;
     if ($action == 'creation') {
         $action = utf8_encode('création');
     }
     if ($nuitjf == 'F') {
         $isFerie = "oui";
     } else {
         $isFerie = "non";
     }
     if ($nuitjf == 'N') {
         $isNuit = '1t';
     } elseif ($nuitjf == 'NM') {
         $isNuit = '2t';
     } else {
         $isNuit = 'non';
     }
     //eko ( $tabActe ) ;
     $date = new clDate();
     $nomFic = 'ficTV2_' . $res['ID'][$i] . '';
     $num = $res['ID'][$i];
     if ($type != 'DIAG') {
         $dom = new DOMDocument('1.0', 'ISO-8859-1');
         $evtsSA = $dom->createElement('evenementsServeurActes', '');
         $enteteM = $dom->createElement('enteteMessage', '');
         $idMe = $dom->createElement('identifiantMessage', $res['ID'][$i]);
         if ($options->getOption('HprimXML_DateT')) {
             $dHProd = $dom->createElement('dateHeureProduction', $date->getDate("Y-m-d\\TH:i:s"));
         } else {
             $dHProd = $dom->createElement('dateHeureProduction', $date->getDatetime());
         }
         $emett = $dom->createElement('emetteur', '');
         $agentse = $dom->createElement('agents', '');
         $agente = $dom->createElement('agent', '');
         $agente->setAttribute('categorie', 'application');
         $codee = $dom->createElement('code', $options->getOption('HprimXML_Emet') ? $options->getOption('HprimXML_Emet') : $res['DISCR'][$i]);
         $desti = $dom->createElement('destinataire', '');
         $agentsd = $dom->createElement('agents', '');
         $agentd = $dom->createElement('agent', '');
         $agentd->setAttribute('categorie', 'application');
         $coded = $dom->createElement('code', $options->getOption('HprimXML_Dest'));
         $evtSA = $dom->createElement('evenementServeurActe', '');
         $patient = $dom->createElement('patient', '');
         $identp = $dom->createElement('identifiant', '');
         $emettp = $dom->createElement('emetteur', '');
         $valpe = $dom->createElement('valeur', $idu);
         $recepp = $dom->createElement('recepteur', '');
         $valpp = $dom->createElement('valeur', $idu);
         $persP = $dom->createElement('personnePhysique', '');
         $persP->setAttribute('sexe', $sexe);
         $nomUs = $dom->createElement('nomUsuel', $nomu);
         $prenoms = $dom->createElement('prenoms', '');
         $prenom = $dom->createElement('prenom', $pren);
         $dateNa = $dom->createElement('dateNaissance', '');
         $dateN = $dom->createElement('date', $dtnai);
         $venue = $dom->createElement('venue', '');
         $identv = $dom->createElement('identifiant', '');
         $emettv = $dom->createElement('emetteur', '');
         $valve = $dom->createElement('valeur', $idpass);
         $recepv = $dom->createElement('recepteur', '');
         $valvp = $dom->createElement('valeur', $idpass);
         $interv = $dom->createElement('intervention', '');
         $identi = $dom->createElement('identifiant', '');
         if ($options->getOption('HprimXML_EmetInterv') == 'ID') {
             $emetti = $dom->createElement('emetteur', $res['ID'][$i]);
         } elseif ($options->getOption('HprimXML_EmetInterv')) {
             $emetti = $dom->createElement('emetteur', $options->getOption('HprimXML_EmetInterv'));
         } else {
             $emetti = $dom->createElement('emetteur', $res['DISCR'][$i]);
         }
         //$emetti   = $dom->createElement ( 'emetteur',  ) ;
         $demande = $dom->createElement('demande', '');
         $datePr = $dom->createElement('datePrescription', '');
         $dateP = $dom->createElement('date', $dtdem);
         $heureP = $dom->createElement('heure', $hhdem);
         $uniteF = $dom->createElement('uniteFonctionnelle', '');
         $code = $dom->createElement('code', $ufd);
         $debut = $dom->createElement('debut', '');
         $dateID = $dom->createElement('date', $dtdem);
         $heureID = $dom->createElement('heure', $hhdem);
         switch ($type) {
             case 'CCAM':
                 $actesCCAM = $dom->createElement('actesCCAM', '');
                 $acteCCAM = $dom->createElement('acteCCAM', '');
                 $acteCCAM->setAttribute('action', $action);
                 $identa = $dom->createElement('identifiant', '');
                 $emettia = $dom->createElement('emetteur', $idact);
                 $recepia = $dom->createElement('recepteur', '');
                 $codeActe = $dom->createElement('codeActe', $cdccam);
                 $codeActi = $dom->createElement('codeActivite', $cdacti);
                 $codePhas = $dom->createElement('codePhase', $cdphase);
                 $execute = $dom->createElement('execute', '');
                 $datee = $dom->createElement('date', $dtdem);
                 $heuree = $dom->createElement('heure', $hhdem);
                 $executant = $dom->createElement('executant', '');
                 $medecins = $dom->createElement('medecins', '');
                 $medExec = $dom->createElement('medecinExecutant', '');
                 if ($options->getOption("HprimXML_ExecPrinc")) {
                     $medExec->setAttribute('principal', "oui");
                 }
                 $medE = $dom->createElement('medecin', '');
                 $numADELI = $dom->createElement('numeroAdeli', $adeli);
                 $identm = $dom->createElement('identification', '');
                 if ($options->getOption("HprimXML_CodeMedecin") == 'ADELI') {
                     $codeade = $adeli;
                 } else {
                     $codeade = 'x';
                 }
                 $codeia = $dom->createElement('code', $codeade);
                 $persom = $dom->createElement('personne', '');
                 $nomUm = $dom->createElement('nomUsuel', $nomumed);
                 $prenomsm = $dom->createElement('prenoms', '');
                 $prenomm = $dom->createElement('prenom', $prenmed);
                 $uniteFo = $dom->createElement('uniteFonctionnelle', '');
                 $codeuf = $dom->createElement('code', $ufr);
                 $modifs = $dom->createElement('modificateurs', '');
                 $tabd = explode('~', $modif);
                 for ($i = 0; isset($tabd[$i]); $i++) {
                     if ($tabd[$i]) {
                         eval('$modifc' . $i . '  = $dom->createElement ( "modificateur", "' . $tabd[$i] . '" ) ;');
                         if ($options->getOption('HprimXML_StatutFT')) {
                             eval('$modifc' . $i . '  -> setAttribute ( "statut", "ft" ) ;');
                         }
                     }
                 }
                 //$modifs    = $dom->createElement ( 'modificateurs', '' ) ;
                 //  $modifc    = $dom->createElement ( 'modificateur', $modif ) ;
                 $codeANP = $dom->createElement('codeAssociationNonPrevue', $cdasso);
                 $identa->appendChild($emettia);
                 $identa->appendChild($recepia);
                 $acteCCAM->appendChild($identa);
                 $acteCCAM->appendChild($codeActe);
                 $acteCCAM->appendChild($codeActi);
                 $acteCCAM->appendChild($codePhas);
                 $execute->appendChild($datee);
                 $execute->appendChild($heuree);
                 $acteCCAM->appendChild($execute);
                 $medE->appendChild($numADELI);
                 $identm->appendChild($codeia);
                 $medE->appendChild($identm);
                 $persom->appendChild($nomUm);
                 $prenomsm->appendChild($prenomm);
                 $persom->appendChild($prenomsm);
                 $medE->appendChild($persom);
                 $medExec->appendChild($medE);
                 $medecins->appendChild($medExec);
                 $executant->appendChild($medecins);
                 $uniteFo->appendChild($codeuf);
                 $executant->appendChild($uniteFo);
                 $acteCCAM->appendChild($executant);
                 for ($i = 0; isset($tabd[$i]); $i++) {
                     if ($tabd[$i]) {
                         eval('$modifs  -> appendChild ( $modifc' . $i . ' ) ;');
                     }
                 }
                 $acteCCAM->appendChild($modifs);
                 $acteCCAM->appendChild($codeANP);
                 $actesCCAM->appendChild($acteCCAM);
                 $raes = $actesCCAM;
                 break;
             case 'NGAP':
                 $actesNGAP = $dom->createElement('actesNGAP', '');
                 $acteNGAP = $dom->createElement('acteNGAP', '');
                 $acteNGAP->setAttribute('action', $action);
                 $acteNGAP->setAttribute('facturable', $factu);
                 $acteNGAP->setAttribute('executionNuit', $isNuit);
                 $acteNGAP->setAttribute('executionDimancheJourFerie', $isFerie);
                 $identn = $dom->createElement('identifiant', '');
                 $emettn = $dom->createElement('emetteur', $idact);
                 $lettreC = $dom->createElement('lettreCle', $ngapl);
                 $coeff = $dom->createElement('coefficient', $ngapc);
                 $exec = $dom->createElement('execute', '');
                 $dateen = $dom->createElement('date', $dtdem);
                 $heureen = $dom->createElement('heure', $hhdem);
                 $presta = $dom->createElement('prestataire', '');
                 $medecins = $dom->createElement('medecins', '');
                 $medE = $dom->createElement('medecin', '');
                 $numADELI = $dom->createElement('numeroAdeli', $adeli);
                 $identm = $dom->createElement('identification', '');
                 if ($options->getOption("HprimXML_CodeMedecin") == 'ADELI') {
                     $codeade = $adeli;
                 } else {
                     $codeade = 'x';
                 }
                 $codeia = $dom->createElement('code', $codeade);
                 $persom = $dom->createElement('personne', '');
                 $nomUm = $dom->createElement('nomUsuel', $nomumed);
                 $prenomsm = $dom->createElement('prenoms', '');
                 $prenomm = $dom->createElement('prenom', $prenmed);
                 $uniteFo = $dom->createElement('uniteFonctionnelle', '');
                 $codeuf = $dom->createElement('code', $ufr);
                 $identn->appendChild($emettn);
                 $acteNGAP->appendChild($identn);
                 $acteNGAP->appendChild($lettreC);
                 $acteNGAP->appendChild($coeff);
                 $exec->appendChild($dateen);
                 $exec->appendChild($heureen);
                 $acteNGAP->appendChild($exec);
                 $medE->appendChild($numADELI);
                 $identm->appendChild($codeia);
                 $medE->appendChild($identm);
                 $persom->appendChild($nomUm);
                 $prenomsm->appendChild($prenomm);
                 $persom->appendChild($prenomsm);
                 $medE->appendChild($persom);
                 $medecins->appendChild($medE);
                 $presta->appendChild($medecins);
                 $uniteFo->appendChild($codeuf);
                 $presta->appendChild($uniteFo);
                 $acteNGAP->appendChild($presta);
                 $actesNGAP->appendChild($acteNGAP);
                 $raes = $actesNGAP;
                 break;
         }
         $enteteM->appendChild($idMe);
         $enteteM->appendChild($dHProd);
         $agente->appendChild($codee);
         $agentse->appendChild($agente);
         $emett->appendChild($agentse);
         $enteteM->appendChild($emett);
         $agentd->appendChild($coded);
         $agentsd->appendChild($agentd);
         $desti->appendChild($agentsd);
         $enteteM->appendChild($desti);
         $evtsSA->appendChild($enteteM);
         $emettp->appendChild($valpe);
         $identp->appendChild($emettp);
         $recepp->appendChild($valpp);
         $identp->appendChild($recepp);
         $patient->appendChild($identp);
         $persP->appendChild($nomUs);
         $prenoms->appendChild($prenom);
         $persP->appendChild($prenoms);
         $dateNa->appendChild($dateN);
         $persP->appendChild($dateNa);
         $patient->appendChild($persP);
         $evtSA->appendChild($patient);
         $emettv->appendChild($valve);
         $identv->appendChild($emettv);
         $recepv->appendChild($valvp);
         $identv->appendChild($recepv);
         $venue->appendChild($identv);
         $evtSA->appendChild($venue);
         $debut->appendChild($dateID);
         $debut->appendChild($heureID);
         $interv->appendChild($debut);
         $identi->appendChild($emetti);
         $interv->appendChild($identi);
         $datePr->appendChild($dateP);
         $datePr->appendChild($heureP);
         $demande->appendChild($datePr);
         $uniteF->appendChild($code);
         $demande->appendChild($uniteF);
         $interv->appendChild($demande);
         $evtSA->appendChild($interv);
         $evtSA->appendChild($raes);
         $evtsSA->appendChild($evtSA);
         $dom->appendChild($evtsSA);
     } else {
         $dom = new DOMDocument('1.0', 'ISO-8859-1');
         $evtsPMSI = $dom->createElement('evenementsPMSI', '');
         $enteteM = $dom->createElement('enteteMessage', '');
         $idMe = $dom->createElement('identifiantMessage', $res['ID'][$i]);
         $dHProd = $dom->createElement('dateHeureProduction', $date->getDatetime());
         $emett = $dom->createElement('emetteur', '');
         $agentse = $dom->createElement('agents', '');
         $agente = $dom->createElement('agent', '');
         $agente->setAttribute('categorie', 'application');
         $codee = $dom->createElement('code', $options->getOption('HprimXML_Emet'));
         $desti = $dom->createElement('destinataire', '');
         $agentsd = $dom->createElement('agents', '');
         $agentd = $dom->createElement('agent', '');
         $agentd->setAttribute('categorie', 'application');
         $coded = $dom->createElement('code', $options->getOption('HprimXML_Dest'));
         $evtPMSI = $dom->createElement('evenementPMSI', '');
         $patient = $dom->createElement('patient', '');
         $identp = $dom->createElement('identifiant', '');
         $emettp = $dom->createElement('emetteur', '');
         $valpe = $dom->createElement('valeur', $idu);
         $recepp = $dom->createElement('recepteur', '');
         $valpp = $dom->createElement('valeur', $idu);
         $persP = $dom->createElement('personnePhysique', '');
         $persP->setAttribute('sexe', $sexe);
         $nomUs = $dom->createElement('nomUsuel', $nomu);
         $prenoms = $dom->createElement('prenoms', '');
         $prenom = $dom->createElement('prenom', $pren);
         $dateNa = $dom->createElement('dateNaissance', '');
         $dateN = $dom->createElement('date', $dtnai);
         $venue = $dom->createElement('venue', '');
         $identv = $dom->createElement('identifiant', '');
         $recepv = $dom->createElement('recepteur', '');
         $valeur = $dom->createElement('valeur', $idpass);
         $entreev = $dom->createElement('entree', '');
         $entreev->setAttribute('typeEntree', '');
         $dateHO = $dom->createElement('dateHeureOptionnelle', '');
         $dateho = $dom->createElement('date', $dtdem);
         $heureho = $dom->createElement('heure', $hhdem);
         $rss = $dom->createElement('rss', '');
         $rum = $dom->createElement('rum', '');
         $rum->setAttribute('action', $action);
         $identr = $dom->createElement('identifiant', '');
         $emettr = $dom->createElement('emetteur', $idpass);
         $dateAc = $dom->createElement('dateAction', $dtr);
         $actAc = $dom->createElement('acteurAction', '');
         $numAA = $dom->createElement('numeroAdeli', $adeli);
         $uniteMed = $dom->createElement('uniteMedicale', '');
         $codeU = $dom->createElement('code', $ufr);
         $entreeU = $dom->createElement('entree', '');
         $entreeU->setAttribute('mode', '');
         $entreeU->setAttribute('complementMode', '');
         $dateHOe = $dom->createElement('dateHeureOptionnelle', '');
         $datHoe = $dom->createElement('date', $dtr);
         $heurHoe = $dom->createElement('heure', $hhr);
         $diags = $dom->createElement('diagnostics', '');
         $diagPri = $dom->createElement('diagnosticPrincipal', '');
         $codeCim = $dom->createElement('codeCim10', $cdccam);
         $diagsSi = $dom->createElement('diagnosticsSignificatifs', '');
         $tabd = explode('~', $cddiags);
         for ($i = 0; isset($tabd[$i]); $i++) {
             eval('$diagSi' . $i . '    = $dom->createElement ( "diagnosticSignificatif", "" ) ;');
             eval('$codeCimS' . $i . '  = $dom->createElement ( "codeCim10", "' . $tabd[$i] . '" ) ;');
         }
         $enteteM->appendChild($idMe);
         $enteteM->appendChild($dHProd);
         $agente->appendChild($codee);
         $agentse->appendChild($agente);
         $emett->appendChild($agentse);
         $enteteM->appendChild($emett);
         $agentd->appendChild($coded);
         $agentsd->appendChild($agentd);
         $desti->appendChild($agentsd);
         $enteteM->appendChild($desti);
         $evtsPMSI->appendChild($enteteM);
         $emettp->appendChild($valpe);
         $identp->appendChild($emettp);
         //$valpp   = $dom->createElement ( 'valeur', $idu ) ;
         $recepp->appendChild($valpp);
         $identp->appendChild($recepp);
         $patient->appendChild($identp);
         $persP->appendChild($nomUs);
         $prenoms->appendChild($prenom);
         $persP->appendChild($prenoms);
         $dateNa->appendChild($dateN);
         $persP->appendChild($dateNa);
         $patient->appendChild($persP);
         $evtPMSI->appendChild($patient);
         $recepv->appendChild($valeur);
         $identv->appendChild($recepv);
         $venue->appendChild($identv);
         $dateHO->appendChild($dateho);
         $dateHO->appendChild($heureho);
         $entreev->appendChild($dateHO);
         $venue->appendChild($entreev);
         $evtPMSI->appendChild($venue);
         $identr->appendChild($emettr);
         $rum->appendChild($identr);
         $rum->appendChild($dateAc);
         $actAc->appendChild($numAA);
         $rum->appendChild($actAc);
         $uniteMed->appendChild($codeU);
         $dateHOe->appendChild($datHoe);
         $dateHOe->appendChild($heurHoe);
         $entreeU->appendChild($dateHOe);
         $uniteMed->appendChild($entreeU);
         $rum->appendChild($uniteMed);
         $diagPri->appendChild($codeCim);
         $diags->appendChild($diagPri);
         for ($i = 0; isset($tabd[$i]); $i++) {
             eval('$diagSi' . $i . '   -> appendChild ( $codeCimS' . $i . ' ) ;');
             eval('$diagsSi  -> appendChild ( $diagSi' . $i . ' ) ;');
         }
         $diags->appendChild($diagsSi);
         //$uniteMed -> appendChild ( $diags ) ;
         $rum->appendChild($diags);
         $rss->appendChild($rum);
         $evtPMSI->appendChild($rss);
         $evtsPMSI->appendChild($evtPMSI);
         $dom->appendChild($evtsPMSI);
     }
     if ($type == 'DIAG' and $options->getOption("HprimXML_noDIAG")) {
         // Création, écriture et fermeture du fichier.
         $this->af .= "- Génération du fichier '" . 'hprim/xml/' . $nomFic . '.xml' . ' -> ';
         $this->mbtv2Traited($num);
         $this->af .= '<font color="orange">Pas d\'envoi des DIAG</font><br/>';
     } else {
         // Création, écriture et fermeture du fichier.
         $this->af .= "- Génération du fichier '" . 'hprim/xml/' . $nomFic . '.xml' . ' -> ';
         $FIC = fopen('hprim/xml/' . $nomFic . '.xml', "w");
         $creation = fwrite($FIC, $dom->saveXML());
         fclose($FIC);
         if ($creation) {
             $FIC = fopen('hprim/xml/' . $nomFic . '.ok', "w");
             $creation2 = fwrite($FIC, '');
             fclose($FIC);
         }
         //eko ( $nomFic." -> ".$res['ID'][$i]." ($num)" ) ;
         if ($creation) {
             $this->mbtv2Traited($num);
             $this->af .= '<font color="green">OK</font><br/>';
         } else {
             global $errs;
             $errs->addErreur('Problème création pour ID=' . $num);
             $this->af .= '<font color="red">KO</font><br/>';
         }
     }
 }
Exemple #10
0
 function genInformationsPassages()
 {
     global $session;
     global $options;
     $uhcd = $options->getOption("FiltreSalleUHCD");
     $pedi = $options->getOption("FiltreSalleSup");
     $date = new clDate();
     $data = $date->getDate();
     $req = new clResultQuery();
     // Calcul des patients présents.
     $param['table'] = PPRESENTS;
     $param['cw'] = "";
     $res = $req->Execute("Fichier", "getPatients", $param, "ResultQuery");
     $nbPresents = $res['INDIC_SVC'][2];
     // Calcul des patients vus.
     if ($pedi) {
         $param['cw'] = "WHERE dt_examen!='0000-00-00 00:00:00' AND salle_examen NOT LIKE '{$uhcd}%' AND salle_examen NOT LIKE '{$pedi}%'";
     } else {
         $param['cw'] = "WHERE dt_examen!='0000-00-00 00:00:00' AND salle_examen NOT LIKE '{$uhcd}%'";
     }
     $res = $req->Execute("Fichier", "getPatients", $param, "ResultQuery");
     $nbVus = $res['INDIC_SVC'][2];
     // Calcul des patients UHCD.
     $param['cw'] = "WHERE salle_examen LIKE '{$uhcd}%'";
     $res = $req->Execute("Fichier", "getPatients", $param, "ResultQuery");
     $nbUHCD = $res['INDIC_SVC'][2];
     // Calcul des patients de pédiatrie
     if ($pedi) {
         $param['cw'] = "WHERE salle_examen LIKE '{$pedi}%'";
         $res = $req->Execute("Fichier", "getPatients", $param, "ResultQuery");
         $nbPEDI = $res['INDIC_SVC'][2];
     } else {
         $nbPEDI = 0;
     }
     // Calcul des patients non-vus.
     $nbNonVus = $nbPresents - $nbVus - $nbUHCD - $nbPEDI;
     // Calcul des patients attendus.
     $param['table'] = PATTENDUS;
     $param['cw'] = "";
     $res = $req->Execute("Fichier", "getPatients", $param, "ResultQuery");
     $nbAttendus = $res['INDIC_SVC'][2];
     // Calcul des patients sortis du jour.
     $param['table'] = PSORTIS;
     $param['cw'] = "WHERE dt_admission>'{$data}'";
     $res = $req->Execute("Fichier", "getPatients", $param, "ResultQuery");
     $nbSortis = $res['INDIC_SVC'][2];
     // Calcul des passages du jour.
     $param['table'] = PPRESENTS;
     $param['cw'] = "WHERE dt_admission>'{$data}'";
     $res = $req->Execute("Fichier", "getPatients", $param, "ResultQuery");
     $nbPresents2 = $res['INDIC_SVC'][2];
     //newfct ( gen_affiche_tableau, $res[INDIC_SVC] ) ;
     $nbPassages = $nbPresents2 + $nbSortis;
     // Chargement du template de modeliXe.
     $mod = new ModeliXe("InformationsPassages.mxt");
     $mod->SetModeliXe();
     // Affichage du template en fonction du type de liste et des options.
     //if ( $options -> getOption ( "Historique Patient" ) )
     if ($this->type == "Attendus" or $options->getOption("ModuleHistorique") != 'Oracle') {
         $mod->MxBloc("historique", "modify", " ");
     } else {
         //if ( isset ( $_POST['showHisto'] ) ) $_SESSION['showHisto'] = $_POST['showHisto'] ;
         //else $_POST['showHisto'] = $_SESSION['showHisto'] ;
         $mod->MxCheckerField("historique.histo", "checkbox", "showHisto", 1, $_POST['showHisto'] ? true : false);
     }
     if (!$options->getOption("AjoutManuel") and $this->type != "Attendus") {
         $mod->MxBloc("ajouter", "modify", " ");
     }
     // Préparation de l'affichage des informations avec gestion du pluriel et du singulier.
     $mod->MxText("nbPresents", $nbPresents);
     if ($pedi) {
         $pediatrie = ", <b>{$nbPEDI}</b> " . ($options->getOption('nomSalleSup') ? $options->getOption('nomSalleSup') : 'pédiatrie');
     } else {
         $pediatrie = '';
     }
     if ($nbPresents > 1) {
         $s = "s";
     } else {
         $s = '';
     }
     $mod->MxText("presents", "présent{$s}");
     $mod->MxText("nbVus", $nbVus);
     if ($nbVus > 1) {
         $s = "s";
     } else {
         $s = '';
     }
     $mod->MxText("vus", "vu{$s}{$pediatrie}");
     $mod->MxText("nbUHCD", $nbUHCD);
     if ($nbUHCD > 1) {
         $s = "s";
     } else {
         $s = '';
     }
     $mod->MxText("UHCD", "UHCD");
     $mod->MxText("nbNonVus", $nbNonVus);
     if ($nbNonVus > 1) {
         $s = "s";
     } else {
         $s = '';
     }
     $mod->MxText("nonVus", "non vu{$s}");
     $mod->MxText("nbAttendus", $nbAttendus);
     if ($nbAttendus > 1) {
         $s = "s";
     } else {
         $s = '';
     }
     $mod->MxText("attendus", "attendu{$s}");
     $mod->MxText("nbPassages", $nbPassages);
     if ($nbPassages > 1) {
         $s = "s";
     } else {
         $s = '';
     }
     $mod->MxText("passages", "entrant{$s}");
     // Récupération du code HTML généré par modeliXe.
     $mod->MxHidden("hidden", "navi=" . $session->genNavi($session->getNavi(0)));
     $this->af .= $mod->MxWrite("1");
 }
Exemple #11
0
 function defineParamCCAM()
 {
     $date = new clDate($this->patient->getDateNaissance());
     $this->paramCCAM[nomu] = $this->patient->getNom();
     $this->paramCCAM[pren] = $this->patient->getPrenom();
     $this->paramCCAM[sexe] = $this->patient->getSexe();
     $this->paramCCAM[dtnai] = $date->getDate("Y-m-d");
     $this->paramCCAM[idEvent] = $this->patient->getID();
     $this->paramCCAM[dateAdmission] = $this->patient->getDateAdmission();
     $this->paramCCAM[dateEvent] = $this->patient->getDateExamen();
     $this->paramCCAM[dtFinInterv] = $this->patient->getDateSortie();
     $this->paramCCAM[idu] = $this->patient->getIDU();
     $this->paramCCAM[ipp] = $this->patient->getILP();
     $this->paramCCAM[nsej] = $this->patient->getNSej();
     $this->paramCCAM[typeAdm] = $this->patient->getTypeAdmission();
     $this->paramCCAM[lieuInterv] = $this->patient->getSalle();
     $this->paramCCAM[matriculeIntervenant] = $this->patient->getMatriculeMedecin();
     $this->paramCCAM[typeIntervenant] = $this->patient->getTypeMedecin();
     $this->paramCCAM[numUFdem] = $this->patient->getUF();
     $this->paramCCAM[typeListe] = $this->type;
     $this->paramCCAM[nomIntervenant] = $this->patient->getMedecin();
     $this->paramCCAM[nomIDE] = $this->patient->getIDE();
     $this->paramCCAM[matriculeIDE] = $this->patient->getMatriculeIDE();
     $this->paramCCAM[manuel] = $this->patient->getManuel();
     $this->paramCCAM[uf] = $this->patient->getUF();
     $this->paramCCAM[etatUHCD] = $this->patient->getEtatUHCD();
     $this->paramCCAM[typeDest] = $this->patient->getTypeDestination();
     $this->paramUHCD[dateUHCD] = $this->patient->getDateUHCD();
     // Ajout de la destination souhaitée
     $this->paramCCAM[dest_attendue] = $this->patient->getDestinationAttendue();
 }
Exemple #12
0
 static function getAV($val, $type = '')
 {
     if ($type) {
         if ($val == '0000-00-00 00:00:00') {
             return VIDEDEFAUT;
         } else {
             $date = new clDate($val);
             return $date->getDate($type);
         }
     } else {
         if ($val) {
             return $val;
         } else {
             return VIDEDEFAUT;
         }
     }
 }
Exemple #13
0
 function genPat($idpatient)
 {
     global $session;
     global $options;
     // Si un idpatient est tranmis, alors on récupère ses informations
     // à l'aide de la classe Patient.
     if ($idpatient) {
         //concerne la recuperation d'une instance de la classe FoRmX gerant les actions
         if ($options->getOption("use_formx")) {
             global $actions;
             $actions = new clFoRmX($idpatient, 'NO_POST_THREAT');
         }
         $patient = new clPatient($idpatient, $session->getNavi(5));
         $pat[NMA] = $patient->getNom();
         $pat[PRE] = $patient->getPrenom();
         $pat[DNA] = $patient->getDateNaissance();
         $pat[SEX] = $patient->getSexe();
         $date = new clDate($patient->getDateAdmission());
         $pat[DTA] = $date->getDate($options->getOption("Documents Date"));
         $pat[HEA] = $date->getDate("H:i");
         $pat[MED] = $patient->getMedecin();
         $pat[DHS] = $patient->getDateSortie();
         $pat[DHE] = $patient->getDateExamen();
         // Sinon, nous renseignons avec les valeurs par défaut.
     } else {
         $pat[NMA] = "Bon";
         $pat[PRE] = "Jean";
         $date = new clDate("1981-12-24 22:30:00");
         $pat[DNA] = $date->getDate($options->getOption("Documents Date"));
         $pat[SEX] = "1";
         $date = new clDate();
         $pat[DTA] = $date->getDate($options->getOption("Documents Date"));
         $pat[HEA] = $date->getDate("H:i");
         $pat[MED] = "Testeur";
         $pat[DHS] = $date->getDate($options->getOption("Documents Date"));
         $pat[DHE] = $date->getDate($options->getOption("Documents Date"));
     }
     // On renvoie le tableau généré.
     return $pat;
 }
 function contenuBAL_Netforce($res, $type, $tabAsso = array(), $indicateurs = array(), $maxLC = array(), $maxCCAM = array())
 {
     // res contient tous les actes qu'on envoie à la facturation
     global $options;
     //eko($indicateurs);eko($maxLC);eko($maxCCAM);
     //Préparation du champs CONTENU - Initialisation avec les données patients
     $contenuDiag = "";
     $cptDiag = 1;
     $NGAPjoue = 0;
     unset($modificateursJoues);
     reset($res);
     // Variable pour les majo des actes infirmiers
     $Majoration_A_Effectuee = "Non";
     $idEvent = $this->idEvent;
     $dateEvent = $this->dateEvent;
     $dtFinInterv = $this->dtFinInterv;
     $clDateDeb = new clDate($dateEvent);
     $clDateFin = new clDate($dtFinInterv);
     // On va affecter dans une variable le nombre de CONS
     /*$Nombre_Cons = 0;
     $req=new clResultQuery;
     $paramRq["cw"] = "idEvent='".$idEvent."'";
     $res=$req->Execute("Fichier","CCAM_getNombreCONS",$paramRq,"ResultQuery");
     $Nombre_Cons = $res["nombre"][0];
     $tab_Cons[0] = 0;
     for ( $i=1 ; $i<=$Nombre_Cons ; $i++)
       $tab_Cons[$i] = 0;*/
     if (strcmp($options->getOption('ChoixHeureAffectationActes'), "Heure médiane") == 0) {
         $nbHeures = $clDateFin->getDifference($clDateDeb) / 3600;
         $dateMediane = $clDateDeb->addHours($nbHeures / 2);
         $dateMediane = $clDateDeb->getDate("Y-m-d H:i:s");
         $heureCalcule = $dateMediane;
     } elseif (strcmp($options->getOption('ChoixHeureAffectationActes'), "Heure d'admission") == 0) {
         $clDateAdm = new clDate($this->dtAdmission);
         $heureCalcule = $clDateAdm->getDate("Y-m-d H:i:s");
     } elseif (strcmp($options->getOption('ChoixHeureAffectationActes'), "Heure d'examen") == 0) {
         $clDateAdm = new clDate($this->dateEvent);
         $heureCalcule = $clDateAdm->getDate("Y-m-d H:i:s");
     } elseif (strcmp($options->getOption('ChoixHeureAffectationActes'), "Heure de sorti") == 0) {
         $clDateAdm = $clDateFin;
         $heureCalcule = $clDateAdm->getDate("Y-m-d H:i:s");
     }
     list($dateActe, $heureActe) = explode(" ", $heureCalcule);
     list($annee, $mois, $jour) = explode("-", $dateActe);
     substr($mois, 0, 1) == 0 ? $mois = substr($mois, 1, 1) : "";
     substr($jour, 0, 1) == 0 ? $jour = substr($jour, 1, 1) : "";
     list($heure, $minute, $seconde) = explode(":", $heureActe);
     substr($heure, 0, 1) == 0 ? $heure = substr($heure, 1, 1) : "";
     $dateActe = mktime(0, 0, 0, $mois, $jour, $annee);
     if ($heure >= 20 or $heure >= 6 and $heure < 8) {
         $majoCONS = "N";
     } elseif ($heure < 6) {
         $majoCONS = "NM";
     }
     //Gestion des dimanches
     if (date("w", $dateActe) == 0 and $majoCONS == "") {
         $majoCONS = "F";
     }
     //Gestion des jours fériés
     $dateFerie = new clDate($dateActe);
     if ($dateFerie->isHoliday() and $majoCONS == "") {
         $majoCONS = "F";
     }
     for ($i = 0; isset($res[identifiant][$i]); $i++) {
         $contenuInit = $res[numSejour][$i] . "|" . $res[idu][$i] . "|" . $res[nomu][$i] . "|" . $res[pren][$i] . "|" . $res[sexe][$i] . "|" . $res[dtnai][$i];
         $contenuInit3 = "|" . $res[numUFdem][$i];
         $dateDem = substr($res[dateDemande][$i], 0, 10);
         $heureDem = substr($res[dateDemande][$i], 11, 6) . "00";
         $dateReal = substr($res[dateEvent][$i], 0, 10);
         $heureReal = substr($res[dateEvent][$i], 11, 6) . "00";
         $contenuInit2 = "|" . $dateDem . "|" . $heureDem;
         // Cas des consultations spécialisées.
         if (substr($res[codeActe][$i], 0, 4) == "CONS") {
             $cotation = explode("+", $res[cotationNGAP][$i]);
             while (list($key, $val) = each($cotation)) {
                 // On gere le cas des actes du docteur qui prend en charge la patient
                 // Etape1
                 // Recupere l'indice de facturation
                 list($lc, $coeff) = explode(" ", $val);
                 if ($coeff == 0) {
                     $factu = "non";
                     $coeff = 1;
                 } else {
                     $factu = "oui";
                 }
                 // Etape2
                 // On colle le modificateur sur les consultes specialites
                 $majoNGAP = "";
                 //eko($lc);
                 if (substr($lc, 0, 1) == "C") {
                     // MAJO CS 1 CSC 1 CNPSY 1
                     $majoNGAP = $majoCONS;
                 }
                 $contenuSuite = "|{$type}|" . $res[identifiant][$i] . "|" . $res[codeActe][$i] . "||||{$dateReal}|{$heureReal}|" . $res[nomIntervenant][$i] . "||" . $res[matriculeIntervenant][$i] . "|" . $res[numUFexec][$i] . "||{$lc}|{$coeff}|{$factu}||{$majoNGAP}";
                 $contenu = $contenuInit . $contenuInit2 . $contenuInit3 . $contenuSuite;
                 //eko($contenu);
                 unset($param);
                 $param[DTINS] = date("Y-m-d H:i") . ":00";
                 $param[ETAT] = "P";
                 $param[DISCR] = $res[idEvent][$i];
                 $param[TYPE] = "NGAP";
                 $param[CONTENU] = $contenu;
                 $majrq = new clRequete(CCAM_BDD, "MBTV2", $param);
                 $sql = $majrq->addRecord();
             }
             unset($paramModif);
             $paramModif[validDefinitive] = "O";
             $requete = new clRequete(CCAM_BDD, "ccam_cotation_actes", $paramModif);
             $sql = $requete->updRecord("codeActe='" . $res[codeActe][$i] . "' and idDomaine=" . CCAM_IDDOMAINE . " and idEvent=" . $res[idEvent][$i]);
         } elseif (substr($res[codeActe][$i], 0, 4) == "NGAP") {
             // Il y aura deux intervenants le docteur et l'infirmier
             // Donc deux majorations possibles au maximun
             // La majoration forfaire collée pour l'un des actes ngap du docteur
             // La majoration forfaire collée pour l'un des actes ngap de l'infirmier
             $cotation = explode("+", $res[cotationNGAP][$i]);
             //eko ($cotation);
             while (list($key, $val) = each($cotation)) {
                 // On gere le cas des actes du docteur qui prend en charge la patient
                 // Etape1
                 // Recupere l'indice de facturation
                 list($lc, $coeff) = explode(" ", $val);
                 if ($coeff == 0) {
                     $factu = "non";
                     $coeff = 1;
                 } else {
                     $factu = "oui";
                 }
                 // Etape2
                 // On colle le modificateur sur le premier acte ngap du medecin la C ou CS
                 $majoNGAP = "";
                 //eko($lc);
                 if (substr($lc, 0, 1) == "C" and !$NGAPjoue) {
                     // C ou CS
                     $majoNGAP = $res[modificateurs][$i];
                     $NGAPjoue = 1;
                 }
                 /*else {
                         if ( !ereg ("AMI",$lc ) and 
                              !ereg ("AIS",$lc ) and
                              !ereg ("K",$lc   ) and
                              !ereg ("KC",$lc  ) and
                              !ereg ("PH",$lc  ) and
                 
                              !ereg ("MNO",$lc ) and // LISTE MAJO
                              !ereg ("MGE",$lc ) and
                              !ereg ("MCG",$lc ) and
                              !ereg ("MCC",$lc ) and
                              !ereg ("MPC",$lc ) and
                              !ereg ("MCS",$lc ) and
                              !ereg ("MPJ",$lc ) and
                              !ereg ("MNP",$lc ) and
                              !$NGAPjoue ) {
                           $majoNGAP = $res[modificateurs][$i];
                           $NGAPjoue = 1;
                         }
                       }*/
                 // On gere le cas des actes infirmiers
                 //LISTE MAJO pour les actes infirmiers
                 if (ereg("AMI", $lc) || ereg("AIS", $lc) || ereg("K", $lc) || ereg("KC", $lc) || ereg("PH", $lc) || ereg("INFN1", $lc) || ereg("INFN2", $lc) || ereg("MINFD", $lc)) {
                     if (strcmp($this->matriculeIDE, "") == 0) {
                         if (strcmp($options->getOption("codeAdeliInfirmier"), "") == 0) {
                             if (strcmp($this->matriculeIntervenant, "") == 0) {
                                 $matriculeIDE = $options->getOption("codeAdeliChefService");
                                 $nomIDE = $this->nomIntervenant;
                                 if (!$NGAPjoue) {
                                     $majoNGAP = $res[modificateurs][$i];
                                     $NGAPjoue = 1;
                                     $Majoration_A_Effectuee = "Oui";
                                 }
                             } else {
                                 $matriculeIDE = $this->matriculeIntervenant;
                                 $nomIDE = $this->nomIntervenant;
                                 if (!$NGAPjoue) {
                                     $majoNGAP = $res[modificateurs][$i];
                                     $NGAPjoue = 1;
                                     $Majoration_A_Effectuee = "Oui";
                                 }
                             }
                         } else {
                             $matriculeIDE = $options->getOption("codeAdeliInfirmier");
                             $nomIDE = $this->nomIDE;
                         }
                     } else {
                         $matriculeIDE = $this->matriculeIDE;
                         $nomIDE = $this->nomIDE;
                     }
                     //Premiere version avec la fonction gestionMajorationsActesInfirmiers
                     //                      et l'option EnvoiMajorationsActesInfirmiers
                     /* 
                     // Calcul des majo "NGAP" si on envoi pas les majo des "AMI" et "AIS"
                     if ( !$options->getOption ('EnvoiMajorationsActesInfirmiers') ){
                     //eko("majo ngap :".$lc);
                     // Concernant les actes infirmiers
                     // Soit on envoie les modificateurs pour les actes AMI et AIS
                     // Soit on envoie les majorations des actes AMI et AIS
                     // Mais pas les deux.
                     	  
                     //Gestion des modificateurs de nuit et jours fériés pour las actes NGAP infirmiers
                     //Gestion des tranches horaires pour las actes NGAP infirmiers
                     if (($heure>=20 or ($heure>=6 and $heure<8))) $majoNGAP="N";
                     elseif ($heure<6) $majoNGAP="NM";
                         
                     //Gestion des dimanches pour las actes NGAP infirmiers
                     if (date("w",$dateActe)==0 and $majoNGAP=="") $majoNGAP="F";
                         
                     //Gestion des jours fériés pour las actes NGAP infirmiers
                     $dateFerie=new clDate($dateActe);
                     if ($dateFerie->isHoliday() and $majoNGAP=="") $majoNGAP="F";
                       $modificateurs=$majoNGAP; 
                     }
                     */
                     // Nous avons l'heure
                     if (strcmp($Majoration_A_Effectuee, "Non") == 0) {
                         if ($heure >= 20 && $heure < 23 || $heure >= 5 && $heure < 8) {
                             $MajorationNGAP1 = "N";
                             $Majoration_A_Effectuee = "Oui";
                         }
                         if ($heure >= 23 || $heure < 5) {
                             $MajorationNGAP1 = "NM";
                             $Majoration_A_Effectuee = "Oui";
                         }
                         // pour les jours féries
                         $dateFerie = new clDate($dateActe);
                         if ($dateFerie->isHoliday() && strcmp($Majoration_A_Effectuee, "Non") == 0) {
                             $MajorationNGAP1 = "F";
                             $Majoration_A_Effectuee = "Oui";
                         }
                         // pour les dimanches
                         if (date("w", $dateActe) == 0 && strcmp($Majoration_A_Effectuee, "Non") == 0) {
                             $MajorationNGAP1 = "F";
                             $Majoration_A_Effectuee = "Oui";
                         }
                         // pour les samedis
                         if (date("w", $dateActe) == 6 && $heure >= 8 && strcmp($Majoration_A_Effectuee, "Non") == 0) {
                             $MajorationNGAP1 = "F";
                             $Majoration_A_Effectuee = "Oui";
                         }
                         $majoNGAP = $MajorationNGAP1;
                     }
                     $contenuSuite = "|{$type}|" . $res[identifiant][$i] . "|" . $res[codeActe][$i] . "||||{$dateReal}|{$heureReal}|" . $nomIDE . "||" . $matriculeIDE . "|" . $res[numUFexec][$i] . "||{$lc}|{$coeff}|{$factu}||{$majoNGAP}";
                     $contenu = $contenuInit . $contenuInit2 . $contenuInit3 . $contenuSuite;
                     //eko($contenu);
                     // Mise à jour de la table ccam_cotation_acte
                     if (strcmp($type, "creation") == 0) {
                         $paramModif["nomIntervenant"] = $nomIDE;
                         $paramModif["matriculeIntervenant"] = $matriculeIDE;
                         $requete = new clRequete(CCAM_BDD, "ccam_cotation_actes", $paramModif);
                         $sql = $requete->updRecord("idEvent=" . $this->idEvent . " and identifiant=" . $res["identifiant"][$i] . " and idDomaine=" . CCAM_IDDOMAINE);
                         //eko($res["identifiant"][$i]);
                     }
                 } else {
                     $contenuSuite = "|{$type}|" . $res[identifiant][$i] . "|" . $res[codeActe][$i] . "||||{$dateReal}|{$heureReal}|" . $res[nomIntervenant][$i] . "||" . $res[matriculeIntervenant][$i] . "|" . $res[numUFexec][$i] . "||{$lc}|{$coeff}|{$factu}||{$majoNGAP}";
                     $contenu = $contenuInit . $contenuInit2 . $contenuInit3 . $contenuSuite;
                     //eko($contenu);
                 }
                 unset($param);
                 $param[DTINS] = date("Y-m-d H:i") . ":00";
                 $param[ETAT] = "P";
                 $param[DISCR] = $res[idEvent][$i];
                 $param[TYPE] = "NGAP";
                 $param[CONTENU] = $contenu;
                 $majrq = new clRequete(CCAM_BDD, "MBTV2", $param);
                 $sql = $majrq->addRecord();
             }
             unset($paramModif);
             $paramModif[validDefinitive] = "O";
             $requete = new clRequete(CCAM_BDD, "ccam_cotation_actes", $paramModif);
             $sql = $requete->updRecord("codeActe='" . $res[codeActe][$i] . "' and idDomaine=" . CCAM_IDDOMAINE . " and idEvent=" . $res[idEvent][$i]);
         } else {
             if ($res[type][$i] == "ACTE") {
                 list($modificateurs1, $modificateurs4) = explode("|", $res[modificateurs][$i]);
                 if ($modificateurs1) {
                     $modificateursCotes = explode("~", $modificateurs1);
                     $modificateurs1 = "";
                     while (list($key, $val) = each($modificateursCotes)) {
                         if ($val == "F" or $val == "P" or $val == "S") {
                             if (!$modificateursJoues[$val] and !$indicateurs["C"] or $indicateurs["C"] and substr($res[codeActe][$i], 0, 3) == "DEQ") {
                                 $modificateurs1 .= "{$val}~";
                             }
                             //eko("indicC:$indicateurs[C]-val:$val-modif1:$modificateurs1-modifJoueAvant:".$modificateursJoues[$val]);
                         } else {
                             $modificateurs1 .= "{$val}~";
                         }
                         $modificateursJoues[$val] = 1;
                         //eko("val:$val-modif1:$modificateurs1-modifJoue:".$modificateursJoues[$val]);
                     }
                     /*eko("codeActe:".$res[codeActe][$i]);
                       eko($modificateursCotes);
                       eko("modif1Final:$modificateurs1");
                       eko($modificateursJoues);*/
                     if ($modificateurs1) {
                         $modificateurs1 = substr($modificateurs1, 0, -1);
                     }
                 }
                 $modificateurs4 = "";
                 list($intervenant1, $intervenant4) = explode("|", $res[matriculeIntervenant][$i]);
                 list($nomIntervenant1, $nomIntervenant4) = explode("|", $res[nomIntervenant][$i]);
                 $codeActe = $res[codeActe][$i];
                 $codeAssociation = $tabAsso[$codeActe];
                 $contenuSuite = "|{$type}|" . $res[identifiant][$i] . "|" . $res[codeActe][$i] . "||1|0|{$dateReal}|{$heureReal}|" . $nomIntervenant1 . "||" . $intervenant1 . "|" . $res[numUFexec][$i] . "|" . $modificateurs1 . "|||oui|{$codeAssociation}";
                 $contenu = $contenuInit . $contenuInit2 . $contenuInit3 . $contenuSuite;
                 unset($param);
                 $param[DTINS] = date("Y-m-d H:i") . ":00";
                 $param[ETAT] = "P";
                 $param[DISCR] = $res[idEvent][$i];
                 $param[TYPE] = "CCAM";
                 $param[CONTENU] = $contenu;
                 $majrq = new clRequete(CCAM_BDD, "MBTV2", $param);
                 $sql = $majrq->addRecord();
                 if ($res[codeActivite4][$i] == "O") {
                     /*//Recherche du nom de l'anesthésiste dans la liste
                     		unset($paramRq);
                     		$paramRq[code]=$intervenant4;
                     		$paramRq[idDomaine]=CCAM_IDDOMAINE;
                     		$paramRq[nomListe]="Anesthésie";
                     		$req=new clResultQuery;
                     		$res2=$req->Execute("Fichier","CCAM_getNomMed",$paramRq,"ResultQuery");
                     		//eko($res2[INDIC_SVC]);
                     		$nomMed4=$res2[nomItem][0];*/
                     $contenuSuite = "|{$type}|" . $res[identifiant][$i] . "|" . $res[codeActe][$i] . "||4|0|{$dateReal}|{$heureReal}|" . $nomIntervenant4 . "||" . $intervenant4 . "|" . $res[numUFexec][$i] . "|" . $modificateurs4 . "|||oui|{$codeAssociation}";
                     $contenu = $contenuInit . $contenuInit2 . $contenuInit3 . $contenuSuite;
                     unset($param);
                     $param[DTINS] = date("Y-m-d H:i:") . "00";
                     $param[ETAT] = "P";
                     $param[DISCR] = $res[idEvent][$i];
                     $param[TYPE] = "CCAM";
                     $param[CONTENU] = $contenu;
                     $majrq = new clRequete(CCAM_BDD, "MBTV2", $param);
                     $sql = $majrq->addRecord();
                 }
                 unset($paramModif);
                 $paramModif[validDefinitive] = "O";
                 $requete = new clRequete(CCAM_BDD, "ccam_cotation_actes", $paramModif);
                 $sql = $requete->updRecord("codeActe='" . $res[codeActe][$i] . "' and idDomaine=" . CCAM_IDDOMAINE . " and idEvent=" . $res[idEvent][$i]);
             } else {
                 $idEvent = $res[idEvent][$i];
                 /*$numSejour=$res[numSejour][$i];
                  	$idu=$res[idu][$i];
                  	$nomu=$res[nomu][$i];
                  	$pren=$res[pren][$i];
                  	$sexe=$res[sexe][$i];
                  	$dtnai=$res[dtnai][$i];
                  	$numUFdem=$res[numUFdem][$i];*/
                 $numUFexec = $res[numUFexec][$i];
                 $nomIntervenant = $res[nomIntervenant][$i];
                 $matriculeIntervenant = $res[matriculeIntervenant][$i];
                 $cptDiag == 1 ? $sep = "|" : ($sep = "~");
                 $contenuDiag .= $res[codeActe][$i] . $sep;
                 $cptDiag++;
             }
             // Cas du diagnostic
         }
         // Cas des actes CCAM
     }
     //for ($i=0;isset($res[identifiant][$i]);$i++)
     if ($contenuDiag) {
         /*unset($paramRq);
         	$paramRq[cw]="type='DIAG' and validDefinitive='O' and idEvent=".$res[idEvent][$i]." and idDomaine=".CCAM_IDDOMAINE;
         	$req=new clResultQuery;
         	$res=$req->Execute("Fichier","CCAM_getActesDiagsCotation",$paramRq,"ResultQuery");
         	//eko($res[INDIC_SVC]);
         	if ($res[INDIC_SVC][2]!=0) $type="modification";*/
         $cptDiag--;
         if ($cptDiag == 1) {
             $sepDiag = "|";
         } else {
             $sepDiag = "";
         }
         $contenuDiag = substr($contenuDiag, 0, -1);
         $contenuSuite = "|{$type}|" . $idEvent . "|" . $contenuDiag . $sepDiag . "|||{$dateReal}|{$heureReal}|" . $nomIntervenant . "||" . $matriculeIntervenant . "|" . $numUFexec . "||||";
         $contenu = $contenuInit . $contenuInit2 . $contenuInit3 . $contenuSuite;
         unset($param);
         $param[DTINS] = date("Y-m-d H:i:") . "00";
         $param[ETAT] = "P";
         $param[DISCR] = $idEvent;
         $param[TYPE] = "DIAG";
         $param[CONTENU] = $contenu;
         $majrq = new clRequete(CCAM_BDD, "MBTV2", $param);
         $sql = $majrq->addRecord();
         unset($paramModif);
         $paramModif[validDefinitive] = "O";
         $requete = new clRequete(CCAM_BDD, "ccam_cotation_actes", $paramModif);
         $sql = $requete->updRecord("type='DIAG' and idEvent=" . $idEvent . " and idDomaine=" . CCAM_IDDOMAINE);
     }
 }
Exemple #15
0
 function Documents()
 {
     global $session;
     if (($session->getNavi(3) == "newEdition" or $session->getNavi(3) == "genEdition") and $session->getDroit($this->type . "_Documents", "w") and (!$_POST['Annuler'] and !$_POST['Annuler_x'])) {
         $session->setLogSup('Lancement du module d\'impression');
         $af .= $this->imprDocuments();
     }
     // Récupération des passages précédents.
     $param[cw] = "WHERE idpatient='" . $this->patient->getID() . "' ORDER BY date DESC";
     $req = new clResultQuery();
     $res = $req->Execute("Fichier", "getDocumentsEdites", $param, "ResultQuery");
     // newfct ( gen_affiche_tableau, $res[INDIC_SVC] ) ;
     // Chargement du template ModeliXe.
     $mod = new ModeliXe("DocumentsEdites.mxt");
     $mod->SetModeliXe();
     if ($session->getDroit($this->type . "_Documents", "w") and !$this->export) {
         $mod->MxImage("imgNewEdition", URLIMGEDI, "Nouvelle édition de document");
         $mod->MxUrl("lienNewEdition", URLNAVI . $session->genNavi($session->getNavi(0), $session->getNavi(1), $session->getNavi(2), "newEdition"));
     }
     // Affichage des différents champs.
     if (!$res['INDIC_SVC'][2]) {
         $mod->MxBloc("nomscolonnes", "modify", " ");
         $mod->MxBloc("docs", "modify", " ");
     } else {
         $mod->MxBloc("aucundoc", "modify", " ");
         for ($i = 0; isset($res['idedition'][$i]); $i++) {
             $date = new clDate($res['date'][$i]);
             $mod->MxText("docs.date", $date->getDate('d/m/y H:i'));
             $mod->MxText("docs.nom", $res['nomedition'][$i]);
             if (ereg('^http://', $res['urledition'][$i])) {
                 $mod->MxText("docs.action", "<a href=\"" . $res['urledition'][$i] . "\" target=\"_new\" ><img src=\"" . URLIMGPDF . "\" alt=\"Voir\" /></a>");
             } else {
                 $mod->MxText("docs.action", "<a href=\"" . URLDOCSWEB . $res['urledition'][$i] . "\" target=\"_new\" ><img src=\"" . URLIMGPDF . "\" alt=\"Voir\" /></a>");
             }
             // Boucle sur le bloc hospitalisations.
             $mod->MxBloc("docs", "loop");
         }
     }
     // Récupération du code HTML généré.
     return $mod->MxWrite("1");
 }
Exemple #16
0
 function genCase($bubulle, $droit = 'form_non_spe')
 {
     global $tool;
     global $session;
     global $options;
     if ($this->droit) {
         $droit = $this->droit;
     }
     // Chargement du template ModeliXe.
     $mod = new ModeliXe("FX_blocActions.mxt");
     $mod->SetModeliXe();
     $padaction = true;
     //la en fait on ne genere pas un lien, qui serait la solution la plus simple, mais l'enjeu est de tout gerer (Post, variables de la classe...) lors de la création de la classe. On ne touche pas aux variables de navigation. Donc on va créer un champ qui - pour l'utilisateur - ressemble comme deux gouttes d'eau à un lien mais qui en fait est un appel javascript remplissant un champ caché par une variable donnée.
     $data = $this->ListFromIds(array('I', 'E', 'F'));
     if (!isset($data[id_instance][0])) {
         $mod->MxBloc('actions.frep', 'delete');
     }
     if ($session->getDroit($droit, 'r')) {
         for ($i = 0; isset($data[id_instance][$i]); $i++) {
             //chargement
             $newInstance = new clFoRmX_manip($this->ids, 'NO_POST_THREAT');
             $newInstance->loadInstance($data[id_instance][$i]);
             $xml = $newInstance->XMLCore;
             //test sur les droits
             if ($xml['access'] && !$session->getDroit(utf8_decode((string) $xml['access']), 'r')) {
                 continue;
             } elseif (!$xml['access'] && !$session->getDroit($this->droit, 'r')) {
                 continue;
             }
             $padaction = false;
             $libelle = $data[libelle][$i];
             $id = $data['idformx'][$i];
             //$creation = $tool->date_simple($data['dt_creation'][$i]) ;
             //$modif = $tool->date_simple($data['dt_modif'][$i]) ;
             $dateCr = new clDate($data['dt_creation'][$i]);
             $mod->MxText("actions.dateForm", $dateCr->getDate("d/m/y H:i"));
             if (!$libelle) {
                 $libelle = $data[idformx][$i];
             }
             switch ($data[status][$i]) {
                 case 'I':
                     $mod->MxText("actions.statut", "<span  style='color:red'>Initialisée</span>");
                     break;
                 case 'E':
                     $mod->MxText("actions.statut", "<span  style='color:orange'>En cours</span>");
                     break;
                 case 'F':
                     $mod->MxText("actions.statut", "<span  style='color:green'>Fini</span>");
                     break;
                 default:
                     $mod->MxText("actions.statut", "<span  style='color:blue'>Inconnu</span>");
                     break;
             }
             //$mod -> MxText ( "actions.creation", $creation ) ;
             //$mod -> MxText ( "actions.modif", $modif ) ;
             $mod->MxText("actions.libelle", $libelle);
             //eko($id);
             if (!eregi('Radio', $libelle) and !eregi('Bio', $libelle) and !eregi('Spécialisée', $libelle)) {
                 $mod->MxBloc('actions.frep', 'delete');
             } else {
                 if (eregi('Radio', $libelle)) {
                     $libelleC = 'radio';
                 } elseif (eregi('Bio', $libelle) && eregi('2009', $libelle)) {
                     $libelleC = 'bio2009';
                 } elseif (eregi('Bio', $libelle)) {
                     $libelleC = 'labo';
                 } else {
                     $libelleC = 'spe';
                 }
                 //$mod->Mxattribut("actions.frep.code","document.FoRmXcase.Formulaire2print.value = '".$libelleC."';document.FoRmXcase.submit();");
                 if (!$options->getOption("imprRadioRadio") && ereg('Radio', $libelle) && ereg('radio', $libelle) || !$options->getOption("imprRadioScanner") && ereg('Radio', $libelle) && ereg('scanner', $libelle) || !$options->getOption("imprRadioEcho") && ereg('Radio', $libelle) && ereg('échographie', $libelle)) {
                     $mod->MxBloc("actions.frep", "delete");
                 } else {
                     $mod->MxText("actions.frep.lienPrint", "<a href=\"" . URLNAVI . $session->genNavi($session->getNavi(0), $session->getNavi(1), $session->getNavi(2)) . "&Formulaire2print={$libelleC}&FormX_ext_goto_=" . $data[id_instance][$i] . "&act_print=1\" target=\"_blank\">");
                 }
             }
             $resume = addslashes(str_replace('"', "'", $newInstance->gen_resume()));
             $mod->Mxattribut("actions.codemouseover", "return overlib('" . $resume . "', CAPTION, '" . addslashes($data[libelle][$i]) . "');");
             unset($newInstance);
             $mod->Mxattribut("actions.codemouseout", "return nd()");
             $mod->Mxattribut("actions.code", "document.FoRmXcase.FormX_ext_goto_.value = '" . $data[id_instance][$i] . "';document.FoRmXcase.submit();");
             if ($session->getDroit($droit, 'd')) {
                 $mod->Mxattribut("actions.frem.code", "document.FoRmXcase.FormX_ext_goto_.value = 'RM" . $data[id_instance][$i] . "';document.FoRmXcase.submit();");
             } else {
                 $mod->MxBloc("actions.frem", "delete");
             }
             if ($session->getDroit($droit, 'a') && $data[status][$i] == 'F') {
                 $mod->Mxattribut("actions.fed.code", "document.FoRmXcase.FormX_ext_goto_.value = 'ED" . $data[id_instance][$i] . "';document.FoRmXcase.submit();");
             } else {
                 $mod->MxBloc("actions.fed", "delete");
             }
             $mod->MxBloc("actions", "loop");
         }
     }
     if ($padaction) {
         $mod->MxBloc("actions.frem", "delete");
         $mod->MxBloc("actions.fed", "delete");
         $mod->MxBloc("titre", "delete");
     } else {
         $mod->MxBloc("padetitre", "delete");
     }
     //le bouton de creation de nouvelle instance d'action
     if ($session->getDroit($droit, 'w')) {
         $mod->Mxattribut("nouveauF.newact_code", "document.FoRmXcase.FormX_ext_goto_.value = 'new';document.FoRmXcase.submit();");
         global $options;
         if ($options->getOption("racBonRadio")) {
             $mod->Mxattribut("racbonradio.newRadio", "document.FoRmXcase.FormX_to_open_.value = 'Formulaire_Radio';document.FoRmXcase.FoRmX_selValid.value = 'on';document.FoRmXcase.FoRmX_selValid_x.value = 'on';document.FoRmXcase.ids.value = '" . $this->ids . "';document.FoRmXcase.submit();");
         } else {
             $mod->MxBloc("racbonradio", "delete");
         }
         if ($options->getOption("racBonLabo")) {
             $options->getOption("bio2009") ? $f = "Formulaire_Bio2009" : ($f = "Formulaire_Bio");
             $mod->Mxattribut("racbonlabo.newLabo", "document.FoRmXcase.FormX_to_open_.value = '" . $f . "';document.FoRmXcase.FoRmX_selValid.value = 'on';document.FoRmXcase.FoRmX_selValid_x.value = 'on';document.FoRmXcase.ids.value = '" . $this->ids . "';document.FoRmXcase.submit();");
         } else {
             $mod->MxBloc("racbonlabo", "delete");
         }
         if ($options->getOption("racBonConSpe")) {
             $mod->Mxattribut("racboncs.newCS", "document.FoRmXcase.FormX_to_open_.value = 'Formulaire_Consultation_Specialisee';document.FoRmXcase.FoRmX_selValid.value = 'on';document.FoRmXcase.FoRmX_selValid_x.value = 'on';document.FoRmXcase.ids.value = '" . $this->ids . "';document.FoRmXcase.submit();");
         } else {
             $mod->MxBloc("racboncs", "delete");
         }
         if ($options->getOption("racBonRadioRadio")) {
             $mod->Mxattribut("racbonradioradio.newRadioRadio", "document.FoRmXcase.FormX_to_open_.value = 'Formulaire_Radio_Partie_Radio';document.FoRmXcase.FoRmX_selValid.value = 'on';document.FoRmXcase.FoRmX_selValid_x.value = 'on';document.FoRmXcase.ids.value = '" . $this->ids . "';document.FoRmXcase.submit();");
         } else {
             $mod->MxBloc("racbonradioradio", "delete");
         }
         if ($options->getOption("racBonRadioScanner")) {
             $mod->Mxattribut("racbonradioscanner.newRadioScanner", "document.FoRmXcase.FormX_to_open_.value = 'Formulaire_Radio_Partie_Scanner';document.FoRmXcase.FoRmX_selValid.value = 'on';document.FoRmXcase.FoRmX_selValid_x.value = 'on';document.FoRmXcase.ids.value = '" . $this->ids . "';document.FoRmXcase.submit();");
         } else {
             $mod->MxBloc("racbonradioscanner", "delete");
         }
         if ($options->getOption("racBonRadioEcho")) {
             $mod->Mxattribut("racbonradioecho.newRadioEcho", "document.FoRmXcase.FormX_to_open_.value = 'Formulaire_Radio_Partie_Echographies';document.FoRmXcase.FoRmX_selValid.value = 'on';document.FoRmXcase.FoRmX_selValid_x.value = 'on';document.FoRmXcase.ids.value = '" . $this->ids . "';document.FoRmXcase.submit();");
         } else {
             $mod->MxBloc("racbonradioecho", "delete");
         }
         if ($options->getOption("DoubleEtablissement")) {
             $mod->Mxattribut("transfert.newT", "document.FoRmXcase.FormX_to_open_.value = 'Formulaire_Transfert';document.FoRmXcase.FoRmX_selValid.value = 'on';document.FoRmXcase.FoRmX_selValid_x.value = 'on';document.FoRmXcase.ids.value = '" . $this->ids . "';document.FoRmXcase.submit();");
         } else {
             $mod->MxBloc("transfert", "delete");
         }
     } else {
         $mod->MxBloc("nouveauF", "delete");
     }
     if ($bubulle) {
         $bubulle->addBulle("nv_action", "Créez une nouvelle action sur ce patient");
     }
     // Variable de navigation.
     $mod->MxHidden("hidden", "navi=" . $session->genNavi($session->getNavi(0), $session->getNavi(1), $session->getNavi(2)));
     return $mod->MxWrite("1");
 }
Exemple #17
0
 function genPat($idpatient)
 {
     global $session;
     global $options;
     // Si un idpatient est tranmis, alors on récupère ses informations
     // à l'aide de la classe Patient.
     if ($idpatient) {
         $patient = new clPatient($idpatient, $session->getNavi(5));
         $pat[NMA] = $patient->getNom();
         $pat[PRE] = $patient->getPrenom();
         $pat[DNA] = $patient->getDateNaissance();
         $pat[SEX] = $patient->getSexe();
         $date = new clDate($patient->getDateAdmission());
         $dateA = new clDate();
         $dateE = new clDate($patient->getDateExamen());
         $dateS = new clDate($patient->getDateSortie());
         $pat[DTA] = $date->getDate($options->getOption("Documents Date"));
         $pat[HEA] = $date->getDate("H:i");
         $pat[MED] = $patient->getMedecin();
         $pat[DHS] = $dateS->getDate($options->getOption("Documents Date"));
         $pat[DHE] = $dateE->getDate($options->getOption("Documents Date"));
         $pat[IPP] = $patient->getILP();
         $pat[SEJ] = $patient->getNSej();
         $pat[ADD] = $patient->getAdresse();
         $pat[CPO] = $patient->getCodePostal();
         $pat[VIL] = $patient->getVille();
         $pat[IDE] = $patient->getIDE();
         $pat[SAL] = $patient->getSalle();
         $pat[CCM] = $patient->getCCMU();
         $pat[GRA] = $patient->getCodeGravite();
         $pat[UF] = $patient->getUF();
         $pat[CRE] = $patient->getCategorieRecours();
         $pat[MRE] = $patient->getMotifRecours();
         $pat[COR] = $patient->getCodeRecours();
         $pat[DES] = $patient->getDestinationSouhaitee();
         $pat[DAT] = $patient->getDestinationAttendue();
         $pat[CDI] = $patient->getCategorieDiagnostic();
         $pat[DIA] = $patient->getLibelleDiagnostic();
         $pat[DIC] = $patient->getCodeDiagnostic();
         // Sinon, nous renseignons avec les valeurs par défaut.
     } else {
         $pat[NMA] = "Bon";
         $pat[PRE] = "Jean";
         $date = new clDate("1981-12-24 22:30:00");
         $pat[DNA] = $date->getDate($options->getOption("Documents Date"));
         $pat[SEX] = "1";
         $date = new clDate();
         $pat[DTA] = $date->getDate($options->getOption("Documents Date"));
         $pat[HEA] = $date->getDate("H:i");
         $pat[MED] = "Testeur";
         $pat[DHS] = $date->getDate($options->getOption("Documents Date"));
         $pat[DHE] = $date->getDate($options->getOption("Documents Date"));
         $pat[IPP] = "777777777";
         $pat[SEJ] = "666666666";
         $pat[ADD] = "Rue des patients";
         $pat[CPO] = "83400";
         $pat[VIL] = "PatientsVille";
         $pat[IDE] = "IDE";
         $pat[SAL] = "Salle";
         $pat[CCM] = "II";
         $pat[GRA] = "2";
         $pat[UF] = "2701";
         $pat[CRE] = "Catégorie de recours";
         $pat[MRE] = "Motif de recours";
         $pat[COR] = "CodeRecours";
         $pat[DES] = "Destination souhaitée";
         $pat[DAT] = "Destination attendue";
         $pat[CDI] = "Catégorie de diagnotic";
         $pat[DIA] = "Diagnostic";
         $pat[DIC] = "Code diagnostic";
     }
     // On renvoie le tableau généré.
     return $pat;
 }
Exemple #18
0
 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);
 }
Exemple #19
0
 function genAffichage()
 {
     global $session;
     global $options;
     // Chargement du template ModeliXe.
     $outputLignes = array();
     $mod = new ModeliXe("ExportAPHM.mxt");
     $mod->SetModeliXe();
     // Initialisation des dates en fonction de l'état actuel :
     // A la date du jour si aucune valeur n'a été passée.
     if ($_POST['date2']) {
         $dt1 = new clDate($_POST['date1']);
         $dt2 = new clDate($_POST['date2']);
     } else {
         $dt2 = new clDate(date("Y-m-d 00:00:00"));
         $dt1 = new clDate(date("Y-m-d 00:00:00"));
         $dt1->addDays(-1);
     }
     // Retrait d'un jour à la date1 si date1 == date2
     if ($dt1->getTimestamp() == $dt2->getTimestamp()) {
         $dt1->addDays(-1);
     }
     // Inversion des dates 1 et 2 si la date 1 est supérieur à la date 2.
     if ($dt1->getTimestamp() > $dt2->getTimestamp()) {
         $tmp_dt3 = $dt1->getTimestamp();
         $tmp_dt4 = $dt2->getTimestamp();
         $dt1 = new clDate($tmp_dt4);
         $dt2 = new clDate($tmp_dt3);
     }
     // Calcul de la liste des valeurs possibles pour la date1.
     $old = '';
     for ($dt = new clDate(DATELANCEMENT); $dt->getTimestamp() < $dt2->getTimestamp(); $dt->addDays(1)) {
         if ($old == $dt->getDate("Y-m-d")) {
             $dt->addHours(5);
             $enleverHeure = 1;
         } else {
             $enleverHeure = 0;
         }
         $old = $dt->getDate("Y-m-d");
         $dttmp = new clDate($dt->getDate("Y-m-d"));
         $listeDates1[$dttmp->getTimestamp()] = $dt->getDate("d-m-Y");
         // if ( $enleverHeure ) $dt -> addHours ( -2 ) ;
         //eko ( $dttmp->getDatetime ( ).' -> '.$dt->getDatetime ( ) ) ;
     }
     if (!is_array($listeDates1)) {
         $listeDates1 = array();
     }
     // Calcul de la liste des valeurs possibles pour la date2.
     $dtj = new clDate(date("Y-m-d 00:00:00"));
     $dtj->addDays(1);
     $dt = new clDate(DATELANCEMENT);
     $old = '';
     for ($dt->addDays(1); $dt->getTimestamp() <= $dtj->getTimestamp(); $dt->addDays(1)) {
         if ($old == $dt->getDate("Y-m-d")) {
             $dt->addHours(5);
             $enleverHeure = 1;
         } else {
             $enleverHeure = 0;
         }
         $old = $dt->getDate("Y-m-d");
         $dttmp = new clDate($dt->getDate("Y-m-d"));
         $listeDates2[$dttmp->getTimestamp()] = $dt->getDate("d-m-Y");
         //if ( $enleverHeure ) $dt -> addHours ( -2 ) ;
         //eko ( $dttmp->getDatetime ( ).' -> '.$dt->getDatetime ( ) ) ;
     }
     if (!is_array($listeDates2)) {
         $listeDates2 = array();
     }
     // Fabrication des listes dans ModeliXe.
     $mod->MxSelect("date1", "date1", $dt1->getTimestamp(), $listeDates1);
     $mod->MxSelect("date2", "date2", $dt2->getTimestamp(), $listeDates2);
     // Si le bouton "Chercher" n'a pas été pressé, alors on n'affiche pas
     // le bloc contenant le lien vers l'export.
     if (!$_POST['Chercher'] and !$_POST['Chercher_x']) {
         $mod->MxBloc("donnees", "modify", " ");
     } else {
         // Affichage du lien vers le fichier contenant l'export.
         // Récupération de tous les patients entre les deux dates données.
         //Le calcul commence ici
         $req = new clResultQuery();
         $param[table] = PSORTIS;
         /*
         // En fonction du filtre sélectionné.
         switch ( $_POST['filtre'] ) {
         
         //case 'norm': $filter = "AND salle_examen NOT LIKE 'UHCD%'" ;  break ;
         ca//se 'uhcd': $filter = "AND salle_examen LIKE 'UHCD%'" ; break;
         
         case 'norm': $filter = "AND uf!=".$options->getOption('numUFUHCD')."" ;  break ;
         case 'uhcd': $filter = "AND uf=".$options->getOption('numUFUHCD')."" ; break;
         default: $filter = "" ; break ;
         }
         */
         if ($_POST['idpassage']) {
             $param['cw'] = " WHERE ilp = '" . $_POST['idpassage'] . "' ";
         } else {
             $param['cw'] = " WHERE  dt_admission BETWEEN '" . $dt1->getDatetime() . "' AND '" . $dt2->getDatetime() . "' ";
         }
         //$param[cw] = " p, logs_mails m WHERE p.idpatient=m.idpatient AND dt_naissance>'1932-01-01 00:00:00' AND `dt_mail` >= '2006-10-01 00:00:00' AND type_mail='Procédure dépistage maltraitance'" ;
         $res = $req->Execute("Fichier", "getPatients", $param, "ResultQuery");
         // newfct ( gen_affiche_tableau, $res[INDIC_SVC] ) ;
         //eko ( $res['INDIC_SVC'] ) ;
         if ($res[INDIC_SVC][2] > 1) {
             $s = "s";
         }
         // Affichage d'un résumé des résultats.
         $mod->MxText("donnees.nombre", $res[INDIC_SVC][2]);
         $mod->MxText("donnees.resultat", "entrée{$s} exportée{$s}");
         if (!$options->getOption('CCAMExterne')) {
             $jj = new clCCAMExportActesDiags(array('dateDebut' => $dt1->getDate('Y-m-d'), 'dateFin' => $dt2->getDate('Y-m-d')));
             $jj->initTableauActesDiag($res);
         }
         // Parcours des différents résultats.
         $tabResFinal = array();
         $nbMaxActesNGAP = 0;
         $indiceMaxNbActesNgap = 0;
         //PARCOURS
         for ($i = 0; isset($res[idpatient][$i]); $i++) {
             // Préparation des différentes dates pour affichage.
             $tabLigne = array();
             $naissance = new clDate($res[dt_naissance][$i]);
             $dtn = $naissance->getDate("d/m/Y");
             if ($res[dt_admission][$i] != '0000-00-00 00:00:00') {
                 $admission = new clDate($res[dt_admission][$i]);
                 $dta = $admission->getDate("d/m/Y");
                 $hma = $admission->getDate("H:i");
             } else {
                 $dta = '--';
                 $hma = '--';
             }
             if ($res[dt_examen][$i] != '0000-00-00 00:00:00') {
                 $examen = new clDate($res[dt_examen][$i]);
                 $dte = $examen->getDate("d/m/Y");
                 $hme = $examen->getDate("H:i");
             } else {
                 $dte = '--';
                 $hme = '--';
             }
             if ($res[dt_sortie][$i] != '0000-00-00 00:00:00') {
                 $sortie = new clDate($res[dt_sortie][$i]);
                 $dts = $sortie->getDate("d/m/Y");
                 $hms = $sortie->getDate("H:i");
             } else {
                 $dts = '--';
                 $hme = '--';
             }
             $uf = $res[uf][$i];
             $ufUHCD = $options->getOption('numUFUHCD');
             $ufUHCDrepere = $options->getOption('numUFUHCDrepere');
             if ($ufUHCD && ereg($ufUHCD, $uf) or $ufUHCDrepere && ereg($ufUHCDrepere, $uf)) {
                 $isuhcd = 1;
             } else {
                 $isuhcd = 0;
             }
             //le patient est uhcd mais pas dans une salle uhcd ?
             $isVirtualUhcd = false;
             if ($ufUHCD && !ereg($options->getOption('FiltreSalleUHCD'), $res['salle_examen'][$i])) {
                 $isVirtualUhcd = true;
                 $codeUm = $options->getOption('UMUHCDFictif');
             }
             // Préparation des différents champs de l'enregistrement parcouru.
             if ($res[ilp][$i]) {
                 $ilp = $res[ilp][$i];
             } else {
                 $ilp = "-";
             }
             if ($res[uf][$i]) {
                 $uf = $res[uf][$i];
             } else {
                 $uf = "-";
             }
             if ($res[dt_UHCD][$i] and $isuhcd) {
                 $dtUHCD = $res[dt_UHCD][$i];
             } else {
                 $dtUHCD = "0000-00-00 00:00:00";
             }
             $nbSecPassage = $sortie->getDifference($admission);
             $nbHeurepassage = floor($nbSecPassage / 3600);
             $nbMinpassage = floor(($nbSecPassage - $nbHeurepassage * 3600) / 60);
             $strDureePassage = ($nbHeurepassage > 9 ? '' : '0') . $nbHeurepassage . ':' . ($nbMinpassage > 9 ? '' : '0') . $nbMinpassage;
             $tabActesNGAP = clExportAphm::getTabListeCodesNGAP($i, $jj->tabExport);
             //eko($tabActesNGAP);
             $tabLigneCCAM['CODE_HOMON'] = '1';
             $tabLigneCCAM['NUMSEJ'] = $res['nsej'][$i] . 'B';
             $tabLigneCCAM['UM'] = $isVirtualUhcd ? $codeUm : '';
             $tabLigneCCAM['DATENT'] = $dta . ' ' . $hma;
             $tabLigneCCAM['DIAG_PPAL'] = $res['diagnostic_code'][$i];
             $tabLigneCCAM['DIAG_RELI'] = '';
             //eko(clExportAphm::getTabListeDiagsCCAM ($i,$jj -> tabExport));
             $tabLigneCCAM['DIAG_ASSO'] = implode(' ', clExportAphm::getTabListeDiagsCCAM($i, $jj->tabExport));
             $tabLigneCCAM['NPI'] = $res['ilp'][$i] . 'B';
             $tabLigneCCAM['DAT_EXAM'] = $dte . ' ' . $hme;
             $tabLigneCCAM['NOM_PATRO'] = $res['nom'][$i];
             $tabLigneCCAM['PRENOM'] = $res['prenom'][$i];
             $tabLigneCCAM['MARITAL'] = '';
             $tabLigneCCAM['SEXE'] = $res['sexe'][$i] == 'M' ? 'H' : 'F';
             $tabLigneCCAM['DDN'] = $dtn;
             $tabLigneCCAM['UF_EXEC'] = $res['uf'][$i];
             $tabLigneCCAM['ACTES'] = implode(' ', clExportAphm::getTabListeCodesCCAM($i, $jj->tabExport));
             $tabLigneCCAM['DEST_SOUHA'] = $res['dest_souhaitee'][$i];
             $tabLigneCCAM['DEST_ATTEN'] = $res['dest_attendue'][$i];
             $tabLigneCCAM['DUR_PASSAGE'] = $strDureePassage;
             $tabLigneCCAM['CODE_GRAV'] = $res['code_gravite'][$i];
             $tabLigneNGAP['NUMSEJ'] = $res['nsej'][$i] . 'B';
             $tabLigneNGAP['NOM_PATRO'] = $res['nom'][$i];
             $tabLigneNGAP['PRENOM'] = $res['prenom'][$i];
             $tabLigneNGAP['DAT_EXAM'] = $dte . ' ' . $hme;
             $tabLigneNGAP['NOM_MARITAL'] = '';
             $tabLigneNGAP['DATE_PASSAGE'] = $dte . ' ' . $hme;
             $tabLigneNGAP['MAJORATIONS_EVENTUELLES'] = clExportAphm::getMajoration($examen, $naissance);
             for ($cmptActe = 1; isset($tabActesNGAP[$cmptActe - 1]); $cmptActe++) {
                 $nbMaxActesNGAP = max($nbMaxActesNGAP, $cmptActe);
                 $tabLigneNGAP['ACTE_' . $cmptActe] = $tabActesNGAP[$cmptActe - 1];
             }
             $cmptActe--;
             if ($nbMaxActesNGAP == $cmptActe) {
                 $tabTypeNGAP = $tabLigneNGAP;
             }
             $outputLignesCCAM[] = implode("\t", $tabLigneCCAM);
             $outputLignesNGAP[] = implode("\t", $tabLigneNGAP);
         }
         $headerCCAM = array();
         if (isset($tabLigneCCAM)) {
             foreach ($tabLigneCCAM as $k => $v) {
                 $headerCCAM[] = $k;
             }
         }
         $headerNGAP = array();
         foreach ($tabTypeNGAP as $k => $v) {
             $headerNGAP[] = $k;
         }
         $ficCCAM = implode("\t", $headerCCAM) . "\n" . implode("\n", $outputLignesCCAM);
         $ficNGAP = implode("\t", $headerNGAP) . "\n" . implode("\n", $outputLignesNGAP);
         // Calcul du nom du fichier temporaire.
         $nomfic = "exportCCAM" . date("YmdHis") . ".xls";
         $nomfic2 = "exportNGAP" . date("YmdHis") . ".xls";
         // Création, écriture et fermeture du fichier.
         $FIC = fopen(URLCACHE . $nomfic, "w");
         $FIC2 = fopen(URLCACHE . $nomfic2, "w");
         fwrite($FIC, $ficCCAM);
         fwrite($FIC2, $ficNGAP);
         fclose($FIC);
         fclose($FIC2);
         // Calcul du lien vers ce fichier.
         $mod->MxUrl("donnees.lienExport", URLCACHEWEB . $nomfic);
         $mod->MxUrl("donnees.lienExport2", URLCACHEWEB . $nomfic2);
         // On purge le répertoire temporaire de tous les fichiers qui ont plus de deux heures.
         $poub = new clPoubelle(URLCACHE);
         $poub->purgerRepertoire("2");
         $isExport = true;
     }
     // Variable de navigation.
     $mod->MxHidden("hidden", "navi=" . $session->genNavi($session->getNavi(0), $session->getNavi(1), $session->getNavi(2)));
     // On retourne le code HTML généré par le template.
     $this->af .= $mod->MxWrite("1");
 }
Exemple #20
0
 static function makeDateToday()
 {
     $obDateTmp = new clDate();
     $obDateTmp = new clDate($obDateTmp->getDate());
     return $obDateTmp;
 }
Exemple #21
0
 function genAffichage($dt1, $dt2)
 {
     global $session;
     global $options;
     global $jj;
     global $titreCCMU;
     global $titreGEMSA;
     global $titreTraumato;
     $fic = '';
     // Chargement du template ModeliXe.
     $mod = new ModeliXe("Export.mxt");
     $mod->SetModeliXe();
     // Initialisation des dates en fonction de l'état actuel :
     // A la date du jour si aucune valeur n'a été passée.
     // Retrait d'un jour à la date1 si date1 == date2
     if ($dt1->getTimestamp() == $dt2->getTimestamp()) {
         $dt1->addDays(-1);
     }
     // Inversion des dates 1 et 2 si la date 1 est supérieur à la date 2.
     if ($dt1->getTimestamp() > $dt2->getTimestamp()) {
         $tmp_dt3 = $dt1->getTimestamp();
         $tmp_dt4 = $dt2->getTimestamp();
         $dt1 = new clDate($tmp_dt4);
         $dt2 = new clDate($tmp_dt3);
     }
     // Calcul de la liste des valeurs possibles pour la date1.
     $old = '';
     for ($dt = new clDate(DATELANCEMENT); $dt->getTimestamp() < $dt2->getTimestamp(); $dt->addDays(1)) {
         if ($old == $dt->getDate("Y-m-d")) {
             $dt->addHours(5);
             $enleverHeure = 1;
         } else {
             $enleverHeure = 0;
         }
         $old = $dt->getDate("Y-m-d");
         $dttmp = new clDate($dt->getDate("Y-m-d"));
         $listeDates1[$dttmp->getTimestamp()] = $dt->getDate("d-m-Y");
         // if ( $enleverHeure ) $dt -> addHours ( -2 ) ;
         //eko ( $dttmp->getDatetime ( ).' -> '.$dt->getDatetime ( ) ) ;
     }
     if (!is_array($listeDates1)) {
         $listeDates1 = array();
     }
     // Calcul de la liste des valeurs possibles pour la date2.
     $dtj = new clDate(date("Y-m-d 00:00:00"));
     $dtj->addDays(1);
     $dt = new clDate(DATELANCEMENT);
     $old = '';
     for ($dt->addDays(1); $dt->getTimestamp() <= $dtj->getTimestamp(); $dt->addDays(1)) {
         if ($old == $dt->getDate("Y-m-d")) {
             $dt->addHours(5);
             $enleverHeure = 1;
         } else {
             $enleverHeure = 0;
         }
         $old = $dt->getDate("Y-m-d");
         $dttmp = new clDate($dt->getDate("Y-m-d"));
         $listeDates2[$dttmp->getTimestamp()] = $dt->getDate("d-m-Y");
         //if ( $enleverHeure ) $dt -> addHours ( -2 ) ;
         //eko ( $dttmp->getDatetime ( ).' -> '.$dt->getDatetime ( ) ) ;
     }
     if (!is_array($listeDates2)) {
         $listeDates2 = array();
     }
     // Fabrication des listes dans ModeliXe.
     $mod->MxSelect("date1", "date1", $dt1->getTimestamp(), $listeDates1, '', '', "onChange=\"reload(this.form)\"");
     $mod->MxSelect("date2", "date2", $dt2->getTimestamp(), $listeDates2, '', '', "onChange=\"reload(this.form)\"");
     // Gestion du filtre avec des bouttons radio.
     if (!isset($_POST['filtre'])) {
         $_POST['filtre'] = "tous";
     }
     $mod->MxCheckerField("filtre1", "radio", "filtre", "tous", $_POST['filtre'] == "tous" ? true : false);
     $mod->MxCheckerField("filtre2", "radio", "filtre", "norm", $_POST['filtre'] == "norm" ? true : false);
     $mod->MxCheckerField("filtre3", "radio", "filtre", "uhcd", $_POST['filtre'] == "uhcd" ? true : false);
     // Si le bouton "Chercher" n'a pas été pressé, alors on n'affiche pas
     // le bloc contenant le lien vers l'export.
     if (!$_POST['Chercher'] and !$_POST['Chercher_x']) {
         $mod->MxBloc("donnees", "modify", " ");
     } else {
         // Affichage du lien vers le fichier contenant l'export.
         // Récupération de tous les patients entre les deux dates données.
         $req = new clResultQuery();
         $param[table] = PSORTIS;
         // En fonction du filtre sélectionné.
         switch ($_POST['filtre']) {
             /*
             case 'norm': $filter = "AND salle_examen NOT LIKE 'UHCD%'" ;  break ;
             case 'uhcd': $filter = "AND salle_examen LIKE 'UHCD%'" ; break;
             */
             case 'norm':
                 $filter = "AND uf!=" . $options->getOption('numUFUHCD') . "";
                 break;
             case 'uhcd':
                 $filter = "AND uf=" . $options->getOption('numUFUHCD') . "";
                 break;
             default:
                 $filter = "";
                 break;
         }
         $param[cw] = "WHERE dt_admission BETWEEN '" . $dt1->getDatetime() . "' AND '" . $dt2->getDatetime() . "' {$filter}";
         //$param[cw] = " p, logs_mails m WHERE p.idpatient=m.idpatient AND dt_naissance>'1932-01-01 00:00:00' AND `dt_mail` >= '2006-10-01 00:00:00' AND type_mail='Procédure dépistage maltraitance'" ;
         $res = $req->Execute("Fichier", "getPatients", $param, "ResultQuery");
         // newfct ( gen_affiche_tableau, $res[INDIC_SVC] ) ;
         //eko ( $res['INDIC_SVC'] ) ;
         if ($res[INDIC_SVC][2] > 1) {
             $s = "s";
         }
         // Affichage d'un résumé des résultats.
         $mod->MxText("donnees.nombre", $res[INDIC_SVC][2]);
         $mod->MxText("donnees.resultat", "entrée{$s} exportée{$s}");
         if (!$options->getOption('CCAMExterne')) {
             $jj = new clCCAMExportActesDiags(array('dateDebut' => $dt1->getDate('Y-m-d'), 'dateFin' => $dt2->getDate('Y-m-d')));
             $jj->initTableauActesDiag($res);
         }
         if ($options->getOption("GestionCCMU")) {
             if ($res[ccmu][$i]) {
                 $ccmu = "\t" . $res[ccmu][$i];
             } else {
                 $ccmu = "\t";
             }
             $titreCCMU = "\tCCMU";
         } else {
             $ccmu = '';
             $titreCCMU = '';
         }
         if ($options->getOption("GestionGEMSA")) {
             if ($res[gemsa][$i]) {
                 $gemsa = "\t" . $res[gemsa][$i];
             } else {
                 $gemsa = "\t";
             }
             $titreGEMSA = "\tGEMSA";
         } else {
             $gemsa = '';
             $titreGEMSA = '';
         }
         if ($options->getOption("GestionTraumato")) {
             if ($res[traumato][$i]) {
                 $traumato = "\t" . $res[traumato][$i];
             } else {
                 $traumato = "\t";
             }
             $titreTraumato = "\tTraumato";
         } else {
             $traumato = '';
             $titreTraumato = '';
         }
         // Parcours des différents résultats.
         for ($i = 0; isset($res[idpatient][$i]); $i++) {
             // Préparation des différentes dates pour affichage.
             set_time_limit(30);
             $naissance = new clDate($res[dt_naissance][$i]);
             $dtn = $naissance->getDate("d/m/Y");
             if ($res[dt_admission][$i] != '0000-00-00 00:00:00') {
                 $admission = new clDate($res[dt_admission][$i]);
                 $dta = $admission->getDate("d/m/Y");
                 $hma = $admission->getDate("H:i");
             } else {
                 $dta = '--';
                 $hma = '--';
             }
             if ($res[dt_examen][$i] != '0000-00-00 00:00:00') {
                 $examen = new clDate($res[dt_examen][$i]);
                 $dte = $examen->getDate("d/m/Y");
                 $hme = $examen->getDate("H:i");
             } else {
                 $dte = '--';
                 $hme = '--';
             }
             if ($res[dt_sortie][$i] != '0000-00-00 00:00:00') {
                 $sortie = new clDate($res[dt_sortie][$i]);
                 $dts = $sortie->getDate("d/m/Y");
                 $hms = $sortie->getDate("H:i");
             } else {
                 $dts = '--';
                 $hme = '--';
             }
             $uf = $res[uf][$i];
             $ufUHCD = $options->getOption('numUFUHCD');
             $ufUHCDrepere = $options->getOption('numUFUHCDrepere');
             if ($ufUHCD && ereg($ufUHCD, $uf) or $ufUHCDrepere && ereg($ufUHCDrepere, $uf)) {
                 $isuhcd = 1;
             } else {
                 $isuhcd = 0;
             }
             //eko($jj -> tabExport);
             // Préparation des différents champs de l'enregistrement parcouru.
             if ($res[ilp][$i]) {
                 $ilp = $res[ilp][$i];
             } else {
                 $ilp = "-";
             }
             if ($res[uf][$i]) {
                 $uf = $res[uf][$i];
             } else {
                 $uf = "-";
             }
             $dateUhcd = new clDate($res[dt_UHCD][$i]);
             if ($res[dt_UHCD][$i] and $isuhcd) {
                 $dtUHCD = $dateUhcd->getDate('Y-m-d H:i:00');
             } else {
                 $dtUHCD = "";
             }
             if ($res[nsej][$i]) {
                 $nsej = $res[nsej][$i];
             } else {
                 $nsej = "-";
             }
             if ($res[nom][$i]) {
                 $nom = $res[nom][$i];
             } else {
                 $nom = "-";
             }
             if ($res[prenom][$i]) {
                 $prenom = $res[prenom][$i];
             } else {
                 $prenom = "-";
             }
             if ($res[sexe][$i]) {
                 $sexe = $res[sexe][$i];
             } else {
                 $sexe = "-";
             }
             if ($res[adresse_cp][$i]) {
                 $adresse_cp = $res[adresse_cp][$i];
             } else {
                 $adresse_cp = "-";
             }
             if ($res[medecin_traitant][$i]) {
                 $medecin_traitant = preg_replace("/(\r\n|\n|\r)/", " ", $res[medecin_traitant][$i]);
             } else {
                 $medecin_traitant = "-";
             }
             if ($res[adresseur][$i]) {
                 $adresseur = $res[adresseur][$i];
             } else {
                 $adresseur = "-";
             }
             if ($res[mode_admission][$i]) {
                 $mode_admission = $res[mode_admission][$i];
             } else {
                 $mode_admission = "-";
             }
             if ($res[medecin_urgences][$i]) {
                 $medecin_urgences = $res[medecin_urgences][$i];
             } else {
                 $medecin_urgences = "-";
             }
             if ($res[salle_examen][$i]) {
                 $salle_examen = $res[salle_examen][$i];
             } else {
                 $salle_examen = "-";
             }
             if ($res[recours_categorie][$i]) {
                 $recours_categorie = $res[recours_categorie][$i];
             } else {
                 $recours_categorie = "-";
             }
             if ($res[motif_recours][$i]) {
                 $motif_recours = $res[motif_recours][$i];
             } else {
                 $motif_recours = "-";
             }
             if (!$options->getOption('getRecoursCIM10')) {
                 if ($res[recours_code][$i]) {
                     $recours_code = $res[recours_code][$i];
                 } else {
                     $recours_code = "-";
                 }
             } else {
                 if ($res[recours_code][$i]) {
                     $recours_code = strtr($res[recours_code][$i], '.', '');
                 } else {
                     $recours_code = "-";
                 }
             }
             if ($res[code_gravite][$i]) {
                 $code_gravite = $res[code_gravite][$i];
             } else {
                 $code_gravite = "-";
             }
             if ($res[dest_souhaitee][$i]) {
                 $dest_souhaitee = $res[dest_souhaitee][$i];
             } else {
                 $dest_souhaitee = "-";
             }
             if ($res[dest_attendue][$i]) {
                 $dest_attendue = ' ' . $res[dest_attendue][$i];
             } else {
                 $dest_attendue = "-";
             }
             if ($res[ide][$i]) {
                 $ide = $res[ide][$i];
             } else {
                 $ide = "-";
             }
             if ($res[motif_transfert][$i]) {
                 $motif_transfert = $res[motif_transfert][$i];
             } else {
                 $motif_transfert = "-";
             }
             if ($res[moyen_transport][$i]) {
                 $moyen_transport = $res[moyen_transport][$i];
             } else {
                 $moyen_transport = "-";
             }
             if ($res[type_destination][$i]) {
                 $type_destination = $res[type_destination][$i];
             } else {
                 $type_destination = "-";
             }
             if ($res[diagnostic_categorie][$i]) {
                 $diagnostic_categorie = $res[diagnostic_categorie][$i];
             } else {
                 $diagnostic_categorie = "-";
             }
             if ($res[diagnostic_libelle][$i]) {
                 $diagnostic_libelle = $res[diagnostic_libelle][$i];
             } else {
                 $diagnostic_libelle = "-";
             }
             if ($res[diagnostic_code][$i]) {
                 $diagnostic_code = $res[diagnostic_code][$i];
             } else {
                 $diagnostic_code = "-";
             }
             if ($options->getOption("GestionCCMU")) {
                 if ($res[ccmu][$i]) {
                     $ccmu = "\t" . $res[ccmu][$i];
                 } else {
                     $ccmu = "\t";
                 }
                 $titreCCMU = "\tCCMU";
             } else {
                 $ccmu = '';
                 $titreCCMU = '';
             }
             if ($options->getOption("GestionGEMSA")) {
                 if ($res[gemsa][$i]) {
                     $gemsa = "\t" . $res[gemsa][$i];
                 } else {
                     $gemsa = "\t";
                 }
                 $titreGEMSA = "\tGEMSA";
             } else {
                 $gemsa = '';
                 $titreGEMSA = '';
             }
             if ($options->getOption("GestionTraumato")) {
                 if ($res[traumato][$i]) {
                     $traumato = "\t" . $res[traumato][$i];
                 } else {
                     $traumato = "\t";
                 }
                 $titreTraumato = "\tTraumato";
             } else {
                 $traumato = '';
                 $titreTraumato = '';
             }
             // Génération de la ligne correspondant à l'enregistrement.
             //	$fic .= "$ilp\t$nsej\t$nom\t$prenom\t$dtn\t$sexe\t$adresse_cp\t$medecin_traitant\t$dta\t$hma\t$adresseur\t$mode_admission\t$dte\t$hme\t$medecin_urgences\t$salle_examen\t$recours_categorie\t$motif_recours\t$recours_code\t$code_gravite\t$dest_souhaitee\t$dest_attendue\t$dts\t$hms\t$ide\t$moyen_transport\t$motif_transfert\t$type_destination\t$diagnostic_categorie\t$diagnostic_libelle\t$diagnostic_code\n" ;
             if ($options->getOption('CCAMExterne')) {
                 $fic .= "{$ilp}\t{$nsej}\t{$uf}\t{$dtn}\t{$sexe}\t{$adresse_cp}\t{$medecin_traitant}\t{$dta}\t{$hma}\t{$mode_admission}\t{$dte}\t{$hme}\t{$medecin_urgences}\t{$salle_examen}\t{$recours_categorie}\t{$motif_recours}\t{$recours_code}\t{$code_gravite}\t{$dtUHCD}" . $gemsa . $ccmu . $traumato . "\t{$dest_souhaitee}\t{$dest_attendue}\t{$dts}\t{$hms}\t{$ide}\t{$moyen_transport}\t{$motif_transfert}\t{$type_destination}\t{$diagnostic_categorie}\t{$diagnostic_libelle}\t{$diagnostic_code}\n";
             } else {
                 $fic .= "{$ilp}\t{$nsej}\t{$uf}\t{$dtn}\t{$sexe}\t{$adresse_cp}\t{$medecin_traitant}\t{$dta}\t{$hma}\t{$mode_admission}\t{$dte}\t{$hme}\t{$medecin_urgences}\t{$salle_examen}\t{$recours_categorie}\t{$motif_recours}\t{$recours_code}\t{$code_gravite}\t{$dtUHCD}" . $gemsa . $ccmu . $traumato . "\t{$dest_souhaitee}\t{$dest_attendue}\t{$dts}\t{$hms}\t{$ide}\t{$moyen_transport}\t{$motif_transfert}\t{$type_destination}\t{$diagnostic_categorie}\t{$diagnostic_libelle}\t{$diagnostic_code}\t" . $jj->getActesDiagsPatient($i);
             }
         }
         // Calcul du lien vers ce fichier.
     }
     return $fic;
 }
Exemple #22
0
 function getDates($type = '')
 {
     // Initialisation des dates.
     $dateT = new clDate();
     $date = new clDate($dateT->getDate());
     if ((!$this->dateMin or !$this->dateMax) and !isset($this->setDate)) {
         $dateA = new clDate(isset($_GET['dateMin']) ? $_GET['dateMin'] : $date->getDate('Y-m-d'));
         $date->addDays(1);
         $dateB = new clDate(isset($_GET['dateMax']) ? $_GET['dateMax'] : $date->getDate('Y-m-d'));
         $date->addDays(-1);
         if ($dateA->getTimestamp() > $dateB->getTimestamp()) {
             $this->dateMax = $dateA->getTimestamp();
             $this->dateMin = $dateB->getTimestamp();
         } else {
             $this->dateMax = $dateB->getTimestamp();
             $this->dateMin = $dateA->getTimestamp();
         }
     }
     // Fabrication de la liste de dates de la dernière année.
     $date->addYears(-1);
     $oneYear = $date->getTimestamp();
     $date->addYears(1);
     $date->addDays(1);
     $today = $date->getTimestamp();
     for ($i = $today; $i >= $oneYear; $i -= 86400) {
         $date->setDate($i);
         $tab[$i] = $date->getDate("d-m-Y");
     }
     return is_array($tab) ? $tab : array();
 }
Exemple #23
0
 function gestSend()
 {
     global $session;
     // Chargement du template ModeliXe.
     $mod = new ModeliXe("rpuGestSend.html");
     $mod->SetModeliXe();
     $dateL = new clDate(DATELANCEMENT);
     $dateA = new clDate();
     $dateA->addDays(-1);
     $tabDate[$dateA->getDate('Y-m-d')] = 'Hier';
     $dateA->addDays(-1);
     for (; $dateL->getTimestamp() < $dateA->getTimestamp(); $dateA->addDays(-1)) {
         $tabDate[$dateA->getDate('Y-m-d')] = $dateA->getDateText();
     }
     $mod->MxSelect('listeDates', 'dateRPU', $_POST['dateRPU'], $tabDate, '', '', 'onChange="reload(this.form)"');
     $mod->MxHidden('hidden', 'navi=' . $session->genNavi($session->getNavi(0), $session->getNavi(1)));
     $this->genXMLH1N1($_POST['dateRPU']);
     $this->genXML($_POST['dateRPU']);
     $mod->MxText('xmlRpu', '<p>' . nl2br(htmlentities($this->xmlRpu)) . '</p>');
     $mod->MxText('message', $this->sendXML($_REQUEST['EnvoyerRPU']));
     $this->af .= $mod->MxWrite("1");
 }
Exemple #24
0
 function genListeTodo()
 {
     $req = new XhamRequete(BASEXHAM, 'todo', array(), MYSQL_HOST, MYSQL_USER, MYSQL_PASS);
     switch ($this->xham->getr('Categorie')) {
         case 'all':
             $filtreCates = "1=1";
             break;
         case '#':
             $filtreCates = "categorie=''";
             break;
         default:
             $filtreCates = "categorie='" . utf8_decode($this->xham->getr('Categorie')) . "'";
             break;
     }
     switch ($this->xham->getr('idUser')) {
         case 'all':
             $filtreUsers = "(idUser='******' OR public=1)";
             break;
         case '#':
             $filtreUsers = "idUser='******'";
             break;
         default:
             $filtreUsers = "idUser='******'idUser') . "'";
             break;
     }
     switch ($this->xham->getr('Mode')) {
         default:
             $filtreModes = "etat like '" . $this->xham->getr('Mode') . "'";
             break;
     }
     $filtre = " {$filtreCates} and {$filtreUsers} and {$filtreModes} ";
     $res = $req->getGen("{$filtre} order by etat, date", "resultQuery");
     $ras = $req->getGen("{$filtreCates} and {$filtreUsers} and etat='afaire' order by etat", "resultQuery", 'sum(importance) nbHeures');
     $rus = $req->getGen("{$filtreCates} and {$filtreUsers} and etat='encours' order by etat", "resultQuery", 'sum(importance) nbHeures');
     $ris = $req->getGen("{$filtreCates} and {$filtreUsers} and etat='termines' order by etat", "resultQuery", 'sum(importance) nbHeures');
     //print affTab ( $ras['INDIC_SVC'] ) ;
     $mod = new ModeliXe("TodoListe.html");
     $mod->SetModeliXe();
     $mod->MxText('recap', 'A faire : ' . ($ras['nbHeures'][0] ? $ras['nbHeures'][0] : '0') . 'h - En cours : ' . ($rus['nbHeures'][0] ? $rus['nbHeures'][0] : '0') . 'h - Terminés : ' . ($ris['nbHeures'][0] ? $ris['nbHeures'][0] : '0') . 'h');
     $date = new clDate();
     if ($res['INDIC_SVC'][2] == 0) {
         $mod->MxBloc('todo', 'replace', '<td colspan="6">Aucun todo.</td>');
     } else {
         for ($i = 0; isset($res['idTodo'][$i]); $i++) {
             $js = XhamTools::genAjax('onClick', 'refreshTodo', 'ajax=changeStatus&amp;idTodo=' . $res['idTodo'][$i] . '&amp;navi=' . $this->xham->genNaviFull());
             /*
             if ( $res['etat'][$i] != 'termines' ) $mod -> MxText ( 'todo.js', $js ) ;
             else $mod -> MxText ( 'todo.js', '' ) ;
             */
             $mod->MxText('todo.js', $js);
             $mod->MxText('todo.class', $res['etat'][$i]);
             $mod->MxText('todo.idUser', $res['idUser'][$i]);
             $mod->MxText('todo.categorie', $res['categorie'][$i]);
             $mod->MxText('todo.nom', $res['nom'][$i]);
             $date->setDate($res['date'][$i]);
             $mod->MxText('todo.date', $date->getDate('Y-m-d H:i:s'));
             if ($res['dateLimite'][$i] != '0000-00-00 00:00:00') {
                 $date->setDate($res['dateLimite'][$i]);
                 $mod->MxText('todo.dateLimite', $date->getDate('Y-m-d'));
             } else {
                 $mod->MxText('todo.dateLimite', VIDEDEFAUT);
             }
             $mod->MxText('todo.importance', $res['importance'][$i]);
             $mod->MxBloc('todo', 'loop');
         }
     }
     $af = $mod->MxWrite("1");
     if ($this->ajax) {
         $this->af .= $af;
     } else {
         return $af;
     }
 }
Exemple #25
0
 function genGraphs($mod, $dateG = '', $nbDays = '7')
 {
     $param['cs'] = "*";
     $req = new clResultQuery();
     $date = new clDate($dateG);
     $dateT = new clDate($date->getDate("Y-m-d 00:00:00"));
     $dateT->addDays(-1);
     $dateH = new clDate($dateT->getDate("Y-m-d"));
     $dateT->addDays(1);
     $dateT->addDays(-$nbDays);
     $dateS = new clDate($dateT->getDate("Y-m-d"));
     $dateT->addDays($nbDays);
     $j = 0;
     for ($dateDeb = $dateH; $dateDeb->getTimestamp() < $dateT->getTimestamp();) {
         $heureA = $dateDeb->getHours();
         $dateA = $dateDeb->getDatetime();
         $dateDeb->addHours(1);
         $param['cs'] = "*";
         $param['cw'] = "WHERE iduser LIKE '" . $_POST['choix'] . "' AND ( date BETWEEN '" . $dateA . "' AND '" . $dateDeb->getDatetime() . "' ) AND idapplication=" . IDAPPLICATION . " AND type='navi'";
         $res = $req->Execute("Fichier", "getLogs", $param, "ResultQuery");
         $tab[0][0][] = $res['INDIC_SVC'][2];
         //eko ( $res['INDIC_SVC'] ) ;
         $tab[1][0][$j] = 0;
         $tab[1][1][$j] = 0;
         //      $tab[0][1][$j] = 0 ;
         $titres[1][] = $heureA . "h - " . $dateDeb->getHours() . "h";
         for ($i = 0; isset($res['idlog'][$i]); $i++) {
             $tab[1][0][$j] += $res['tempsPage'][$i];
             $tab[1][1][$j] += $res['tempsSQL'][$i];
             //$tab[0][1][$j] += $res['nombreSQL'][$i] ;
         }
         if ($res['INDIC_SVC'][2]) {
             $tab[1][0][$j] = $tab[1][0][$j] / $res['INDIC_SVC'][2];
             $tab[1][1][$j] = $tab[1][1][$j] / $res['INDIC_SVC'][2];
         }
         $j++;
     }
     $dateH->addDays(-1);
     $jpG = new clJpGraph();
     $jpG->arh_graph("Nombre de clics et requetes par heure (" . $_POST['choix'] . ") - " . $dateH->getDateText(), '', '', $tab[0], array('Clics', 'Requetes'), array('#DDCC55', '#CC3355'), 800, 500, "image1.png", $titres[1], "45", '#C8DE3D', "groupbar", '#FFFFFF', "%d");
     $jpG->arh_graph("Temps moyen par heure (" . $_POST['choix'] . ") - " . $dateH->getDateText(), '', '', $tab[1], array('Temps total', 'Temps SQL'), array('#DDCC55', '#CC3355'), 800, 400, "image2.png", $titres[1], "45", '#C8DE3D', "groupbar", '#FFFFFF', "%2.2f");
     $j = 0;
     for ($dateDeb = $dateS; $dateDeb->getTimestamp() < $dateT->getTimestamp();) {
         $jourA = $dateDeb->getDayWeek();
         $dateA = $dateDeb->getDatetime();
         $dateDeb->addDays(1);
         $param['cs'] = "*";
         $param['cw'] = "WHERE iduser LIKE '" . $_POST['choix'] . "' AND ( date BETWEEN '" . $dateA . "' AND '" . $dateDeb->getDatetime() . "' ) AND idapplication=" . IDAPPLICATION . " AND type='navi'";
         $res = $req->Execute("Fichier", "getLogs", $param, "ResultQuery");
         $tab[2][0][] = $res['INDIC_SVC'][2];
         $titres[2][] = $jourA;
         /*
         //eko ( $res['INDIC_SVC'] ) ;
         $tab[3][0][$j] = 0 ;
         $tab[3][1][$j] = 0 ;
         //$tab[2][1][$j] = 0 ;
         $titres[2][] = $jourA ;
         for ( $i = 0 ; isset ( $res['idlog'][$i] ) ; $i++ ) {
         	$tab[3][0][$j] += $res['tempsPage'][$i] ;
         	$tab[3][1][$j] += $res['tempsSQL'][$i] ;
         	//$tab[2][1][$j] += $res['nombreSQL'][$i] ;
         }
         if ( $res['INDIC_SVC'][2] ) {
         	$tab[3][0][$j] = $tab[3][0][$j] / $res['INDIC_SVC'][2] ;
         	$tab[3][1][$j] = $tab[3][1][$j] / $res['INDIC_SVC'][2] ;
         }
         $j++ ;
         */
     }
     // eko ( $tab[3][1] ) ;
     $jpG->arh_graph("Nombre de clics et requetes par jour (" . $_POST['choix'] . ") ", '', '', $tab[2], array('Clics', 'Requetes'), array('#DDCC55', '#CC3355'), 800, 500, "image3.png", $titres[2], "45", '#C8DE3D', "groupbar", '#FFFFFF', "%d");
     //$jpG->arh_graph( "Temps moyen par jour - ".$date->getDateText ( ),'','', $tab[3], array ( 'Temps total', 'Temps SQL' ), array ( '#DDCC55', '#CC3355' ), 800, 400, "image4.png", $titres[2], "45", '#C8DE3D', "groupbar", '#FFFFFF', "%2.2f" ) ;
 }
Exemple #26
0
 function genSalon()
 {
     global $options;
     # paramètres
     $mg = 5;
     // Marge de gauche =>  initial 17
     $mh = 4;
     // Marge du haut =>  initial 9
     $md = 15;
     // Marge de droite
     $mb = 9;
     // Marge du bas
     $largeur_etiquette = 42;
     // largeur_etiquette =>  initial 60
     $espace_etiquettes = 13;
     // =>  initial 7
     $nb_ligne_etiquettes = 4;
     $nb_etiquette_ligne = 5;
     // Préparation du document PDF.
     $pdf = new FPDF('L', 'mm', 'A4');
     $pdf->Open();
     $pdf->SetLeftMargin($mg);
     $pdf->SetTopMargin($mh);
     $pdf->SetAutoPageBreak(1, 0);
     $pdf->AddPage();
     // Gestion des fonts
     $pdf->AddFont('code39', '', 'IDAutomation_Code_39.php');
     $pdf->SetFont('times', '', 12);
     // Préparation des informations.
     $nom = strtoupper($this->patient->getNom());
     $prenom = strtoupper($this->patient->getPrenom());
     $date = new clDate($this->patient->getDateNaissance());
     $duree = new clDuree();
     $dateN = $date->getDate("d/m/Y");
     $dateN .= " (" . $duree->getAge($date->getTimestamp()) . ")";
     if ($this->patient->getSexe() == "F") {
         $sexe = "Féminin";
         $e = "e";
     } elseif ($this->patient->getSexe() == "M") {
         $sexe = "Masculin";
         $e = "";
     } else {
         $sexe = "Indéterminé";
         $e = "";
     }
     $date->setDate($this->patient->getDateAdmission());
     $le = $date->getDate("d/m/Y H:i");
     $led = $date->getDate("d/m/Y");
     $leh = $date->getDate("H:i");
     $ipp = $this->patient->getILP();
     $nsej = $this->patient->getNSej();
     $uf = $this->patient->getUF();
     $sexe = $this->patient->getSexe();
     if ($uf == $options->getOption('numUFexec')) {
         $loc = '(URGENCES)';
     } else {
         $loc = '(UHCD)';
     }
     $tel = $this->patient->getTel();
     $adresse = $this->patient->getAdresse();
     $cpv = $this->patient->getCodePostal() . " " . $this->patient->getVille();
     $prev = $this->patient->getPrevenir();
     $medt = $this->patient->getMedecinTraitant();
     $modet = $this->patient->getMedecinTraitant();
     $adresseur = $this->patient->getAdresseur();
     $modeadm = $this->patient->getModeAdmission();
     // Grosse étiquette
     $pdf->Cell(20, 4, "", 0, 0, L);
     // Ligne 1
     $pdf->Cell(4 * $largeur_etiquette, 5, "CENTRE HOSPITALIER DE CARPENTRAS", 0, 1, L);
     // Ligne 2
     $pdf->Cell(11, 5, "Date : ", 0, 0, L);
     $pdf->SetFont('times', 'B', 12);
     $pdf->Cell(23, 5, "{$led}", 0, 0, L);
     $pdf->SetFont('times', '', 12);
     $pdf->Cell(13, 5, "Heure : ", 0, 0, L);
     $pdf->SetFont('times', 'B', 12);
     $pdf->Cell(27, 5, "{$leh}", 0, 0, L);
     $pdf->SetFont('times', '', 12);
     $pdf->Cell(21, 5, "N° Patient : ", 0, 0, L);
     $pdf->SetFont('times', 'B', 12);
     $pdf->Cell(22, 5, "{$ipp}", 0, 0, L);
     $pdf->SetFont('times', '', 12);
     $pdf->Cell(18, 5, "N° URG : ", 0, 0, L);
     $pdf->SetFont('times', 'B', 12);
     $pdf->Cell(22, 5, "{$nsej}", 0, 0, L);
     $pdf->SetFont('times', '', 12);
     $pdf->Cell(18, 5, "N° ARCHIVE : ", 0, 1, L);
     // Ligne 3
     $pdf->Cell(11, 5, "Nom : ", 0, 0, L);
     $pdf->SetFont('times', 'B', 12);
     $pdf->Cell(63, 5, strtoupper($nom), 0, 0, L);
     $pdf->SetFont('times', '', 12);
     $pdf->Cell(13, 5, "Nom naissance : ", 0, 1, L);
     // Ligne 4
     $pdf->Cell(16, 5, "Prénom : ", 0, 0, L);
     $pdf->SetFont('times', 'B', 12);
     $pdf->Cell(58, 5, ucfirst(strtolower($prenom)), 0, 0, L);
     $pdf->SetFont('times', '', 12);
     $pdf->Cell(12, 5, "Sexe : ", 0, 0, L);
     $pdf->SetFont('times', 'B', 12);
     $pdf->Cell(29, 5, "{$sexe}", 0, 0, L);
     $pdf->SetFont('times', '', 12);
     $pdf->Cell(12, 5, "N° S.S : ", 0, 1, L);
     // Ligne 5
     $pdf->Cell(17, 5, "Né(e) le : ", 0, 0, L);
     $pdf->SetFont('times', 'B', 12);
     $pdf->Cell(57, 5, $dateN, 0, 0, L);
     $pdf->SetFont('times', '', 12);
     $pdf->Cell(12, 5, "A : ", 0, 1, L);
     // Ligne 6
     $pdf->Cell(17, 4, "Adresse : ", 0, 0, L);
     $pdf->SetFont('times', 'B', 12);
     $pdf->Cell(57, 4, $adresse, 0, 1, L);
     $pdf->SetFont('times', '', 12);
     // Ligne 5
     $pdf->Cell(115, 4, "", 0, 0, L);
     $pdf->SetFont('times', '', 12);
     $pdf->Cell(9, 4, "Tél : ", 0, 0, L);
     $pdf->SetFont('times', 'B', 12);
     $pdf->Cell(20, 4, $tel, 0, 1, L);
     $pdf->SetFont('times', '', 12);
     // Ligne 6
     $pdf->Cell(17, 4, "", 0, 0, L);
     $pdf->SetFont('times', 'B', 12);
     $pdf->Cell(98, 4, $cpv, 0, 0, L);
     $pdf->SetFont('times', '', 12);
     $pdf->Cell(9, 4, "Pays : ", 0, 1, L);
     // Ligne 7
     $pdf->Cell(17, 5, "Nom du tuteur : ", 0, 1, L);
     // Ligne 8
     $pdf->Cell(37, 5, "Personne à prévenir : ", 0, 0, L);
     $pdf->SetFont('times', 'B', 12);
     $pdf->Cell(98, 5, $prev, 0, 1, L);
     $pdf->SetFont('times', '', 12);
     // Ligne 9
     $pdf->Cell(23, 5, "Adressé par : ", 0, 0, L);
     $pdf->SetFont('times', 'B', 12);
     $pdf->Cell(51, 5, $adresseur, 0, 0, L);
     $pdf->SetFont('times', '', 12);
     $pdf->Cell(30, 5, "Médecin traitant : ", 0, 0, L);
     $pdf->SetFont('times', 'B', 12);
     $pdf->Cell(98, 5, $medt, 0, 1, L);
     $pdf->SetFont('times', '', 12);
     // Ligne 10
     $pdf->Cell(34, 5, "Mode de transport : ", 0, 0, L);
     $pdf->SetFont('times', 'B', 12);
     $pdf->Cell(98, 5, $modeadm, 0, 1, L);
     $pdf->SetFont('times', '', 12);
     // Saut
     $pdf->Cell(1, 5.8, "", 0, 1);
     $pdf->SetFont('times', '', 9);
     for ($i = 1; $i <= $nb_ligne_etiquettes; $i++) {
         // Entrée
         $pdf->Cell($largeur_etiquette, 4, "Entrée du : {$led} à {$leh}", 0, 0, L);
         $pdf->Cell($espace_etiquettes, 4, "", 0, 0, L);
         $pdf->Cell($largeur_etiquette, 4, "Entrée du : {$led} à {$leh}", 0, 0, L);
         $pdf->Cell($espace_etiquettes, 4, "", 0, 0, L);
         $pdf->Cell($largeur_etiquette, 4, "Entrée du : {$led} à {$leh}", 0, 0, L);
         $pdf->Cell($espace_etiquettes, 4, "", 0, 0, L);
         $pdf->Cell($largeur_etiquette, 4, "Entrée du : {$led} à {$leh}", 0, 0, L);
         $pdf->Cell($espace_etiquettes, 4, "", 0, 0, L);
         $pdf->Cell($largeur_etiquette, 4, "Entrée du : {$led} à {$leh}", 0, 1, L);
         // D/Nais
         $pdf->Cell($largeur_etiquette, 4, "D/nais : {$dateN}", 0, 0, L);
         $pdf->Cell($espace_etiquettes, 4, "", 0, 0, L);
         $pdf->Cell($largeur_etiquette, 4, "D/nais : {$dateN}", 0, 0, L);
         $pdf->Cell($espace_etiquettes, 4, "", 0, 0, L);
         $pdf->Cell($largeur_etiquette, 4, "D/nais : {$dateN}", 0, 0, L);
         $pdf->Cell($espace_etiquettes, 4, "", 0, 0, L);
         $pdf->Cell($largeur_etiquette, 4, "D/nais : {$dateN}", 0, 0, L);
         $pdf->Cell($espace_etiquettes, 4, "", 0, 0, L);
         $pdf->Cell($largeur_etiquette, 4, "D/nais : {$dateN}", 0, 1, L);
         // Nom
         $pdf->Cell($largeur_etiquette - 30, 4, "Nom : ", 0, 0, L);
         $pdf->SetFont('times', 'B', 9);
         $pdf->Cell(43, 4, strtoupper($nom), 0, 0, L);
         $pdf->SetFont('times', '', 9);
         $pdf->Cell($largeur_etiquette - 30, 4, "Nom : ", 0, 0, L);
         $pdf->SetFont('times', 'B', 9);
         $pdf->Cell(43, 4, strtoupper($nom), 0, 0, L);
         $pdf->SetFont('times', '', 9);
         $pdf->Cell($largeur_etiquette - 30, 4, "Nom : ", 0, 0, L);
         $pdf->SetFont('times', 'B', 9);
         $pdf->Cell(43, 4, strtoupper($nom), 0, 0, L);
         $pdf->SetFont('times', '', 9);
         $pdf->Cell($largeur_etiquette - 30, 4, "Nom : ", 0, 0, L);
         $pdf->SetFont('times', 'B', 9);
         $pdf->Cell(43, 4, strtoupper($nom), 0, 0, L);
         $pdf->SetFont('times', '', 9);
         $pdf->Cell($largeur_etiquette - 30, 4, "Nom : ", 0, 0, L);
         $pdf->SetFont('times', 'B', 9);
         $pdf->Cell(43, 4, strtoupper($nom), 0, 1, L);
         $pdf->SetFont('times', '', 9);
         // Prénom
         $pdf->Cell($largeur_etiquette, 4, "Prénom : " . ucfirst(strtolower($prenom)), 0, 0, L);
         $pdf->Cell($espace_etiquettes, 4, "", 0, 0, L);
         $pdf->Cell($largeur_etiquette, 4, "Prénom : " . ucfirst(strtolower($prenom)), 0, 0, L);
         $pdf->Cell($espace_etiquettes, 4, "", 0, 0, L);
         $pdf->Cell($largeur_etiquette, 4, "Prénom : " . ucfirst(strtolower($prenom)), 0, 0, L);
         $pdf->Cell($espace_etiquettes, 4, "", 0, 0, L);
         $pdf->Cell($largeur_etiquette, 4, "Prénom : " . ucfirst(strtolower($prenom)), 0, 0, L);
         $pdf->Cell($espace_etiquettes, 4, "", 0, 0, L);
         $pdf->Cell($largeur_etiquette, 4, "Prénom : " . ucfirst(strtolower($prenom)), 0, 1, L);
         // NJF
         $pdf->Cell($largeur_etiquette, 4, "NJF : ", 0, 0, L);
         $pdf->Cell($espace_etiquettes, 4, "", 0, 0, L);
         $pdf->Cell($largeur_etiquette, 4, "NJF : ", 0, 0, L);
         $pdf->Cell($espace_etiquettes, 4, "", 0, 0, L);
         $pdf->Cell($largeur_etiquette, 4, "NJF : ", 0, 0, L);
         $pdf->Cell($espace_etiquettes, 4, "", 0, 0, L);
         $pdf->Cell($largeur_etiquette, 4, "NJF : ", 0, 0, L);
         $pdf->Cell($espace_etiquettes, 4, "", 0, 0, L);
         $pdf->Cell($largeur_etiquette, 4, "NJF : ", 0, 1, L);
         // N° SS
         $pdf->Cell(9, 4, "NSej : ", 0, 0, L);
         $pdf->Cell(46, 4, "{$nsej}", 0, 0, L);
         $pdf->Cell(9, 4, "NSej : ", 0, 0, L);
         $pdf->Cell(46, 4, "{$nsej}", 0, 0, L);
         $pdf->Cell(9, 4, "NSej : ", 0, 0, L);
         $pdf->Cell(46, 4, "{$nsej}", 0, 0, L);
         $pdf->Cell(9, 4, "NSej : ", 0, 0, L);
         $pdf->Cell(46, 4, "{$nsej}", 0, 0, L);
         $pdf->Cell(9, 4, "NSej : ", 0, 0, L);
         $pdf->Cell(46, 4, "{$nsej}", 0, 1, L);
         // inter _etiquettes
         $pdf->Cell(1, 11, "", 0, 1);
     }
     $pdf->Output();
 }
Exemple #27
0
 public function affectPost2XML($item)
 {
     global $formxSession;
     //Certains items ne peuvent être instanciés
     if (in_array($item->getAttribute('type'), array('CLOSER'))) {
         return;
     }
     $reg = array();
     //eko("affectation de la variable ".$this->prefix.$item->getAttribute('id')."  à  ".$_POST[$this->prefix.$item->getAttribute('id')]);
     //eko("je traite le post ".$this->prefix.$item->getAttribute('id'));
     $this->debug("Entrée dans affectPost2XML," . "affectation de la variable " . $this->prefix . $item->getAttribute('id') . "  à  la valeur " . clFoRmXtOoLs::getPost($this->prefix . $item->getAttribute('id')));
     //si pas de données post pour cet item, mais que sa valeur n'est pas nulle, surtout on ne
     //touche à rien, on risquerait d'écraser les données
     //ex: balises conditionelles
     //isPostValueForItem se charge des cas particuliers (ex CHECK )
     //f ( ! $this->isPostValueForItem($item) && (string) $item->getElementsByTagName('Val')->item(0)->nodeValue ) {
     if (!$this->isPostValueForItem($item)) {
         $this->debug("Aucune donnée POST n'est associée à cet item,  Sortie de la methode");
         return;
     }
     //si pas les droits au moins W
     $droit = $this->session->droit;
     if ($this->XMLCore['access']) {
         $droit = utf8_decode((string) $this->XMLCore['access']);
     }
     if ($item->getAttribute('access')) {
         $droit = utf8_decode($item->getAttribute('access'));
     }
     if (!$formxSession->getDroit($droit, 'w')) {
         $this->debug("acces refusé en écriture. cet item est associé au droit '{$droit}'");
         return;
     }
     if (is_object($item->getElementsByTagName('Val')->item(0))) {
         $val_old_value = $item->getElementsByTagName('Val')->item(0)->nodeValue;
     } else {
         $val_old_value = "";
     }
     switch ($item->getAttribute('type')) {
         case 'LISTEN':
             //  	echo(afftab($_POST));
             $i = 0;
             $val = '';
             while ($_POST[$this->prefix . $item->getAttribute('id') . '_LISTEN_' . $i]) {
                 $val .= stripslashes($_POST[$this->prefix . $item->getAttribute('id') . '_LISTEN_' . $i]) . '|';
                 $i++;
             }
             $val = rtrim($val, '|');
             $this->makeBalVal($item, 'Val', $val);
             break;
         case 'TAB':
             ereg("list:(.*)", $item->getElementsByTagName('Rows')->item(0)->nodeValue, $reg);
             $rows = explode('|', $reg[1]);
             ereg("list:(.*)", $item->getElementsByTagName('Cols')->item(0)->nodeValue, $reg);
             $cols = explode('|', $reg[1]);
             $nb_cols = 0;
             foreach ($cols as $col) {
                 $nb_cols++;
             }
             $x = 0;
             $y = 0;
             $tab = array();
             foreach ($rows as $row) {
                 foreach ($cols as $col) {
                     $tab[$y * $nb_cols + $x] = $_POST[$this->prefix . $item->getAttribute('id') . "_{$x}" . "_{$y}"];
                     $x++;
                 }
                 $x = 0;
                 $y++;
             }
             $tab = implode('|', $tab);
             $this->makeBalVal($item, 'Val', $tab);
             break;
         case 'LISTEDYN':
             //SI DEMANDE on va inserer dans la liste XHAM la valeur demandée
             $nouveau = stripslashes($_POST[$this->prefix . $item->getAttribute('id') . '_new']);
             if ($nouveau) {
                 $param['liste_nom'] = $item->getElementsByTagName('FromXHAMList')->item(0)->nodeValue;
                 $param['item_nom'] = $nouveau;
                 $param['idapplication'] = IDAPPLICATION;
                 $req = new clResultQuery();
                 //execution de la requete
                 $res = $req->Execute("Fichier", "FX_addXHAMListItem", $param, "ResultQuery");
                 //eko($res['INDIC_SVC']);
                 //nouvelle valeur
                 $this->makeBalVal($item, 'Val', $nouveau);
                 break;
             }
             //insertOnList
         //insertOnList
         case 'LISTE':
             if ($item->hasAttribute('multiple')) {
                 if (!isset($_POST[$this->prefix . $item->getAttribute('id')]) || !$_POST[$this->prefix . $item->getAttribute('id')]) {
                     $this->makeBalVal($item, 'Val', '');
                 } else {
                     $this->makeBalVal($item, 'Val', @stripslashes(implode('|', $_POST[$this->prefix . $item->getAttribute('id')])));
                 }
             } else {
                 $this->makeBalVal($item, 'Val', stripslashes($_POST[$this->prefix . $item->getAttribute('id')]));
             }
             break;
         case 'FILE':
             if (!$item->hasAttribute('extension')) {
                 $this->addErreur("L'attribut extention n'est pas présent. Pour des raisons de sécurité la balise FILE est désactivée.");
                 break;
             }
             if ($item->hasAttribute('rename')) {
                 $rename = $item->getAttribute('rename');
             } else {
                 $rename = '';
             }
             if ($item->hasAttribute('destination')) {
                 $destination = $item->getAttribute('destination');
             } else {
                 $destination = $this->destinationUploads;
             }
             if ($item->hasAttribute('maxfilesize')) {
                 $maxfilesize = $item->getAttribute('maxfilesize');
             } else {
                 $maxfilesize = $this->max_size_upload;
             }
             $re = clFoRmXtOoLs::gestUpload($this->prefix . $item->getAttribute('id'), $destination, $rename, $maxfilesize, utf8_decode($item->getAttribute('extension')));
             if ($re) {
                 $this->makeBalVal($item, 'Val', 'ok');
             } else {
                 $this->makeBalVal($item, 'Val', '¤ko');
             }
             break;
         case 'RADIO':
         case 'CHECK':
             if (!isset($_POST[$this->prefix . $item->getAttribute('id')])) {
                 $this->makeBalVal($item, 'Val', '');
                 break;
             }
             if ($_POST[$this->prefix . $item->getAttribute('id')] == '') {
                 $this->makeBalVal($item, 'Val', '');
             } else {
                 //debug horreur de php 5.1.3
                 $dat = $_POST[$this->prefix . $item->getAttribute('id')];
                 $this->makeBalVal($item, 'Val', stripslashes(clFoRmXtOoLs::implode_r($dat)));
             }
             break;
         case 'CAL':
             $postval = stripslashes($_POST[$this->prefix . $item->getAttribute('id')]);
             $this->makeBalVal($item, 'Val2', $postval);
             if ($item->hasAttribute('formatStore') && $postval) {
                 $date = new clDate($postval);
                 switch ($item->getAttribute('formatStore')) {
                     case 'timestamp':
                         $newval = $date->getTimestamp();
                         break;
                     case 'date':
                         $newval = $date->getDate();
                         break;
                     case 'datetime':
                     default:
                         $newval = $date->getDatetime();
                         break;
                 }
                 $this->makeBalVal($item, 'Val', $newval);
             } else {
                 $this->makeBalVal($item, 'Val', $postval);
             }
             break;
         default:
             $this->makeBalVal($item, 'Val', formxTools::helper_formatDatatype($item, stripslashes($_POST[$this->prefix . $item->getAttribute('id')])));
     }
     $val_new_value = $item->getElementsByTagName('Val')->item(0)->nodeValue;
     //si la valeur de la balise a été modifiée et que d'autres éléments dynamiques dépendent de sa valeur,
     //on réinitialise leur valeurs pour  ne pas avoir d'incohérences
     if ($val_new_value != $val_old_value && is_object($item->getElementsByTagName('OnChangeRefresh')->item(0))) {
         $strListIds = $this->getValueFrom($item->getElementsByTagName('OnChangeRefresh')->item(0)->nodeValue);
         $arrListIds = explode('|', $strListIds);
         foreach ($arrListIds as $id) {
             //print "<br />va chercher ".$id;
             $this->makeBalVal($this->getDomItemFromId($id), 'Val', "");
             if (isset($_POST[$this->prefix . $id])) {
                 unset($_POST[$this->prefix . $id]);
             }
         }
     }
 }
Exemple #28
0
 static function genInfoBulle($res, $i)
 {
     global $options;
     $e = '';
     // Chargement du template ModeliXe.
     $mod = new ModeliXe("InfoBulle.mxt");
     $mod->SetModeliXe();
     // Génération de l'id pour rattacher l'info-bulle à une entrée de la liste.
     $mod->MxText("iddiv", "id" . $res['idpatient'][$i]);
     $libelle = '';
     $libelle .= "<b>idpatient : </b>" . $res['idpatient'][$i] . "<br/>";
     if ($res['idu'][$i] != $res['ilp'][$i]) {
         $libelle .= "<b>IDU : </b>" . $res['idu'][$i] . "<br/>";
     }
     $libelle .= "<b>IPP : </b>" . $res['ilp'][$i] . "<br/>";
     $libelle .= "<b>NSej : </b>" . $res['nsej'][$i] . "<br/>";
     // Affichage des informations sur l'UF
     $ufExec = $options->getOption('numUFexec');
     $ufUHCD = $options->getOption('numUFUHCD');
     $ufUHCDrepere = $options->getOption('numUFUHCDrepere');
     $ufSC = $options->getOption('numUFSC');
     $dtUHCD = new clDate($res['dt_UHCD'][$i]);
     if ($res['uf'][$i] == $ufUHCD) {
         $sup = '(UHCD)';
     } elseif ($res['uf'][$i] == $ufSC) {
         $sup = '(Soins Continus)';
     } elseif ($res['uf'][$i] == $ufUHCDrepere and $res['uf'][$i]) {
         $sup = '(UHCD repéré)';
     } elseif (!$res['uf'][$i]) {
         $sup = '(???)';
     } else {
         $sup = '(Urgences)';
     }
     $libelle .= "<b>UF : </b>" . $res['uf'][$i] . " {$sup}<br/>";
     // Etat civil
     $libelle .= "<b>(" . $res['sexe'][$i] . ") " . ucfirst(strtolower($res['prenom'][$i])) . " " . strtoupper($res['nom'][$i]) . "</b><br />";
     $age = new clDate($res['dt_naissance'][$i]);
     $dta = new clDate($res['dt_admission'][$i]);
     $dte = new clDate($res['dt_examen'][$i]);
     $dts = new clDate($res['dt_sortie'][$i]);
     $dateSimple = $age->getDate("d-m-Y");
     $dateComple = $age->getDateText();
     $duree = new clDuree();
     if ($res['dt_naissance'][$i] != "0000-00-00 00:00:00") {
         $libelle .= "Né{$e} le {$dateComple} (" . str_replace("<br>", " et ", $duree->getAgePrecis($age->getTimestamp())) . ")<br />";
     } else {
         $libelle .= "Date de naissance inconnue<br />";
     }
     // Date d'admission.
     if ($res['dt_admission'][$i] != "0000-00-00 00:00:00") {
         $libelle .= "<b>Date d'admission :</b> " . $dta->getDate("d-m-Y H:i") . "<br />";
     } else {
         $libelle .= "<b>Date d'admission :</b> " . VIDEDEFAUT . "<br />";
     }
     // Date d'examen.
     if ($res['dt_examen'][$i] != "0000-00-00 00:00:00") {
         $libelle .= "<b>Date d'examen :</b> " . $dte->getDate("d-m-Y H:i") . "<br />";
     } else {
         $libelle .= "<b>Date d'examen :</b> " . VIDEDEFAUT . "<br />";
     }
     // Date de sortie.
     if ($res['dt_sortie'][$i] != "0000-00-00 00:00:00") {
         $libelle .= "<b>Date de sortie :</b> " . $dts->getDate("d-m-Y H:i") . "<br />";
     } else {
         $libelle .= "<b>Date de sortie :</b> " . VIDEDEFAUT . "<br />";
     }
     // Adresseur.
     if ($res['adresseur'][$i]) {
         $libelle .= "<b>Adresseur :</b> " . $res['adresseur'][$i] . "<br />";
     } else {
         $libelle .= "<b>Adresseur :</b> " . VIDEDEFAUT . "<br />";
     }
     // Mode d'admission.
     if ($res['mode_admission'][$i]) {
         $libelle .= "<b>Mode d'admission :</b> " . $res['mode_admission'][$i] . "<br />";
     } else {
         $libelle .= "<b>Mode d'admission :</b> " . VIDEDEFAUT . "<br />";
     }
     // Médecin.
     if ($res['medecin_urgences'][$i]) {
         $libelle .= "<b>Médecin :</b> " . $res['medecin_urgences'][$i] . "<br />";
     } else {
         $libelle .= "<b>Médecin :</b> " . VIDEDEFAUT . "<br />";
     }
     // IDE.
     if ($res['ide'][$i]) {
         $libelle .= "<b>IDE :</b> " . $res['ide'][$i] . "<br />";
     } else {
         $libelle .= "<b>IDE :</b> " . VIDEDEFAUT . "<br />";
     }
     // Salle d'examen.
     if ($res['salle_examen'][$i]) {
         $libelle .= "<b>Salle d'examen :</b> " . $res['salle_examen'][$i] . "<br />";
     } else {
         $libelle .= "<b>Salle d'examen :</b> " . VIDEDEFAUT . "<br />";
     }
     // Motif de recours.
     if ($res['motif_recours'][$i]) {
         $libelle .= "<b>Motif de recours :</b> " . $res['motif_recours'][$i] . "<br />";
     } else {
         $libelle .= "<b>Motif de recours :</b> " . VIDEDEFAUT . "<br />";
     }
     // Destination souhaitée.
     if ($res['dest_souhaitee'][$i]) {
         $libelle .= "<b>Dest. souhaitée :</b> " . $res['dest_souhaitee'][$i] . "<br />";
     } else {
         $libelle .= "<b>Dest. souhaitée :</b> " . VIDEDEFAUT . "<br />";
     }
     // Destination attendue.
     if ($res['dest_attendue'][$i]) {
         $libelle .= "<b>Dest. attendue :</b> " . $res['dest_attendue'][$i] . "<br />";
     } else {
         $libelle .= "<b>Dest. attendue :</b> " . VIDEDEFAUT . "<br />";
     }
     // Catégorie de diagnostic.
     if ($res['diagnostic_categorie'][$i]) {
         $libelle .= "<b>Cat. de diag. :</b> " . $res['diagnostic_categorie'][$i] . "<br />";
     } else {
         $libelle .= "<b>Cat. de diag. :</b> " . VIDEDEFAUT . "<br />";
     }
     // Diagnostic.
     if ($res['diagnostic_libelle'][$i]) {
         $libelle .= "<b>Diagnostic :</b> " . $res['diagnostic_libelle'][$i] . "<br />";
     } else {
         $libelle .= "<b>Diagnostic :</b> " . VIDEDEFAUT . "<br />";
     }
     // CCMU.
     if ($res['ccmu'][$i]) {
         $libelle .= "<b>CCMU :</b> " . $res['ccmu'][$i] . "<br />";
     }
     // GEMSA.
     if ($res['gemsa'][$i]) {
         $libelle .= "<b>GEMSA :</b> " . $res['gemsa'][$i] . "<br />";
     }
     // Ajout des informations dans l'info-bulle.
     $text = preg_replace("/(\r\n|\n|\r)/", " ", nl2br($libelle));
     $mod->MxText("libelle", str_replace("'", "\\'", $text));
     // Récupération du code HTML généré.
     return $mod->MxWrite("1");
 }
Exemple #29
0
 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");
 }
Exemple #30
-1
 function getContraintes()
 {
     global $session;
     global $options;
     // Chargement du template.
     $mod = new ModeliXe("ErreursSortie.mxt");
     $mod->SetModeliXe();
     // Génération du lien pour fermer.
     $mod->MxImage("imgCloseErreurs", URLIMGFER, "Fermer");
     $mod->MxUrl("lienCloseErreurs", URLNAVI . $session->genNavi($session->getNavi(0), $session->getNavi(1), $session->getNavi(2)));
     // Variable de navigation.
     $mod->MxHidden("hidden", "navi=" . $session->genNavi($session->getNavi(0), $session->getNavi(1), $session->getNavi(2)));
     $tab = $this->messages;
     // Parcours et affichage des messages d'erreur.
     while (list($key, $val) = each($tab)) {
         $mod->MxText("erreur.nom", $key);
         $mod->MxText("erreur.description", $val);
         $mod->MxBloc("erreur", "loop");
     }
     if ($session->getDroit("Presents_EtatCivil", "a")) {
         $mod->MxHidden("forcer.hiddenForcer", "navi=" . $session->genNavi($session->getNavi(0), $session->getNavi(1), $session->getNavi(2), "modDateSortie"));
         // 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");
         // 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);
         }
         // On génère le select contenant la liste des dates possibles.
         $mod->MxText("forcer.date", $form->genSelect("modDateSortie", 1, $data));
     } else {
         $mod->MxBloc("forcer", "modify", " ");
     }
     // Récupération du code HTML généré.
     $af .= $mod->MxWrite("1");
     return $af;
 }