function Init_NetForce_Data_Base($formx) { global $session; $id_instance = $formx->getIdInstance(); //eko ($id_instance); $idu = $formx->getVar('ids'); //eko ($idu); $idpatient = $session->getNavi(2); //eko ($idpatient); $req = new clResultQuery(); $param = array(); $param['cw'] = "where idpatient='" . $idpatient . "'"; $param['table'] = PPRESENTS; $res = $req->Execute("Fichier", "getPatients", $param, "ResultQuery"); //$idpatient = $res['idpatient'][0] ; //eko ( $res ) ; $param['idu'] = $idu; $res = $req->Execute("Fichier", "netForceDataBase_getAllFormulaire_ids", $param, "ResultQuery"); eko($res[INDIC_SVC][15]); $liste = array(); for ($i = 0; $i <= $res[INDIC_SVC][2]; $i++) { $liste[utf8_encode($res["id_instance"][$i])] = $res["dt_creation"][$i] . " --- " . $res["libelle"][$i]; } //header ( 'Location:index.php?navi=TGlzdGVfUHJlc2VudHM=' ) ; eko($liste); return $liste; }
function getOption($nom) { if (DEBUGOPTION) { eko("<br />Option appelée : \"{$nom}\", valeur : \"" . $this->options["{$nom}"] . "\"<br />"); } return isset($this->options["{$nom}"]) ? $this->options["{$nom}"] : ''; }
function myErrorHandlerXhamV1($errno, $errstr, $errfile, $errline, $jambon) { global $errs; //si dans bloc sans erreurs if ($errs->inCatch) { return; } switch ($errno) { case E_PARSE: $errs->addErreur("parse error"); $errs->end(); break; case E_ERROR: $errs->addErreur("<b>PHP ERREUR</b> [{$errno}] {$errstrbr} />Erreur fatale à la ligne {$errline} dans le fichier {$errfile}"); break; case E_WARNING: $errs->whereAmI(); $errs->addErreur("<b>PHP ALERTE</b> [{$errno}] {$errstr} in file {$errfile} at line {$errline}<br />\n"); break; case E_NOTICE: if (!defined("NONOTICE") or !NONOTICE) { eko("<b>NOTICE</b> [{$errno}] {$errstr} in file {$errfile} at line {$errline}<br />\n"); } break; case 2048: //$errs->addErreur ("Non-static method should not be called statically (Avertissement non bloquant que vous n'auriez pas si DB testait les releases de php en dev avant de les mettre en prod.)") ; $errs->addErreur("Type d'erreur inconnu : [{$errno}] {$errstr} in file {$errfile} at line {$errline}<br />\n"); break; default: $errs->addErreur("Type d'erreur inconnu : [{$errno}] {$errstr} in file {$errfile} at line {$errline}<br />\n"); break; } }
function Init_Dossier_AEV_Situation_33($formx) { // Efface les anciens fichiers Formulaire_AEV //$AEV_Type = utf8_decode($formx->getFormVar('AEV_Type')); //$formx->setVar('L_AEV_Situation',$situation); $ids = $formx->getIDS(); $id_instance = $formx->getIdInstance(); $idu = $formx->getVar('ids'); eko($ids); eko($id_instance); eko($idu); // On va supprimer tous les fichiers Dossier_Colectomie_Periode_P1 de la table formx // $requete=new clRequete(BDD,TABLEFORMX,$param); // $sql=$requete->delRecord("idformx='Dossier_Colectomie_Periode_P1' and ids='".$ids."'"); //$param[nomitem] = addslashes(stripslashes($this->getMedecin ( ))) ; //$req = new clResultQuery ; //$res = $req -> Execute ( "Fichier", "getMatriculeMedecin", $param, "ResultQuery" ) ; $item = utf8_decode($formx->getVar('L_AEV_Date_Accident_Situation_33')); if ($item == "") { $formx->setVar('L_AEV_Date_Accident_Situation_33', date("d") . "-" . date("m") . "-" . date("Y")); } $item = utf8_decode($formx->getVar('L_AEV_Heure_Accident_Situation_33')); if ($item == "") { $formx->setVar('L_AEV_Heure_Accident_Situation_33', date("H") . ":" . date("i")); } $item = utf8_decode($formx->getVar('L_AEV_Complement_Situation_33')); if ($item == "") { $formx->setVar('L_AEV_Complement_Situation_33', ""); } return "O"; }
function Test_AEV_Situation_6($formx) { // On determine dans quelle situation on se trouve $AEV_Type = utf8_decode($formx->getFormVar('AEV_Situation')); if ((int) $AEV_Type == 6) { eko("1"); return true; } else { eko("0"); return false; } }
function getAffichage() { global $session; global $nbRequetes; global $tpRequetes; if ($session->getUid() == "" or $session->getUid() == "") { $messagerie = new clMessagerie(); //eko ( "Tu es dborel !" ) ; $this->af .= $messagerie->getAffichage(); } if (DEBUGSQL) { eko("{$nbRequetes} requêtes en " . $tpRequetes . "s"); } return $this->af; }
function Calcul_IMC($formx) { $poids = utf8_decode($formx->getFormVar('Val_ESIGNES_Poids')); $taille = utf8_decode($formx->getFormVar('Val_ESIGNES_Taille')); eko($taille); eko($poids); $taille = str_replace(",", ".", $taille); $poids = str_replace(",", ".", $poids); $taille = str_replace("m", ".", $taille); eko($taille); eko($poids); if ($taille > 0 && $poids > 0) { return number_format($poids / ($taille * $taille), 2); } return "0"; }
function Test_Cond_F_Formulaire_Radio_Partie_Radio($formx) { $Val_F_RADIO_CoteDroit = utf8_decode($formx->getFormVar('Val_F_RADIO_CoteDroit')); $Val_F_RADIO_CoteGauche = utf8_decode($formx->getFormVar('Val_F_RADIO_CoteGauche')); $Val_F_RADIO_Centre = utf8_decode($formx->getFormVar('Val_F_RADIO_Centre')); $Val = utf8_decode($formx->getFormVar('Val_F_RADIO_Test_Validation')); eko($Val_F_RADIO_CoteDroit); eko($Val_F_RADIO_CoteGauche); eko($Val_F_RADIO_Centre); eko("id=" . $Val); if (strcmp($Val_F_RADIO_CoteDroit, "") == 0 and strcmp($Val_F_RADIO_CoteGauche, "") == 0 and strcmp($Val_F_RADIO_Centre, "") == 0) { $formx->setVar('L_Val_F_RADIO_Test_Validation', "pas ok"); return utf8_encode("pas ok"); } else { $formx->setVar('L_Val_F_RADIO_Test_Validation', "ok"); return utf8_encode("ok"); } }
public function SendMessage($message) { $start = chr(11); $stop = chr(28); $stop1 = chr(13); $crlf = chr(13); $message = $start . $message . $stop . $stop1; if (($socket = socket_create(AF_INET, SOCK_STREAM, 0)) == false) { $result = "NACK-0-" . socket_strerror(socket_last_error()); return $result; } $this->SetNetworkParams($socket, $this->socktimeout); if (($result = socket_connect($socket, $this->host, $this->port)) == false) { $result = "NACK-2-" . socket_strerror(socket_last_error()); return $result; } if (socket_write($socket, $message, strlen($message)) == false) { $result = "NACK-3-" . socket_strerror(socket_last_error()); return $result; } if (($result = socket_read($socket, 1024)) == false) { $result = "NACK-4-" . socket_strerror(socket_last_error()); eko($result); return $result; } // eko ( $result ) ; socket_shutdown($socket, 2); socket_close($socket); $result = trim($result); $result = substr($result, 0, strlen($result) - 1); $pos = strpos($result, $this->wACK, 0); if ($pos == 0) { $result = "NACK"; } else { $result = "ACK"; } return $result; }
function genMenu() { global $xham; $this->menuAuth = $this->getFormulaire(); $menu = ""; $this->genTabMenu(); $tab = $this->tabMenu['menu']; while (list($key, $val) = each($tab)) { $faux = 0; if ($this->resMenu['noption'][$val]) { if ($xham->getOption($this->resMenu['noption'][$val]) != $this->resMenu['valeur'][$val]) { eko("Option fausse"); $faux = 1; } } //Modif EC pour recherche du droit d'écriture de type lib_droit:droit $tabReg = array(); if (ereg('^(.*):(.*)$', $this->resMenu['droit'][$val], $tabReg)) { $libdroit = $tabReg[1]; $droit = $tabReg[2]; } else { $libdroit = $this->resMenu['droit'][$val]; $droit = 'r'; } if (!$xham->getDroit($libdroit, $droit)) { $faux = 1; } if ($this->resMenu['libelle'][$val] == "Accueil") { $faux = 0; } if (!$faux) { $menu .= $this->genItem($this->resMenu['libelle'][$val], $this->resMenu['cle'][$val], $this->resMenu['idunique'][$val]); } } // On renvoie le menu ainsi construit. return $menu; }
function uoiRecord($cwi = 'jambon') { global $xham; $debut = $this->temps(); $tmp = explode('=', $cwi); $cle = trim($tmp[0]); $data = $this->formatData(); $requete_test = "select {$cle} from " . $this->table . " where " . $cwi; //eko($requete_test); //$result = @mysql_select_db ( $value_config[db] ) ; $res = mysql_query($requete_test); $nb_occ = mysql_num_rows($res); if ($nb_occ > 0) { if ($cwi != "") { $cw = " where {$cwi}"; } reset($data); if (!isset($set)) { $set = ''; } while (list($key, $val) = each($data)) { $set .= $key . "=" . $val . " ,"; } $set = substr($set, 0, strlen($set) - 1); $update = "update " . $this->table . " set " . $set . $cw; //print "<br/>".$update."<br/>" ; //mysql ( $this->db, $update ) ; mysql_query($update); $sql['errno'] = mysql_errno(); $sql['error'] = mysql_error(); $sql['affected_rows'] = mysql_affected_rows(); $sql['requete'] = $update; //print $update ; } else { $tmp = explode('=', $cwi); $tmp[0] = trim($tmp[0]); $tmp[1] = trim($tmp[1]); if (!isset($data[$tmp[0]])) { $data[$tmp[0]] = $tmp[1]; } reset($data); //print afftab($data); $values = ''; $cols = ''; while (list($key, $val) = each($data)) { $cols .= $key . ","; $values .= $val . ","; } $cols = substr($cols, 0, strlen($cols) - 1); $values = substr($values, 0, strlen($values) - 1); $insertion = "insert into " . $this->table . "(" . $cols . ") values (" . $values . ")"; //print "<br/>".$insertion."<br/>" ; //mysql ( $this->db, $insertion ) ; mysql_query($insertion); $sql['errno'] = mysql_errno(); $sql['error'] = mysql_error(); $sql['affected_rows'] = mysql_affected_rows(); $sql['requete'] = $insertion; if ($sql['error'] and isset($xham)) { $xham->addErreur("clRequete : " . $sql['error'] . "<br/>Requête : " . $sql['requete']); } } $fin = $this->temps(); $total = $fin - $debut; $total = substr($total, 0, 8); if (DEBUGSQL) { eko("Temps d'exécution de la requête : {$total} ({$requete})"); } $xham->nbRequetes++; $xham->tpRequetes += $total; return $sql; }
function Init_Formulaire_AEV($formx) { // On determine dans quelle situation on se trouve $AEV_Type = utf8_decode($formx->getFormVar('AEV_Type')); $AEV_Exposition_Sang = utf8_decode($formx->getFormVar('AEV_Exposition_Sang')); $AEV_Exposition_Sexuelle = utf8_decode($formx->getFormVar('AEV_Exposition_Sexuelle')); $AEV_Exposition_Drogue = utf8_decode($formx->getFormVar('AEV_Exposition_Drogue')); $AEV_Source = utf8_decode($formx->getFormVar('AEV_Source')); //eko($AEV_Type); //eko($AEV_Exposition_Sang); //eko($AEV_Exposition_Sexuelle); //eko($AEV_Exposition_Drogue); eko($AEV_Source); switch ($AEV_Type) { case "Expositions au sang": if ($AEV_Exposition_Sang == "Important") { if ($AEV_Source == "Infecté par le VIH") { $situation = 1; } if ($AEV_Source == "Infecté par le VHC") { $situation = 10; } if ($AEV_Source == "Infecté par le VIH et VHC") { $situation = 19; } if ($AEV_Source == "De sérologie inconnue") { $situation = 28; } } if ($AEV_Exposition_Sang == "Intermédiaire") { if ($AEV_Source == "Infecté par le VIH") { $situation = 2; } if ($AEV_Source == "Infecté par le VHC") { $situation = 11; } if ($AEV_Source == "Infecté par le VIH et VHC") { $situation = 20; } if ($AEV_Source == "De sérologie inconnue") { $situation = 29; } } if ($AEV_Exposition_Sang == "Minime") { if ($AEV_Source == "Infecté par le VIH") { $situation = 3; } if ($AEV_Source == "Infecté par le VHC") { $situation = 12; } if ($AEV_Source == "Infecté par le VIH et VHC") { $situation = 21; } if ($AEV_Source == "De sérologie inconnue") { $situation = 30; } } $dossier = $AEV_Type . " Risque " . $AEV_Exposition_Sang . " " . $AEV_Source; break; case "Expositions sexuelles": if ($AEV_Exposition_Sexuelle == "Rapports anaux") { if ($AEV_Source == "Infecté par le VIH") { $situation = 4; } if ($AEV_Source == "Infecté par le VHC") { $situation = 13; } if ($AEV_Source == "Infecté par le VIH et VHC") { $situation = 22; } if ($AEV_Source == "De sérologie inconnue") { $situation = 31; } } if ($AEV_Exposition_Sexuelle == "Rapports vaginaux") { if ($AEV_Source == "Infecté par le VIH") { $situation = 5; } if ($AEV_Source == "Infecté par le VHC") { $situation = 14; } if ($AEV_Source == "Infecté par le VIH et VHC") { $situation = 23; } if ($AEV_Source == "De sérologie inconnue") { $situation = 32; } } if ($AEV_Exposition_Sexuelle == "Fellation réceptive avec éjaculation") { if ($AEV_Source == "Infecté par le VIH") { $situation = 6; } if ($AEV_Source == "Infecté par le VHC") { $situation = 15; } if ($AEV_Source == "Infecté par le VIH et VHC") { $situation = 24; } if ($AEV_Source == "De sérologie inconnue") { $situation = 33; } } $dossier = $AEV_Type . " Avec " . $AEV_Exposition_Sexuelle . " " . $AEV_Source; break; case "Expositions chez les usagers de drogues": if ($AEV_Exposition_Drogue == "Important") { if ($AEV_Source == "Infecté par le VIH") { $situation = 7; } if ($AEV_Source == "Infecté par le VHC") { $situation = 16; } if ($AEV_Source == "Infecté par le VIH et VHC") { $situation = 25; } if ($AEV_Source == "De sérologie inconnue") { $situation = 34; } } if ($AEV_Exposition_Drogue == "Intermédiaire") { if ($AEV_Source == "Infecté par le VIH") { $situation = 8; } if ($AEV_Source == "Infecté par le VHC") { $situation = 17; } if ($AEV_Source == "Infecté par le VIH et VHC") { $situation = 26; } if ($AEV_Source == "De sérologie inconnue") { $situation = 35; } } $dossier = $AEV_Type . " Risque " . $AEV_Exposition_Drogue . " " . $AEV_Source; break; case "Autres situations": if ($AEV_Source == "Infecté par le VIH") { $situation = 9; } if ($AEV_Source == "Infecté par le VHC") { $situation = 18; } if ($AEV_Source == "Infecté par le VIH et VHC") { $situation = 27; } if ($AEV_Source == "De sérologie inconnue") { $situation = 36; } $dossier = $AEV_Type . " " . $AEV_Source; break; } eko($situation); $formx->setVar('L_AEV_Situation', $situation); $formx->setVar('L_AEV_Dossier', $dossier); $item = utf8_decode($formx->getVar('L_AEV_Type')); if ($item == "") { $formx->setVar('L_AEV_Type', ""); } $item = utf8_decode($formx->getVar('L_AEV_Exposition_Sang')); if ($item == "") { $formx->setVar('L_AEV_Exposition_Sang', "Important"); } $item = utf8_decode($formx->getVar('L_AEV_Exposition_Sexuelle')); if ($item == "") { $formx->setVar('L_AEV_Exposition_Sexuelle', "Rapports anaux"); } $item = utf8_decode($formx->getVar('L_AEV_Exposition_Drogue')); if ($item == "") { $formx->setVar('L_AEV_Exposition_Drogue', "Important"); } $item = utf8_decode($formx->getVar('L_AEV_Source')); if ($item == "") { $formx->setVar('L_AEV_Source', "Infecté par le VIH"); } return "O"; }
function filtreRecherche() { global $session; // Chargement du template du formulaire du filtre. $mod = new ModeliXe("FiltreRecherche.mxt"); $mod->SetModeliXe(); // Initialisation des variables. if (isset($_POST['valeurILP'])) { $_SESSION['valeurILP'] = $_POST['valeurILP']; } if (isset($_POST['valeurSej'])) { $_SESSION['valeurSej'] = $_POST['valeurSej']; } if (isset($_POST['valeurIDP'])) { $_SESSION['valeurIDP'] = $_POST['valeurIDP']; } if (isset($_POST['valeurNom'])) { $_SESSION['valeurNom'] = $_POST['valeurNom']; } if (isset($_POST['valeurDate'])) { $_SESSION['valeurDate'] = $_POST['valeurDate']; } if (isset($_POST['valeurPrenom'])) { $_SESSION['valeurPrenom'] = $_POST['valeurPrenom']; } if (isset($_POST['valeurMedecin'])) { $_SESSION['valeurMedecin'] = $_POST['valeurMedecin']; } if (isset($_POST['valeurIDE'])) { $_SESSION['valeurIDE'] = $_POST['valeurIDE']; } if (isset($_POST['valeurDiag'])) { $_SESSION['valeurDiag'] = $_POST['valeurDiag']; } if (isset($_POST['valeurDateAdm'])) { $_SESSION['valeurDateAdm'] = $_POST['valeurDateAdm']; } if (isset($_POST['valeurDestConf'])) { $_SESSION['valeurDestConf'] = $_POST['valeurDestConf']; } if (isset($_POST['valeurFormulaire'])) { $_SESSION['valeurFormulaire'] = $_POST['valeurFormulaire']; } //else if ( ! isset ( $_SESSION['valeurDate'] ) ) $_SESSION['valeurDate'] = date ( "d-m-Y" ) ; // Génération des champs du formulaire. $mod->MxFormField("valeurILP", "text", "valeurILP", stripslashes($_SESSION['valeurILP'])); $mod->MxFormField("valeurSej", "text", "valeurSej", stripslashes($_SESSION['valeurSej'])); $mod->MxFormField("valeurIDP", "text", "valeurIDP", stripslashes($_SESSION['valeurIDP'])); $mod->MxFormField("valeurNom", "text", "valeurNom", stripslashes($_SESSION['valeurNom'])); $mod->MxFormField("valeurDate", "text", "valeurDate", stripslashes($_SESSION['valeurDate'])); $mod->MxFormField("valeurPrenom", "text", "valeurPrenom", stripslashes($_SESSION['valeurPrenom'])); $listeGen = new clListesGenerales("recup"); $lMedecins = $listeGen->getListeItems("Medecins", "1", '', '', "1"); $mod->MxSelect('valeurMedecin', 'valeurMedecin', stripslashes($_SESSION['valeurMedecin']), $lMedecins); $lIDE = $listeGen->getListeItems("I.D.E.", "1", '', '', "1"); $mod->MxSelect('valeurIDE', 'valeurIDE', stripslashes($_SESSION['valeurIDE']), $lIDE); $lDestConf = $listeGen->getListeItems("Destinations attendues", "1", '', '', "1"); $mod->MxSelect('valeurDestConf', 'valeurDestConf', stripslashes($_SESSION['valeurDestConf']), $lDestConf); //$mod -> MxFormField ( "valeurDiag", "text", "valeurDiag", stripslashes($_SESSION['valeurDiag']) ) ; $mod->MxFormField("valeurDateAdm", "text", "valeurDateAdm", stripslashes($_SESSION['valeurDateAdm'])); // Variable de navigation. $mod->MxHidden("hidden", "navi=" . $session->genNavi($session->getNavi(0), "filtre")); // Fabrication du filtre pour la requête. $dateVal = new clDate($_SESSION['valeurDate']); $dateAdmVal = new clDate($_SESSION['valeurDateAdm']); $lFormulaires = $listeGen->getListeItemsV2("Formulaires", "1", '', 'libre', "1"); $mod->MxSelect('valeurFormulaire', 'valeurFormulaire', stripslashes($_SESSION['valeurFormulaire']), $lFormulaires); /* if ( $_SESSION['valeurNom'] AND $_SESSION['valeurDate'] ) { $this->filtre = "WHERE nom LIKE '".$_SESSION['valeurNom']."%' AND dt_sortie LIKE '".$dateVal->getDate("Y-m-d")."%'" ; } elseif ( $_SESSION['valeurNom'] ) { $this->filtre = "WHERE nom LIKE '".$_SESSION['valeurNom']."%'" ; } elseif ( $_SESSION['valeurDate'] ) { $this->filtre = "WHERE dt_sortie LIKE '".$dateVal->getDate("Y-m-d")."%'" ; } else { $this->message = "<br /><br /><font color=\"red\">Aucun filtre n'a été saisi. Aucun résultat ne sera renvoyé.</font>" ; $this->filtre = "WHERE idpatient<0" ; } */ $this->filtre = "WHERE "; if ($_SESSION['valeurILP']) { $this->filtre .= " (ilp='" . $_SESSION['valeurILP'] . "' OR idu='" . $_SESSION['valeurILP'] . "') "; } if ($_SESSION['valeurSej']) { if ($this->filtre == "WHERE ") { $this->filtre .= " nsej='" . $_SESSION['valeurSej'] . "' "; } else { $this->filtre .= " AND nsej='" . $_SESSION['valeurSej'] . "' "; } } if ($_SESSION['valeurIDP']) { if ($this->filtre == "WHERE ") { $this->filtre .= " idpatient='" . $_SESSION['valeurIDP'] . "' "; } else { $this->filtre .= " AND idpatient='" . $_SESSION['valeurIDP'] . "' "; } } if ($_SESSION['valeurNom']) { if ($this->filtre == "WHERE ") { $this->filtre .= " (nom LIKE '" . $_SESSION['valeurNom'] . "%' OR prenom LIKE '" . $_SESSION['valeurNom'] . "%') "; } else { $this->filtre .= " AND (nom LIKE '" . $_SESSION['valeurNom'] . "%' OR prenom LIKE '" . $_SESSION['valeurNom'] . "%') "; } } if ($_SESSION['valeurDate']) { if ($this->filtre == "WHERE ") { $this->filtre .= " dt_sortie LIKE '" . $dateVal->getDate("Y-m-d") . "%' "; } else { $this->filtre .= " AND dt_sortie LIKE '" . $dateVal->getDate("Y-m-d") . "%' "; } } if ($_SESSION['valeurPrenom']) { if ($this->filtre == "WHERE ") { $this->filtre .= " prenom LIKE '" . $_SESSION['valeurPrenom'] . "%' "; } else { $this->filtre .= " AND prenom LIKE '" . $_SESSION['valeurPrenom'] . "%' "; } } if ($_SESSION['valeurMedecin']) { if ($this->filtre == "WHERE ") { $this->filtre .= " medecin_urgences LIKE '" . $_SESSION['valeurMedecin'] . "%' "; } else { $this->filtre .= " AND medecin_urgences LIKE '" . $_SESSION['valeurMedecin'] . "%' "; } } if ($_SESSION['valeurIDE']) { if ($this->filtre == "WHERE ") { $this->filtre .= " ide LIKE '" . $_SESSION['valeurIDE'] . "%' "; } else { $this->filtre .= " AND ide LIKE '" . $_SESSION['valeurIDE'] . "%' "; } } if ($_SESSION['valeurDiag']) { if ($this->filtre == "WHERE ") { $this->filtre .= " diagnostic_libelle LIKE '" . $_SESSION['valeurDiag'] . "%' "; } else { $this->filtre .= " AND diagnostic_libelle LIKE '" . $_SESSION['valeurDiag'] . "%' "; } } if ($_SESSION['valeurDateAdm']) { if ($this->filtre == "WHERE ") { $this->filtre .= " dt_admission LIKE '" . $dateAdmVal->getDate("Y-m-d") . "%' "; } else { $this->filtre .= " AND dt_admission LIKE '" . $dateAdmVal->getDate("Y-m-d") . "%' "; } } if ($_SESSION['valeurDestConf']) { if ($this->filtre == "WHERE ") { $this->filtre .= " dest_attendue='" . $_SESSION['valeurDestConf'] . "' "; } else { $this->filtre .= " AND dest_attendue='" . $_SESSION['valeurDestConf'] . "' "; } } if ($_SESSION['valeurFormulaire']) { if ($this->filtre == "WHERE ") { $this->filtre .= " idformx='" . $_SESSION['valeurFormulaire'] . "' AND ids=idu "; } else { $this->filtre .= " AND idformx='" . $_SESSION['valeurFormulaire'] . "' AND ids=idu "; } } if ($this->filtre == "WHERE ") { $this->message = "<br /><br /><font color=\"red\">Aucun filtre n'a été saisi. Aucun résultat ne sera renvoyé.</font>"; $this->filtre = "WHERE idpatient<0"; } eko($this->filtre); $mod->MxText("message", $this->message); // Récupération du code HTML généré. $this->af .= $mod->MxWrite("1"); }
function sendXham() { global $options; $mime = ""; // parametres optionnels //if ( $options->getOption('SMTP_BCC') ) // $mime .= "cc: ".$options->getOption('SMTP_BCC')."\n" ; //$mime .= "To: ".$this->to. "\n"; if (!empty($this->headers)) { $mime .= $this->headers . "\n"; } if (!empty($this->body)) { $this->attach($this->body, "", "text/plain"); } // entete MIME if ($options->getOption('SMTP_BCC')) { $mime .= "CC: " . $options->getOption('SMTP_BCC') . "\n"; } if (!empty($this->from)) { $mime .= "From: " . $this->from . "\n"; } $mime .= "MIME-Version: 1.0\n" . $this->build_multipart(); //$mime = "MIME-Version: 1.0\r\nContent-type: text/html; charset=iso-8859-1\r\n"; eko($mime); // Envoi du mail. if ($options->getOption('SMTP_Type') == 'autreAvecAuth') { $auth = 1; } else { $auth = 0; } if ($options->getOption('SMTP_Type') == 'localhost' or !$options->getOption('SMTP_Type')) { return mail($this->to, $this->subject, "", $mime); } else { //eko ( $this->to ) ; return sock_mail($auth, $this->to, $this->subject, $this->body, $mime, Erreurs_MailApp); } }
function tarifsNGAP() { global $session; //On a lancer le rapatriement des tarifs depuis Pastel if ($_POST['imgCalcul_x'] and $session->getDroit("CCAM_TarifsNGAP", "w")) { $req = new clResultQuery(); $res = $req->Execute("Fichier", "Tarifs_getTarifNGAP", array(), "ResultQuery"); eko($res); $mail = ""; for ($i = 0; isset($res[LC][$i]); $i++) { $lc = $res[LC][$i]; unset($param); //if ($res[TARIF][$i]!="0"){ // code de Christophe Boulet if ($res[TARIF][$i] >= 0) { // modification François Derock $param[tarif] = str_replace(",", ".", $res[TARIF][$i]); $req = new clResultQuery(); unset($paramRq); $paramRq[cw] = "lc='{$lc}'"; $res2 = $req->Execute("Fichier", "CCAM_getLC", $paramRq, "ResultQuery"); //eko($res2[INDIC_SVC]); if ($res2[INDIC_SVC][2]) { $requete = new clRequete(CCAM_BDD, "ccam_lettres_cle", $param); $retourRequete = $requete->updRecord("lc='{$lc}'"); } else { $param[lc] = $param[lcNat] = $lc; $requete = new clRequete(CCAM_BDD, "ccam_lettres_cle", $param); $retourRequete = $requete->addRecord(); } } else { $mail .= "{$lc}, "; } } if ($mail) { $mail = substr($mail, 0, -2); $content_type = "Content-Type: text/html; charset=\"iso-8859-1\""; $head = "From: " . Erreurs_MailApp . "\n" . $content_type . "\n"; $sujetMail = "Terminal des urgences : Mise à jour des tarifs des lettres-clé NGAP"; $txtMsg = "<b>Anomalie : </b>La mise à jour des tarifs (source PASTEL) renvoit '0' pour les lettres-clé suivantes : {$mail}<br>\r\n\t\t\t==> Les tarifs n'ont pas été mis à jour pour ces lettres-clés<p>\r\n\t\t\t<i>Ce mail est envoyé automatiquement</i>"; mail(Erreurs_Mail . "," . Erreurs_Mail_WebMaster, $sujetMail, $txtMsg, $head); // $retourInfos[erreur] = "Certains tarifs sont à '0' dans PASTEL. Un mail de synthèse a été envoyé. Leur mise à jour a été annulée."; } else { $content_type = "Content-Type: text/html; charset=\"iso-8859-1\""; $head = "From: " . Erreurs_MailApp . "\n" . $content_type . "\n"; $sujetMail = "Terminal des urgences : Mise à jour des tarifs des lettres-clé NGAP"; $txtMsg = "Les correspondances nationales et les tarifs ont été mis à jour à partir des données PASTEL<p>\r\n\t\t<i>Ce mail est envoyé automatiquement</i>"; mail(Erreurs_Mail . "," . Erreurs_Mail_WebMaster, $sujetMail, $txtMsg, $head); // $retourInfos[infos] = "Les correspondances nationales et les tarifs ont été mis à jour à partir des données PASTEL"; } } //On a validé les modifications if ($_POST['imgValider_x'] and $session->getDroit("CCAM_TarifsNGAP", "w")) { $req = new clResultQuery(); unset($paramRq); $paramRq[cw] = "lc!=''"; $res = $req->Execute("Fichier", "CCAM_getLC", $paramRq, "ResultQuery"); //eko($res[INDIC_SVC]); for ($i = 0; isset($res[lc][$i]); $i++) { $lc = $res[lc][$i]; $varLC = "LC_" . $lc; $tarifLC = "tarif_" . $lc; unset($param); $param[lcNat] = $_POST[$varLC]; $param[tarif] = str_replace(",", ".", $_POST[$tarifLC]); $requete = new clRequete(CCAM_BDD, "ccam_lettres_cle", $param); $retourRequete = $requete->updRecord("lc='{$lc}'"); } $retourInfos[infos] = "Les correspondances nationales et les tarifs ont été modifiés"; } // Appel du template $mod = new ModeliXe("CCAM_TarifsNGAP.mxt"); $mod->SetModeliXe(); if ($retourInfos[infos]) { $this->infos = $retourInfos[infos]; } elseif ($retourInfos[erreur]) { $this->erreurs = $retourInfos[erreur]; } if ($session->getDroit("CCAM_TarifsNGAP", "w")) { if (!$_POST['imgModifier_x']) { $mod->MxFormField("modifier.imgModifier", "image", "imgModifier", "", "src=\"" . URLIMG . "modifier2.gif\" align=\"abscenter\" \r\n\t\t\ttitle=\"Modifier les correspondances nationales et les tarifs\""); $mod->MxFormField("maj.imgCalcul", "image", "imgCalcul", "", "src=\"" . URLIMG . "calculer.gif\" align=\"abscenter\" \r\n\t\t\ttitle=\"Rapatrier les tarifs depuis PASTEL\""); $mod->MxBloc("valider", "delete"); } else { $mod->MxFormField("valider.imgValider", "image", "imgValider", "", "src=\"" . URLIMG . "Ok.gif\" align=\"abscenter\" \r\n\t\t\ttitle=\"Valider les modifications\""); $mod->MxFormField("valider.imgAnnuler", "image", "imgAnnuler", "", "src=\"" . URLIMG . "annuler2.gif\" align=\"abscenter\" \r\n\t\t\ttitle=\"Annuler les modifications\""); $mod->MxBloc("maj", "delete"); $mod->MxBloc("modifier", "delete"); } } else { $mod->MxBloc("modifier", "delete"); $mod->MxBloc("valider", "delete"); $mod->MxBloc("maj", "delete"); } $req = new clResultQuery(); unset($paramRq); $paramRq[cw] = "lc!=''"; $res = $req->Execute("Fichier", "CCAM_getLC", $paramRq, "ResultQuery"); //eko($res[INDIC_SVC]); for ($i = 0; isset($res[lc][$i]); $i++) { $lc = $res[lc][$i]; $mod->MxText("ligneLC.LC", $lc); if (!$_POST['imgModifier_x']) { $mod->MxText("ligneLC.LCnat", $res[lcNat][$i]); $mod->MxText("ligneLC.tarif", $res[tarif][$i]); } else { $varLC = "LC_" . $lc; $mod->MxFormField("ligneLC.LCnat", "text", $varLC, $res[lcNat][$i], "size=\"10\""); $tarifLC = "tarif_" . $lc; $mod->MxFormField("ligneLC.tarif", "text", $tarifLC, $res[tarif][$i], "size=\"10\""); } $mod->MxBloc("ligneLC", "loop"); } //Ne jamais afficher les boutons suivants // Affichage ou non du champs d'informations. if ($this->infos) { $mod->MxText("informations.infos", $this->infos); } else { $mod->MxBloc("informations", "delete"); } // Affichage ou non du champs d'erreurs. if ($this->erreurs) { $mod->MxText("erreurs.errs", $this->erreurs); } else { $mod->MxBloc("erreurs", "delete"); } $mod->MxHidden("hidden", "navi=" . $session->genNavi($session->getNavi(0), $session->getNavi(1))); $this->af .= $mod->MxWrite("1"); }
function debugInfos() { eko($this->patient); }
static function onceByDay() { $filename = URLLOCAL . 'var/last_date_check_triggers.txt'; $oldDate = null; if (file_exists($filename)) { $oldDate = new clDate(file_get_contents($filename)); } else { $oldDate = clDate::getInstance()->addDays(-1); } $dateToday = clDate::makeDateToday(); file_put_contents($filename, $dateToday->getDate()); if ($dateToday->getDifference($oldDate) > 0) { //eko() eko("une fois par jours"); return true; } return false; }
function launchFTP() { global $options; global $errs; $this->af .= "<h4>Transfert des fichiers HprimXML</h4>"; $r = opendir('hprim/xml/'); for ($i = 0; $fic = readdir($r) and $i < 4; $i++) { } if ($i == 4) { $this->af .= "Connexion au serveur FTP '" . $options->getOption('HprimXML_FTPHost') . ':' . $options->getOption('HprimXML_FTPPort') . "' -> "; $con = ftp_connect($options->getOption('HprimXML_FTPHost')); if (!$con) { $this->af .= "<font color='red'>KO</font><br/>"; $errs->addErreur('HprimXML : Impossible de se connecter au serveur "' . $options->getOption('HprimXML_FTPHost') . ':' . $options->getOption('HprimXML_FTPPort') . '"'); } else { $this->af .= "<font color='green'>OK</font><br/>"; $this->af .= "Authentification au serveur FTP avec l'utilisateur '" . $options->getOption('HprimXML_FTPUser') . "' -> "; $log = ftp_login($con, $options->getOption('HprimXML_FTPUser'), $options->getOption('HprimXML_FTPPass')); if (!$log) { $this->af .= "<font color='red'>KO</font><br/>"; $errs->addErreur('HprimXML : Impossible de se connecter au serveur avec l\'utilisateur "' . $options->getOption('HprimXML_FTPUser') . '"'); } else { $this->af .= "<font color='green'>OK</font><br/>"; $repc = ftp_chdir($con, $options->getOption('HprimXML_FTPRep')); $this->af .= "Changement de répertoire sur le serveur : '" . $options->getOption('HprimXML_FTPRep') . "' -> "; if (!$repc) { $this->af .= "<font color='red'>KO</font><br/>"; $errs->addErreur('HprimXML : Impossible de changer de répertoire "' . $options->getOption('HprimXML_FTPRep') . '"'); } else { $this->af .= "<font color='green'>OK</font><br/>"; closedir($r); $r = opendir('hprim/xml/'); while ($fic = readdir($r)) { if ($fic != "." and $fic != ".." and $fic != "ok") { // Gestion du fichier .ok $name = explode('.', $fic); // eko ( $name ) ; if ($name[1] == 'ok') { $tab[$name[0]] = 1; } } } if (is_array($tab)) { while (list($key, $val) = each($tab)) { $this->af .= " - Envoi du fichier '{$key}' -> "; eko('hprim/xml/' . $key . '.xml'); $put1 = ftp_put($con, $key . ".xml", 'hprim/xml/' . $key . '.xml', FTP_ASCII); $put2 = ftp_put($con, $key . ".ok", 'hprim/xml/' . $key . '.ok', FTP_ASCII); if (!$put1 or !$put2) { $this->af .= "<font color='red'>KO</font><br/>"; $errs->addErreur('HprimXML : Impossible d\'envoyer le fichier "' . $fic . '".'); } else { $this->af .= "<font color='green'>OK</font><br/>"; rename('hprim/xml/' . $key . ".ok", 'hprim/xml/ok/' . $key . ".ok"); rename('hprim/xml/' . $key . ".xml", 'hprim/xml/ok/' . $key . ".xml"); } } } } } } } else { $this->af .= "Aucun fichier à traiter dans le répertoire 'hprim/xml/'.<br/>"; } }
public function applyActions($etape) { global $formxSession; $actions = $etape->getElementsByTagName('ACTION'); foreach ($actions as $action) { //on teste la condition si yen a une $condition = $action->getElementsByTagName('Cond')->item(0); if ($condition) { if (!$this->testCondDOM($action)) { $action->setAttribute('cond', 'false'); continue; } $action->setAttribute('cond', 'true'); } switch ($action->getAttribute('type')) { //creation d'une autre instance de formulaire case 'formxproc': $this->callFunc($action->getAttribute('id_formxproc')); break; case 'goto': //goto revient à dupliquer une partie du code xml situé entre les étapes etape_goto et etape_courante $currentEtapeId = $etape->getAttribute('id'); $gotoEtapeId = $action->getAttribute('step'); $options = $action->getAttribute('options'); $etapes = $this->XMLDOM->getElementsByTagName('ETAPE'); $objBas = $etape; $trouveCurrent = false; $trouveGoto = false; foreach ($etapes as $etapeTraitee) { //parcours des étapes if ($etapeTraitee->getAttribute('id') == $gotoEtapeId) { //etape goto $trouveGoto = true; if ($trouveCurrent == false) { //On est arrivé à l'etape goto qui est avant l'etape courante $newEtape = $this->cloneEtape($gotoEtapeId, $objBas->getAttribute('id'), $options); $objBas = $newEtape; if ($currentEtapeId == $gotoEtapeId) { //si l'etape goto est egalement l'etape courante, sortie break; } } else { // On est arrivé à l'etape goto apres avoir trouvé l'etape courante, fin du traitement break; } } else { if ($etapeTraitee->getAttribute('id') == $currentEtapeId) { //etape action $trouveCurrent = true; if ($trouveGoto && !$etapeTraitee->hasAttribute('IamAclone')) { $this->cloneEtape($currentEtapeId, $objBas->getAttribute('id'), $options); // clonage de l'etape courante puis fin du traitement break; } elseif ($trouveGoto) { break; } } else { //etape quelconque if (!$trouveCurrent && !$trouveGoto) { //sortie de la boucle si l'etape en cours de traitement n'est pas concernée continue; } elseif (!$trouveCurrent && $trouveGoto && !$etapeTraitee->hasAttribute('IamAclone')) { //cas ou il faut cloner l'etape traitée apres l'etape courrante $newEtape = $this->cloneEtape($etapeTraitee->getAttribute('id'), $objBas->getAttribute('id'), $options); $objBas = $newEtape; } elseif ($trouveCurrent && !$trouveGoto) { //cas ou il faut sauter l'étape $this->closeEtape($etapeTraitee); } } } } break; case 'trigger': $newInstance = new clFoRmX($this->ids, 'NO_POST_THREAT'); if ($newInstance->loadForm($action->getAttribute('id_formx') . '.xml')) { $valeurs = $action->getElementsByTagName('Affect'); foreach ($valeurs as $valeur) { $newInstance->setFormVar($valeur->getAttribute('id_var'), utf8_decode(getValueFrom($valeur->nodeValue)), 'no_simplexml_update'); } $newInstance->initInstance(); } unset($newInstance); break; //envoi de mail //envoi de mail case 'mail': $sujet = utf8_decode($action->getElementsByTagName('Libelle')->item(0)->nodeValue); $content_type = "Content-Type: text/html; charset=\"iso-8859-1\""; if (is_object($action->getElementsByTagName('Expediteur')->item(0))) { $from = $this->getValueFrom($action->getElementsByTagName('Expediteur')->item(0)->nodeValue); } else { $from = '*****@*****.**'; } $head = "From :{$from}\n" . $content_type . "\n"; $message = utf8_decode(formxTools::helper_str_mef($action->getElementsByTagName('Message')->item(0)->nodeValue)); if ($action->getAttribute('joindreForm')) { $htmlform = utf8_decode(formxTools::helper_str_mef($this->affFoRmX())); $filename = "css/FoRmX_mail.css"; $handle = fopen($filename, 'r'); $style = fread($handle, filesize($filename)); fclose($handle); $filename = "css/FoRmX.css"; $handle = fopen($filename, 'r'); $style .= fread($handle, filesize($filename)); fclose($handle); $htmlMessage = "<html><body><style>{$style}</style><br/>{$message}<br/><br/>{$htmlform}</body></html>"; } else { $htmlMessage = "<html><body><br/>{$message}<br/></body></html>"; } foreach ($action->getElementsByTagName('Destinataire') as $dest) { $strDesti = $this->getValueFrom($dest->nodeValue, true); mail($strDesti, $sujet, $htmlMessage, $head); } break; case 'editdoc': //vidage du cache //$mapoub = new clPoubelle(); //$mapoub ->setRepertoire (FX_URLCACHE) ; //$mapoub ->purgerRepertoire(3600); $i = 0; if (isset($output)) { unset($output); } foreach ($action->getElementsByTagName('Document') as $docu) { //mail($dest->nodeValue,$sujet,$htmlMessage,$head); if (isset($param)) { unset($param); } if ($docu->getAttribute('nom_doc')) { $param[cw] = "WHERE nom='" . utf8_decode($docu->getAttribute('nom_doc')) . "' ORDER BY VERSION DESC LIMIT 0,1"; } if ($docu->getAttribute('id_doc')) { $param[cw] = "WHERE \t\t\t\tiddocument='" . utf8_decode($docu->getAttribute('id_doc')) . "'"; } $req = new clResultQuery(); $ras = $req->Execute("Fichier", "getDocuments", $param, "ResultQuery"); $ok = ''; if ($ras['INDIC_SVC'][2] >= 1) { $docs = new clDocuments("impr", 'DocumentsTegeria'); $date = new clDate(); $rep = $date->getYear() . "/" . $date->getMonthNumber() . "/"; $output[$i] = $date->getTimestamp() . "-" . $this->ids . "-" . $ras['iddocument'][0] . ".pdf"; $dataa[idpatient] = $this->ids; $dataa[iddocument] = $ras['iddocument'][0]; $dataa[nomedition] = $ras[nom][0]; $dataa[urledition] = $rep . $output[0]; $dataa[iduser] = $formxSession->getUser(); $dataa[date] = $date->getDatetime(); $sel[$i] = $dataa[iddocument]; $requetee = $this->getSession()->getObjRequete($dataa, BDD, DOCSEDITES); $requetee->addRecord(); unset($dataa); $rep = $date->getYear() . "/" . $date->getMonthNumber() . "/"; $ok = 'y'; } else { eko($ras[INDIC_SVC]); $this->addErreur("le document type " . $docu->getAttribute('nom_doc') . " n'a pas été trouvé"); break; } $i++; } if (!$ok) { break; } $rep = $date->getYear() . "/" . $date->getMonthNumber() . "/"; $buff_pdf = $docs->genDoc($sel, $this->ids, $output, FX_URLDOCS . $rep); //popup de l'ouverture du doc $this->af .= "<SCRIPT LANGUAGE=\"JavaScript\">window.open('" . FX_URLCACHEWEB . $buff_pdf . "','_blank','toolbar=0, location=0, directories=0, status=0, scrollbars=0, resizable=0, copyhistory=0, menuBar=0');</SCRIPT>"; break; default: break; } } }
function genResultats() { global $session; // Chargement du template ListMaker. $list = new ListMaker("template/AffichageLogs.html"); // Transmission des variables utiles à ListMaker. $list->addUserVar('navi', $session->genNavi($session->getNavi(0), $session->getNavi(1))); $list->addUrlVar('navi', $session->genNavi($session->getNavi(0), $session->getNavi(1))); $list->addUserVar('utilisateur', isset($_GET['utilisateur']) ? $_GET['utilisateur'] : '%'); $list->addUrlVar('utilisateur', isset($_GET['utilisateur']) ? $_GET['utilisateur'] : '%'); $list->addUserVar('type', isset($_GET['type']) ? $_GET['type'] : '%'); $list->addUrlVar('type', isset($_GET['type']) ? $_GET['type'] : '%'); $list->addUserVar('ip', isset($_GET['ip']) ? $_GET['ip'] : '%'); $list->addUrlVar('ip', isset($_GET['ip']) ? $_GET['ip'] : '%'); $list->addUserVar('dateMin', isset($_GET['dateMin']) ? $_GET['dateMin'] : $this->dateMin); $list->addUrlVar('dateMin', isset($_GET['dateMin']) ? $_GET['dateMin'] : $this->dateMin); $list->addUserVar('dateMax', isset($_GET['dateMax']) ? $_GET['dateMax'] : $this->dateMax); $list->addUrlVar('dateMax', isset($_GET['dateMax']) ? $_GET['dateMax'] : $this->dateMax); $list->addUserVar('filtreDescription', isset($_GET['filtreDescription']) ? $_GET['filtreDescription'] : ''); $list->addUrlVar('filtreDescription', isset($_GET['filtreDescription']) ? $_GET['filtreDescription'] : ''); $list->addUserVar('filtreUtilisateur', isset($_GET['filtreUtilisateur']) ? $_GET['filtreUtilisateur'] : ''); $list->addUrlVar('filtreUtilisateur', isset($_GET['filtreUtilisateur']) ? $_GET['filtreUtilisateur'] : ''); $list->addUserVar('filtreCible', isset($_GET['filtreCible']) ? $_GET['filtreCible'] : ''); $list->addUrlVar('filtreCible', isset($_GET['filtreCible']) ? $_GET['filtreCible'] : ''); $list->addUserVar('filtreIP', isset($_GET['filtreIP']) ? $_GET['filtreIP'] : ''); $list->addUrlVar('filtreIP', isset($_GET['filtreIP']) ? $_GET['filtreIP'] : ''); $list->addUserVar('nbResultats', isset($_GET['nbResultats']) ? $_GET['nbResultats'] : $this->pagination); $list->addUrlVar('nbResultats', isset($_GET['nbResultats']) ? $_GET['nbResultats'] : $this->pagination); // Nom des colonnes. $list->setSortColumn('col1', 'Type', 'type'); $list->setSortColumn('col2', 'Utilisateur', 'utilisateur'); $list->setSortColumn('col3', 'Adresse IP', 'ip'); $list->setSortColumn('col5', 'Description', 'description'); $list->setSortColumn('col6', 'cible', 'cible'); $list->setSortColumn('col7', 'Page', 'tempsPage'); $list->setSortColumn('col8', 'SQL', 'tempsSQL'); $list->setSortColumn('col9', 'Nb', 'nombreSQL'); $list->setSortColumn('col4', 'Date de connexion', 'date'); // Tri automatique sur la colonne de la date de la dernière action effectuée. $list->setdefaultSort(''); // Choix des couleurs à alterner d'une ligne sur l'autre. $list->setAlternateColor("pair", "impair"); $dateMin = new clDate($this->dateMin); $dateMax = new clDate($this->dateMax); // Fabrication de la requête. if ($this->pagination == "Tous") { $limit = ''; } else { $limit = "LIMIT 0, " . $this->pagination; } $param['cw'] = "WHERE \n type LIKE '" . (isset($_GET['type']) ? $_GET['type'] : '%') . "' \n AND iduser LIKE '" . (isset($_GET['filtreUtilisateur']) ? $_GET['filtreUtilisateur'] ? $_GET['filtreUtilisateur'] . '%' : $_GET['utilisateur'] : '%') . "' \n AND ip LIKE '" . (isset($_GET['filtreIP']) ? $_GET['filtreIP'] ? $_GET['filtreIP'] . '%' : $_GET['ip'] : '%') . "' \n AND description LIKE '" . (isset($_GET['filtreDescription']) ? $_GET['filtreDescription'] : '') . "%' \n AND idcible LIKE '" . (isset($_GET['filtreCible']) ? $_GET['filtreCible'] : '') . "%' \n AND date BETWEEN '" . $dateMin->getDatetime() . "' AND '" . $dateMax->getDatetime() . "' AND idapplication=" . IDAPPLICATION . "\n ORDER BY date DESC {$limit}"; $param['cs'] = "*"; $req = new clResultQuery(); $res = $req->Execute("Fichier", "getLogs", $param, "ResultQuery"); eko($res['INDIC_SVC']); // On parcourt les logs récupérés. for ($i = 0; isset($res['idlog'][$i]); $i++) { $item['ip'] = $res['ip'][$i]; $item['utilisateur'] = $res['iduser'][$i]; $item['date'] = $res['date'][$i]; $item['type'] = $res['type'][$i]; $item['description'] = $res['description'][$i]; $item['cible'] = $res['idcible'][$i]; $item['tempsPage'] = sprintf("%0.4f", $res['tempsPage'][$i]); $item['tempsSQL'] = sprintf("%0.4f", $res['tempsSQL'][$i]); $item['nombreSQL'] = $res['nombreSQL'][$i]; $list->addItem($item); } // On retourne le tableau généré. return $list->getList(); }
function checkCora() { global $options; if ($options->getOption("SaisieActeObligatoire") and $options->getOption('ActiverCORAModuleActes')) { $param['nsej'] = $this->patient->getNSej(); $req = new clResultQuery(); $res = $req->Execute("Fichier", "CCAM_Cora", $param, "ResultQuery"); eko($res); if ($res['INDIC_SVC'][2]) { return 1; } else { return 0; } } else { return 1; } }
function majOptionsProd() { // Récupération de la liste des options en dev. $req = new clResultQuery(); $param['cw'] = "WHERE idapplication=" . IDAPPLICATION; $res = $req->Execute("Fichier", "getOptions", $param, "ResultQuery"); //eko ( $res[INDIC_SVC] ) ; // Préparation de la liste des attributs d'une option. while (list($key, $val) = each($res)) { if ($key != "INDIC_SVC" and $key != "idoption") { $keys[] = $key; } } // Pour chaque option, for ($i = 0; isset($res['idoption'][$i]); $i++) { // On regarde si elle existe en production. $param['cw'] = "WHERE libelle='" . addslashes($res['libelle'][$i]) . "' AND idapplication=" . IDAPPLICATION; $ras = $req->Execute("Fichier", "getOptionsProd", $param, "ResultQuery"); //eko ( $ras[INDIC_SVC] ) ; // S'il elle n'existe pas, if (!$ras['INDIC_SVC'][2]) { // On prépare le tableau contenant les données de l'option. for ($j = 0; isset($keys[$j]); $j++) { $data[$keys[$j]] = $res[$keys[$j]][$i]; } // Et on crée cette option en production. $raq = new clRequete(BASEXHAM, TABLEOPTS, $data, 'prod'); $ris = $raq->addRecord(); eko("insert : " . $res['libelle'][$i]); // Si elle existe, } else { // On crée le tableau contenant les champs à mettre à jour. for ($j = 0; isset($keys[$j]); $j++) { if ($keys[$j] != "valeur") { $data[$keys[$j]] = $res[$keys[$j]][$i]; } } // Mise à jour de l'option. eko("update : " . $res['libelle'][$i]); $raq = new clRequete(BASEXHAM, TABLEOPTS, $data, 'prod'); $ris = $raq->updRecord("libelle='" . addslashes($res['libelle'][$i]) . "' AND idapplication=" . IDAPPLICATION); } } // Message d'information sur l'opération effectuée. $this->infos .= "La liste des droits a été mise à jour en production."; }
function myErrorHandler($errno, $errstr, $errfile, $errline, $jambon) { global $xham; if (!is_object($xham) || !is_object($xham->errs)) { $errs = new XhamErreurs(); } else { $errs = $xham->errs; } //si dans bloc sans erreurs if ($errs->inCatch) { return; } switch ($errno) { case E_PARSE: $errs->addErreur("parse error"); $errs->end(); break; case E_ERROR: $errs->addErreur("<b>PHP ERREUR</b> [{$errno}] {$errstrbr} />Erreur fatale à la ligne {$errline} dans le fichier {$errfile}"); break; case E_WARNING: $errs->addErreur("<b>PHP ALERTE</b> [{$errno}] {$errstr} in file {$errfile} at line {$errline}<br />\n"); break; case E_NOTICE: if (!defined("NONOTICE") or !NONOTICE) { if (function_exists('eko')) { eko("<b>NOTICE</b> [{$errno}] {$errstr} in file {$errfile} at line {$errline}<br />\n"); } else { print "<b>NOTICE</b> [{$errno}] {$errstr} in file {$errfile} at line {$errline}<br />\n"; } } if (defined('PRINT_ERRORS') && PRINT_ERRORS) { print "<b>NOTICE</b> [{$errno}] {$errstr} in file {$errfile} at line {$errline}<br />\n"; /* if( ob_get_contents() ) ob_flush() ; flush() ; */ } break; case 2048: //$errs->addErreur ("Non-static method should not be called statically (Avertissement non bloquant que vous n'auriez pas si DB testait les releases de php en dev avant de les mettre en prod.)") ; $errs->addErreur("Type d'erreur inconnu : [{$errno}] {$errstr} in file {$errfile} at line {$errline}<br />\n"); break; default: $errs->addErreur("Type d'erreur inconnu : [{$errno}] {$errstr} in file {$errfile} at line {$errline}<br />\n"); break; } }
function showLogs() { global $session; // Chargement du template ModeliXe. $mod = new ModeliXe("rpuShowLogs.html"); $mod->SetModeliXe(); $r = opendir(URLRPULOGS); while ($fic = readdir($r)) { if ($fic != "." and $fic != "..") { $tabLogs[$fic] = $fic; } } closedir($r); rsort($tabLogs); if (!is_array($tabLogs)) { $tabLogs = array(); } $mod->MxSelect('listeLogs', 'nomLog', $_POST['nomLog'], $tabLogs, '', '', 'onChange="reload(this.form)"'); $mod->MxHidden('hidden', 'navi=' . $session->genNavi($session->getNavi(0), $session->getNavi(1))); if (!$_POST['nomLog']) { $_POST['nomLog'] = 0; } //current($tabLogs) ; eko(URLRPULOGS . $_POST['nomLog']); eko($tabLogs[$_POST['nomLog']]); $mod->MxText('logsRpu', fread(fopen(URLRPULOGS . $tabLogs[$_POST['nomLog']], "r"), filesize(URLRPULOGS . $tabLogs[$_POST['nomLog']]))); $this->af .= $mod->MxWrite("1"); }
function Formulaire_Transfert_Launch($formx) { global $session; $id_instance = $formx->getIdInstance(); $idu = $formx->getVar('ids'); $idpatient = $session->getNavi(2); $req = new clResultQuery(); $param = array(); $param['cw'] = "where idpatient='" . $idpatient . "'"; $param['table'] = PPRESENTS; $res = $req->Execute("Fichier", "getPatients", $param, "ResultQuery"); //$idpatient = $res['idpatient'][0] ; eko($res); $data['idpatient'] = $res['idpatient'][0]; $data['idu'] = $res['idu'][0]; $data['ilp'] = $res['ilp'][0]; $data['nsej'] = $res['nsej'][0]; $data['uf'] = $res['uf'][0]; $data['nom'] = $res['nom'][0]; $data['prenom'] = $res['prenom'][0]; $data['sexe'] = $res['sexe'][0]; $data['dt_naissance'] = $res['dt_naissance'][0]; $data['adresse_libre'] = $res['adresse_libre'][0]; $data['adresse_cp'] = $res['adresse_cp'][0]; $data['adresse_ville'] = $res['adresse_ville'][0]; $data['telephone'] = $res['telephone'][0]; $data['prevenir'] = $res['prevenir'][0]; $data['medecin_traitant'] = $res['medecin_traitant'][0]; $data['dt_admission'] = $res['dt_admission'][0]; $data['adresseur'] = $res['adresseur'][0]; $data['mode_admission'] = $res['mode_admission'][0]; $data['dt_examen'] = $res['dt_examen'][0]; $data['medecin_urgences'] = $res['medecin_urgences'][0]; $data['ide'] = $res['ide'][0]; $data['salle_examen'] = $res['salle_examen'][0]; $data['motif_recours'] = $res['motif_recours'][0]; $data['code_gravite'] = $res['code_gravite'][0]; $data['ccmu'] = $res['ccmu'][0]; $data['gemsa'] = $res['gemsa'][0]; $data['traumato'] = $res['traumato'][0]; $data['dest_souhaitee'] = $res['dest_souhaitee'][0]; $data['dest_attendue'] = $res['dest_attendue'][0]; $data['moyen_transport'] = $res['moyen_transport'][0]; $data['motif_transfert'] = $res['motif_transfert'][0]; $data['dt_sortie'] = $res['dt_sortie'][0]; $data['recours_code'] = $res['recours_code'][0]; $data['recours_categorie'] = $res['recours_categorie'][0]; $data['type_destination'] = $res['type_destination'][0]; $data['diagnostic_categorie'] = $res['diagnostic_categorie'][0]; $data['diagnostic_libelle'] = $res['diagnostic_libelle'][0]; $data['diagnostic_code'] = $res['diagnostic_code'][0]; $data['etatUHCD'] = $res['etatUHCD'][0]; $data['dt_UHCD'] = $res['dt_UHCD'][0]; $data['provenance'] = $res['provenance'][0]; $data['dest_pmsi'] = $res['dest_pmsi'][0]; $data['orientation'] = $res['orientation'][0]; $data['iduser'] = '******'; $data['manuel'] = $res['manuel'][0]; if ($res['uf'][0] == '6004') { $data['uf'] = '6006'; $base = 'terminal2_tuv2'; } elseif ($res['uf'][0] == '6006') { $data['uf'] = '6004'; $base = 'terminal_tuv2'; } elseif ($res['uf'][0] == 'UHCD6004') { $data['uf'] = 'UHCD6006'; $base = 'terminal2_tuv2'; } elseif ($res['uf'][0] == 'UHCD6006') { $data['uf'] = 'UHCD6004'; $base = 'terminal_tuv2'; } $req = new clRequete($base, PPRESENTS, $data); $req->addRecord(); $req = new clRequete(BDD, PPRESENTS); $req->delRecord("idpatient={$idpatient}"); header('Location:index.php?navi=TGlzdGVfUHJlc2VudHM='); //eko ( $data ) ; /* $param = array(); $param['etat'] = "a"; $param['idpatient'] = $idpatient; $param['id_instance'] = $id_instance; $param['dt_creation'] = date("Y")."-".date("m")."-".date("d")." ".date("H").":".date("i").":00"; //eko ($param); $req = new clRequete(BDD,"radios",$param); $req->addRecord(); */ //$res = $req -> Execute ( "Fichier", "putFormulaireRadioData", $param, "ResultQuery" ) ; //eko($res); return ""; }
function getListeItems($nomListe, $modelixe = '', $placement = '', $nomItem = '', $opt = '') { $this->xham->options->checkOptionListe($nomListe); // Préparation du type de classement pour la requête. switch ($this->xham->getOption($nomListe)) { case 'Manuel': $order = "ORDER BY rang"; break; case 'Alphabétique': $order = "ORDER BY nomitem"; break; case 'Alphabétique inversé': $order = "ORDER BY nomitem DESC"; break; default: $order = "ORDER BY nomitem"; break; } $param['cw'] = "WHERE nomliste='" . addslashes($nomListe) . "' {$order}"; $res = $this->xham->Execute("Fichier", "getListesItems", $param, "ResultQuery"); // Affichage en cas de débugage. if (DEBUGLISTES) { eko($res['INDIC_SVC']); } // Préparation du tableau à retourner pour un select de modelixe. if ($modelixe) { if ($opt) { $tab[] = SELECTLISTE; } // Placement ou affichage simple. if ($placement) { $placer = "Après "; $tab[0] = "En début de liste"; $type = "iditem"; $val = 0; } else { $type = "iditem"; } // Fabrication du tableau. for ($i = 0; isset($res['iditem'][$i]); $i++) { if ($opt) { $tab[$res['nomitem'][$i]] = $res['nomitem'][$i]; } else { if ($nomItem == $res['nomitem'][$i]) { $rang = $res[$type][$i]; $tab[$rang] = "Position actuelle"; } else { $tab[$res[$type][$i] + (isset($val) ? $val : '')] = (isset($placer) ? $placer : '') . $res['nomitem'][$i]; } } } // Retourne le tableau au format attendu par modelixe. return $tab; } else { // Retourne le tableau au format normal de ResultQuery. return $res; } }
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); }
function sock_mail($auth, $to, $subj, $body, $head, $from, $cc = '') { global $options; $lb = "\r\n"; $body_lb = "\r\n"; $loc_host = "localhost"; $smtp_acc = $options->getOption('SMTP_User'); $smtp_pass = $options->getOption('SMTP_Pass'); $smtp_host = $options->getOption('SMTP_Host'); $hdr = explode($lb, $head); //header if ($body) { $bdy = preg_replace("/^\\./", "..", explode($body_lb, $body)); } // build the array for the SMTP dialog. Line content is array(command, success code, additonal error message) if ($auth == 1) { // SMTP authentication methode AUTH LOGIN, use extended HELO "EHLO" $smtp = array(array("EHLO " . $loc_host . $lb, "220,250", "HELO error: "), array("AUTH LOGIN" . $lb, "334", "AUTH error:"), array(base64_encode($smtp_acc) . $lb, "334", "AUTHENTIFICATION error : "), array(base64_encode($smtp_pass) . $lb, "235", "AUTHENTIFICATION error : ")); } else { // no authentication, use standard HELO $smtp = array(array("HELO " . $loc_host . $lb, "220,250", "HELO error: ")); } // print $head ; // envelop $smtp[] = array("MAIL FROM: <" . $from . ">" . $lb, "250", "MAIL FROM error:"); $tos = explode(',', $to); // print affTab ( $tos ) ; $toss = ''; for ($i = 0; isset($tos[$i]); $i++) { $smtp[] = array("RCPT TO: <" . $tos[$i] . ">" . $lb, "250", "RCPT TO error: "); } //$smtp[] = array ( "RCPT CC: <".$cc.">".$lb, "250", "RCPT TO error: " ) ; // begin data $smtp[] = array("DATA" . $lb, "354", "DATA error: "); // header $smtp[] = array("Subject: " . $subj . $lb, "", ""); if ($to) { $smtp[] = array("To:" . $to . $lb, "", ""); } //$smtp[] = array ( "Cc:dborel@ch-hyeres.fr".$lb, "", "" ) ; // AF 15-12-06 - Missing protocol //$smtp[] = array("From:".$from.$lb,"",""); foreach ($hdr as $h) { $smtp[] = array($h . $lb, "", ""); } // end header, begin the body $smtp[] = array($lb, "", ""); if ($bdy) { foreach ($bdy as $b) { $smtp[] = array($b . $body_lb, "", ""); } } // end of message $smtp[] = array("." . $lb, "250", "DATA(end)error: "); $smtp[] = array("QUIT" . $lb, "221", "QUIT error: "); // open socket $fp = @fsockopen($smtp_host, 25); if (!$fp) { eko("<b>Error:</b> Cannot connect to " . $smtp_host . "<br>"); } $banner = @fgets($fp, 1024); // perform the SMTP dialog with all lines of the list foreach ($smtp as $req) { $r = $req[0]; // send request @fputs($fp, $req[0]); // get available server messages and stop on errors if ($req[1]) { while ($result = @fgets($fp, 1024)) { if (substr($result, 3, 1) == " ") { break; } } if (!strstr($req[1], substr($result, 0, 3))) { eko("{$req['2']}.{$result}<br>"); } } } $result = @fgets($fp, 1024); // close socket @fclose($fp); return 1; }
function majPatientHL7($data, $table, $ilp = '', $base = BDD, $res = '') { global $errs; unset($data['uf']); unset($data['prevenir']); unset($data['medecin_traitant']); unset($data['mode_admission']); if ($ilp) { unset($data['nsej']); unset($data['dt_admission']); $requete = new clRequete($base, $table, $data); $res = $requete->updRecord("ilp='" . $data['ilp'] . "'"); } elseif ($data['nsej']) { if ($res['dt_sortie'][0] != '0000-00-00 00:00:00') { $dates = new clDate($res['dt_sortie'][0]); $datea = new clDate($data['dt_admission']); eko($data['dt_admission']); if ($datea->getTimestamp() > $dates->getTimestamp()) { unset($data['dt_admission']); } eko($data['dt_admission']); } $requete = new clRequete($base, $table, $data); $res = $requete->updRecord("nsej='" . $data['nsej'] . "'"); } if ($ilp) { //$errs->addErreur ( afftab($res) ) ; } //eko ( $data ) ; //eko ( $res ) ; $this->mods1++; }
function jambon($formx) { eko("coucou"); return "0"; }