function getAllValuesFromFormx($idformx, $values = '', $ids = '', $options = "") { if (!$ids) { $ids = $this->ids; } if ($values) { if (!is_array($values)) { $values = array($values); } } $array_oef = array(); if (ereg("idinstance", $options)) { $res['id_instance'][0] = $idformx; $nb = 1; } else { $base = $this->getSession()->getBase(); $table = $this->getSession()->getTable(); $obReq = $this->getSession()->getObjRequete('', $base, $table); return $obReq->getGen(" idformx = '{$idformx}' AND ids = '{$ids}' ORDER BY dt_modif DESC ", 'resultquery'); /* $req = new clResultQuery ; $param = array(); $param['table']=$this->session->tableInstances; $param['idformx']=$idformx; $param['ids']=$ids; $res = $req -> Execute ( "Fichier", "FX_getValuesInstance", $param, "ResultQuery" ) ; $nb = $res['INDIC_SVC'][2]; if ( $nb == 0 ) return array("INDIC_SVC" => array( 2 => 0 ) ); * */ } $ret = array(); for ($i = 0; $i < $nb; $i++) { $newInstance = new clFoRmX($this->ids, 'NO_POST_THREAT'); $r = $newInstance->loadInstance($res['id_instance'][$i]); if (!$r) { return array("INDIC_SVC" => array(2 => 0)); } if (!$values) { $values = $newInstance->getAllItems(); //eko("ttval"); } else { //eko($values); } foreach ($values as $val) { if (!isset($ret[$val])) { $ret[$val] = array(); } $ret[$val][$i] = utf8_decode($newInstance->getFormVar($val)); } if (ereg("moreinfos", $options, $array_oef)) { $ret["infosmore_auteur"][$i] = $res['author'][$i]; $date_creation = new clDate($res['dt_creation'][$i]); $ret["infosmore_dt_creation"][$i] = $date_creation->getDateTextFull(); } } unset($newInstance); $ret['INDIC_SVC'][2] = $nb; return $ret; }
function getSessions() { global $session; // Préparation de deux objets clDate. $date = new clDate(); $last = new clDate(); // Chargement du template ModeliXe. $mod = new ModeliXe("SessionsActuelles.mxt"); $mod->SetModeliXe(); // Chargement du template ListMaker. $list = new ListMaker("template/SessionsActuelles.html"); // Transmission de la variable de navigation à ListMaker. $list->addUserVar('navi', $session->genNavi($session->getNavi(0), $session->getNavi(1))); $list->addUrlVar('navi', $session->genNavi($session->getNavi(0), $session->getNavi(1))); // Nom des colonnes. $list->setSortColumn('col1', 'Utilisateur', 'uid'); $list->setSortColumn('col2', 'Type', 'type'); $list->setSortColumn('col3', 'Adresse IP', 'ip'); $list->setSortColumn('col4', 'Date de connexion', 'date'); $list->setSortColumn('col5', 'Dernière action', 'last'); $list->setSortColumn('col6', 'Page parcourue', 'localisation'); // Tri automatique sur la colonne de la date de la dernière action effectuée. $list->setdefaultSort('col5'); // Choix des couleurs à alterner d'une ligne sur l'autre. $list->setAlternateColor("pair", "impair"); // Récupération des sessions actuelles. $param['cw'] = "WHERE idapplication=" . IDAPPLICATION . " ORDER BY last DESC"; $req = new clResultQuery(); $res = $req->Execute("Fichier", "getSessionsActuelles", $param, "ResultQuery"); // On parcourt les sessions récupérées. for ($i = 0; isset($res['idsactu'][$i]); $i++) { // Initialisation des dates. $date->setDate($res['date'][$i]); $last->setDate($res['last'][$i]); // Préparation du lien pour aller directement sur la page parcourue par l'utilisateur. if (ENCODERURL) { $lien = '<a href="' . URLNAVI . $res['localisation'][$i] . '">' . base64_decode($res['localisation'][$i]) . '</a>'; } else { $lien = '<a href="' . URLNAVI . $res['localisation'][$i] . '">' . $res['localisation'][$i] . '</a>'; } // Préparation des différentes colonnes : uid, type, ip, date, last et localisation. $item['uid'] = $res['uid'][$i]; $item['type'] = $res['type'][$i]; $item['ip'] = $res['ip'][$i]; $item['date'] = $date->getDateTextFull(); $item['last'] = $last->getDateTextFull(); $item['localisation'] = $lien; $list->addItem($item); } // Récupération du résultat de ListMaker dans ModeliXe. $mod->MxText("table", $list->getList(isset($pagination) ? $pagination : '')); // Récupération du code généré par ModeliXe. return $mod->MxWrite("1"); }
function setAffichage() { global $session; global $options; // Vérification du droit de lecture sur les documents. if ($session->getDroit("Administration_Documents", "r") and $options->getOption("ModuleDocuments")) { // Génération du mini-menu. $this->af .= $this->getMenuDocs(); // Si le document est en cours de modification et que le droit est présent, on invoque le formulaire de modification. if ($session->getDroit("Administration_Documents", "m") and $session->getNavi(2) == "modDoc") { $this->af .= $this->modDocForm(); // Si une création est demandée et le droit présent, alors on invoque le formulaire d'ajout de document. } elseif ($_POST['addDoc'] and $session->getDroit("Administration_Documents", "w")) { $this->af .= $this->addDocForm(); // Si nous voulons modifier les bannières du document, alors invoque la gestion des listes pour les documents. } elseif (($session->getNavi(2) == "gestListe" or $_POST['gestDoc'] or $_POST['gestDoc_x']) and $session->getDroit("Administration_Documents", "m")) { // Génération de la gestion des listes. $liste = new clListes($this->DocumentsNameList); $this->af .= $liste->getAffichage(); // Génération du document au format pdf. } elseif ($session->getNavi(2) == "voirDoc") { if (IDAPPLICATION == '2') { global $pas_daffichage; $pas_daffichage = '1'; } $this->genDoc(array($session->getNavi(3))); } else { // Ajout réel d'un nouveau document. if ($session->getDroit("Administration_Documents", "w") and $session->getNavi(2) == "validAddDoc" and ($_POST['Ajouter'] or $_POST['Ajouter_x'])) { $this->addDoc(); } // Mise à jour réelle d'un document. if ($session->getDroit("Administration_Documents", "m") and $session->getNavi(2) == "validModDoc" and ($_POST['Modifier'] or $_POST['Modifier_x'])) { $this->modDoc(); } // Suppression d'un document. if ($session->getDroit("Administration_Documents", "d") and $session->getNavi(2) == "validModDoc" and ($_POST['Supprimer'] or $_POST['Supprimer_x'])) { $this->delDoc(); } // Récupération de la liste des catégories de documents. $param[cw] = " ORDER BY categorie"; $req = new clResultQuery(); $res = $req->Execute("Fichier", "getCategoriesDocuments", $param, "ResultQuery"); // Remplissage du template. $mod = new ModeliXe("GestionDocuments.mxt"); $mod->SetModeliXe(); // Affichage des messages d'informations. if ($this->infos) { $mod->MxText("informations.infos", $this->infos); } else { $mod->MxBloc("informations", "modify", " "); } // Affichage des messages d'erreurs. if ($this->erreurs) { $mod->MxText("erreurs.errs", $this->erreurs); } else { $mod->MxBloc("erreurs", "modify", " "); } // Parcours des différentes catégories de documents. for ($i = 0; isset($res[categorie][$i]); $i++) { // Recherche des dernières versions des documents de la catégorie parcourue. $param[cw] = "WHERE categorie='" . $res[categorie][$i] . "' AND fin_validite='0000-00-00 00:00:00' ORDER BY nom"; $req = new clResultQuery(); $ras = $req->Execute("Fichier", "getDocuments", $param, "ResultQuery"); // Si on a un résultat, alors on parcourt ces documents. if ($ras[INDIC_SVC][2]) { // Et on affiche le titre de la catégorie. $mod->MxText("categorie.titre", $res[categorie][$i]); for ($j = 0; isset($ras[iddocument][$j]); $j++) { //Pour chaque document, on génère une ligne. $date = new clDate($ras[deb_validite][$j]); // Gestion des lignes paires et impaires pour la mise en page... if ($j % 2) { $mod->MxText("categorie.document.ligne", "<tr class=\"paire\">"); } else { $mod->MxText("categorie.document.ligne", "<tr class=\"impaire\">"); } // Nom du document. $mod->MxText("categorie.document.nomDocument", $ras[nom][$j]); // Date de la dernière modification. $mod->MxText("categorie.document.dateModification", $date->getDateTextFull() . " (v" . $ras[version][$j] . ")"); // Si le droit de modification est présent, un lien est généré. if ($session->getDroit("Administration_Documents", "m")) { $mod->MxImage("categorie.document.imgMod", URLIMGMOD, "Modifier"); $mod->MxUrl("categorie.document.modDoc", URLNAVI . $session->genNavi($session->getNavi(0), $session->getNavi(1), "modDoc", $ras[iddocument][$j])); } $mod->MxImage("categorie.document.imgVoir", URLIMGPDF, "Afficher"); $mod->MxUrl("categorie.document.voirDoc", URLNAVI . $session->genNavi($session->getNavi(0), $session->getNavi(1), "voirDoc", $ras[iddocument][$j])); $mod->MxBloc("categorie.document", "loop"); } $mod->MxBloc("categorie", "loop"); } } // Récupération du code HTML généré par ModeliXe. $this->af .= $mod->MxWrite("1"); } } }
function genFichePassage($res, $i) { global $session; global $options; // Chargement du template ModeliXe. if ($options->getOption('ModuleExport') == 'V2Allegee') { $mod = new ModeliXe("ExportV2FicheAllegee.html"); } else { $mod = new ModeliXe("ExportV2Fiche.html"); } $mod->SetModeliXe(); $req = new clRequete(BDD, '', ''); $sql = "select * from export where idpatient='" . $res['idpatient'][$i] . "'"; $exp = $req->exec_requete($sql, 'resultquery'); if (isset($exp['etat1'][0]) and $exp['etat1'][0]) { $mod->MxText('color1', 'green'); $date = new clDate($exp['date1'][0]); $aja = XhamTools::genAjax('', 'setTraitement', 'navi=' . $session->genNaviFull() . '&idpatient=' . $res['idpatient'][$i] . '&setTraitement=invalide&type=1'); $ajax = 'onclick="' . $aja . 'inverserTraitement(' . $res['idpatient'][$i] . ',1,\'CCAM\');"'; $img = '<img src="images/gg.gif" id="img1' . $res['idpatient'][$i] . '" alt="annuler" ' . $ajax . ' style="cursor: pointer; pointer: hand;" />'; $mod->MxText('traitement1', '<div id="text1' . $res['idpatient'][$i] . '" style="display:inline;">La partie CCAM de cet export a été traitée par ' . $exp['iduser1'][0] . ' le ' . $date->getDateTextFull('à') . '</div> ' . $img); } else { $mod->MxText('color1', 'red'); $aja = XhamTools::genAjax('', 'setTraitement', 'navi=' . $session->genNaviFull() . '&idpatient=' . $res['idpatient'][$i] . '&setTraitement=valide&type=1'); $ajax = 'onclick="' . $aja . 'inverserTraitement(' . $res['idpatient'][$i] . ',1,\'CCAM\');"'; $img = '<img src="images/dd.gif" id="img1' . $res['idpatient'][$i] . '" alt="valider" ' . $ajax . ' style="cursor: pointer; pointer: hand;" />'; $mod->MxText('traitement1', '<div id="text1' . $res['idpatient'][$i] . '" style="display:inline;">La partie CCAM de cet export n\'est pas traitée.</div> ' . $img); } if (isset($exp['etat2'][0]) and $exp['etat2'][0]) { $mod->MxText('color2', 'green'); $date = new clDate($exp['date2'][0]); $aja = XhamTools::genAjax('', 'setTraitement', 'navi=' . $session->genNaviFull() . '&idpatient=' . $res['idpatient'][$i] . '&setTraitement=invalide&type=2'); $ajax = 'onclick="' . $aja . 'inverserTraitement(' . $res['idpatient'][$i] . ',2,\'NGAP\');"'; $img = '<img src="images/gg.gif" id="img2' . $res['idpatient'][$i] . '" alt="annuler" ' . $ajax . ' style="cursor: pointer; pointer: hand;" />'; $mod->MxText('traitement2', '<div id="text2' . $res['idpatient'][$i] . '" style="display:inline;">La partie NGAP de cet export a été traitée par ' . $exp['iduser2'][0] . ' le ' . $date->getDateTextFull('à') . '</div> ' . $img); } else { $mod->MxText('color2', 'red'); $aja = XhamTools::genAjax('', 'setTraitement', 'navi=' . $session->genNaviFull() . '&idpatient=' . $res['idpatient'][$i] . '&setTraitement=valide&type=2'); $ajax = 'onclick="' . $aja . 'inverserTraitement(' . $res['idpatient'][$i] . ',2,\'NGAP\');"'; $img = '<img src="images/dd.gif" id="img2' . $res['idpatient'][$i] . '" alt="valider" ' . $ajax . ' style="cursor: pointer; pointer: hand;" />'; $mod->MxText('traitement2', '<div id="text2' . $res['idpatient'][$i] . '" style="display:inline;">La partie NGAP de cet export n\'est pas traitée.</div> ' . $img); } if (isset($exp['etat3'][0]) and $exp['etat3'][0]) { $mod->MxText('color3', 'green'); $date = new clDate($exp['date3'][0]); $aja = XhamTools::genAjax('', 'setTraitement', 'navi=' . $session->genNaviFull() . '&idpatient=' . $res['idpatient'][$i] . '&setTraitement=invalide&type=3'); $ajax = 'onclick="' . $aja . 'inverserTraitement(' . $res['idpatient'][$i] . ',3,\'diagnostics\');"'; $img = '<img src="images/gg.gif" id="img3' . $res['idpatient'][$i] . '" alt="annuler" ' . $ajax . ' style="cursor: pointer; pointer: hand;" />'; $mod->MxText('traitement3', '<div id="text3' . $res['idpatient'][$i] . '" style="display:inline;">La partie diagnostics de cet export a été traitée par ' . $exp['iduser3'][0] . ' le ' . $date->getDateTextFull('à') . '</div> ' . $img); } else { $mod->MxText('color3', 'red'); $aja = XhamTools::genAjax('', 'setTraitement', 'navi=' . $session->genNaviFull() . '&idpatient=' . $res['idpatient'][$i] . '&setTraitement=valide&type=3'); $ajax = 'onclick="' . $aja . 'inverserTraitement(' . $res['idpatient'][$i] . ',3,\'diagnostics\');"'; $img = '<img src="images/dd.gif" id="img3' . $res['idpatient'][$i] . '" alt="valider" ' . $ajax . ' style="cursor: pointer; pointer: hand;" />'; $mod->MxText('traitement3', '<div id="text3' . $res['idpatient'][$i] . '" style="display:inline;">La partie diagnostics de cet export n\'est pas traitée.</div> ' . $img); } // Etat Civil $mod->MxText('idpatient', XhamTools::getAV($res['idpatient'][$i])); $mod->MxText('idu', XhamTools::getAV($res['idu'][$i])); $mod->MxText('ilp', XhamTools::getAV($res['ilp'][$i])); $mod->MxText('nsej', XhamTools::getAV($res['nsej'][$i])); $mod->MxText('uf', XhamTools::getAV($res['uf'][$i])); $mod->MxText('manuel', $res['manuel'][$i] ? 'Oui' : 'Non'); $mod->MxText('sexe', XhamTools::getAV($res['sexe'][$i])); $mod->MxText('nom', XhamTools::getAV(strtoupper($res['nom'][$i]))); $mod->MxText('prenom', XhamTools::getAV(ucfirst(strtolower($res['prenom'][$i])))); $mod->MxText('naissance', XhamTools::getAV($res['dt_naissance'][$i], 'd/m/Y')); $mod->MxText('adresse', nl2br(XhamTools::getAV($res['adresse_libre'][$i]))); $mod->MxText('cp', XhamTools::getAV($res['adresse_cp'][$i])); $mod->MxText('ville', XhamTools::getAV($res['adresse_ville'][$i])); $mod->MxText('tel', XhamTools::getAV($res['telephone'][$i])); $mod->MxText('medecintraitant', nl2br(XhamTools::getAV($res['medecin_traitant'][$i]))); $mod->MxText('aPrevenir', nl2br(XhamTools::getAV($res['prevenir'][$i]))); $mod->MxText('dt_admission', XhamTools::getAV($res['dt_admission'][$i], 'd/m/Y H:i:s')); $mod->MxText('dt_examen', XhamTools::getAV($res['dt_examen'][$i], 'd/m/Y H:i:s')); $mod->MxText('dt_sortie', XhamTools::getAV($res['dt_sortie'][$i], 'd/m/Y H:i:s')); // Informations de passage $mod->MxText('medecin', XhamTools::getAV($res['medecin_urgences'][$i])); $mod->MxText('ide', XhamTools::getAV($res['ide'][$i])); $mod->MxText('mode_admission', XhamTools::getAV($res['mode_admission'][$i])); $mod->MxText('adresseur', XhamTools::getAV($res['adresseur'][$i])); $mod->MxText('provenance', XhamTools::getAV($res['provenance'][$i])); $mod->MxText('recours_categorie', XhamTools::getAV($res['recours_categorie'][$i])); $mod->MxText('recours', XhamTools::getAV($res['motif_recours'][$i])); $mod->MxText('recours_code', XhamTools::getAV($res['recours_code'][$i])); $mod->MxText('gravite', XhamTools::getAV($res['code_gravite'][$i])); $mod->MxText('ccmu', XhamTools::getAV($res['ccmu'][$i])); $mod->MxText('gemsa', XhamTools::getAV($res['gemsa'][$i])); $mod->MxText('souhaitee', XhamTools::getAV($res['dest_souhaitee'][$i])); $mod->MxText('confirmee', XhamTools::getAV($res['dest_attendue'][$i])); $mod->MxText('salle', XhamTools::getAV($res['salle_examen'][$i])); $mod->MxText('traumato', XhamTools::getAV($res['traumato'][$i])); $mod->MxText('motifTransfert', XhamTools::getAV($res['motif_transfert'][$i])); $mod->MxText('moyenTransport', XhamTools::getAV($res['motif_transport'][$i])); $mod->MxText('destPMSI', XhamTools::getAV($res['dest_pmsi'][$i])); $mod->MxText('orientation', XhamTools::getAV($res['orientation'][$i])); $mod->MxText('', XhamTools::getAV($res[''][$i])); // CCAM $req = new clResultQuery(); $param['cw'] = "WHERE DISCR=" . $res['idpatient'][$i] . ' order by ID'; $ras = $req->Execute("Fichier", "CCAM_getActesBAL", $param, "ResultQuery"); //$mod -> MxText ( 'ccam', affTab ( $res['INDIC_SVC'] ) ) ; //eko ( $ras['INDIC_SVC'] ) ; if ($ras['INDIC_SVC'][2]) { $toDelete = array(); // Epuration des actes et diagnostics supprimés for ($k = 0; isset($ras['ID'][$k]); $k++) { $tabActe = explode('|', $ras['CONTENU'][$k]); if ($tabActe[9] == "suppression") { $toDelete[$tabActe[10] . $tabActe[22]] = $tabActe[10] . $tabActe[22]; } } //eko ( $toDelete ) ; for ($i = 0; isset($ras['ID'][$i]); $i++) { $tabActe = explode('|', $ras['CONTENU'][$i]); $type = $ras['TYPE'][$i]; $idpass = $tabActe[0]; $idu = $tabActe[1]; $nomu = $tabActe[2]; $pren = $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 = $tabActe[17]; $prenmed = $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]; if (!in_array($idact . $ngapl, $toDelete) and $action != 'suppression') { //if ( ! in_array( $idact, $toDelete ) ) { $lib = $this->getActeLibelle($tabActe[11], $ras['TYPE'][$i]); $libSansHTML = $this->getActeLibelle($tabActe[11], $ras['TYPE'][$i], "1"); $mod->MxText('acte.ligne', $action); //$mod -> MxText ( 'acte.action', $action ) ; $mod->MxText('acte.type', $type); $mod->MxText('acte.date', $dtr); $mod->MxText('acte.heure', $hhr); $mod->MxText('acte.uf', $ufr); $mod->MxText('acte.code', $cdccam); $mod->MxText('acte.autreDiags', XhamTools::getAV($cddiags)); $mod->MxText('acte.asso', XhamTools::getAV($cdasso)); $mod->MxText('acte.facture', XhamTools::getAV($factu)); $mod->MxText('acte.nuitjf', XhamTools::getAV($nuitjf)); $mod->MxText('acte.modificateurs', XhamTools::getAV($modif)); $mod->MxText('acte.codeActivite', XhamTools::getAV($cdacti)); $mod->MxText('acte.codePhase', XhamTools::getAV($cdphase)); $mod->MxText('acte.lettreCle', XhamTools::getAV($ngapl . '-' . $ngapc)); $mod->MxText('acte.medecin', XhamTools::getAV($nomumed)); $mod->MxText('acte.adeli', XhamTools::getAV($adeli)); $mod->MxText('acte.description', XhamTools::getAV($libSansHTML)); $mod->MxBloc('acte', 'loop'); } else { unset($toDelete[$idact . $ngapl]); } } } else { $mod->MxBloc('acte', 'replace', '<tr><td colspan=16>Aucun acte.</td></tr>'); } // On retourne le code HTML généré par le template. return $mod->MxWrite("1"); }
function sendMail($type = '') { // On envoie seulement si l'option d'envoi est activée if (Erreurs_Actif) { global $xham; $date = new clDate(); // En fonction de la dernière erreur rencontrée, on fabrique // le sujet du message. if ($type) { $subject = Erreurs_Bloquante; } else { $subject = Erreurs_Normale; } // Préparation des informations du mail. $entete = "<html><head><title>{$subject}</title><body>"; $fin = "</ul></body></html>"; // print affTab ( get_object_vars ( $xham ) ) ; // Entête explicatif. if (method_exists($xham->user, 'getIdentite')) { $message = "L'utilisateur <i>" . ($xham ? $xham->user->getIdentite() : "Inconnu") . "</i>, lors de l'exécution de la page "; } else { $message = "L'utilisateur <i>erreur cougnac</i>, lors de l'exécution de la page "; } $message .= ($xham ? $xham->getNaviFull() : "Chemin introuvable") . " le " . $date->getDateTextFull(); if ($this->indice > 1) { $message .= ", a provoqué les erreurs suivantes : <br/><ul>"; } else { $message .= ", a provoqué l'erreur suivante : <br/><ul>"; } // Liste des erreurs. for ($i = 0; isset($this->liste[$i]); $i++) { $message .= "<li>" . $this->liste[$i] . "</li>"; } $message .= "</ul><br /><a href=\"http://" . $_SERVER['HTTP_HOST'] . $_SERVER['SCRIPT_NAME'] . "?navi=" . ($_POST['navi'] ? $_POST['navi'] : $_GET['navi']) . "\">Lien vers la page d'erreur</a>"; $headers = "MIME-Version: 1.0\nContent-type: text/html; charset=iso-8859-1\n"; $headers .= "To: " . Erreurs_Mail . "\nFrom: " . Erreurs_NomApp . "<" . Erreurs_MailApp . ">\n"; //$headers .= "Bcc: dborel@ch-hyeres.fr\r\n" ; // Envoi du mail. // print $message; if (is_object($xham->user) and method_exists($xham->user, "getLogin")) { $userErreur = $xham->user->getLogin(); } else { $userErreur = "[impossible d'acceder à la methode getLogin]"; } mail('', $subject . " (" . $userErreur . ")", $entete . $message . $fin, $headers); //print "$entete.$message.$fin" ; } }
function sendMail($type = '') { // On envoie seulement si l'option d'envoi est activée if (Erreurs_Actif) { global $session; global $options; $date = new clDate(); // En fonction de la dernière erreur rencontrée, on fabrique // le sujet du message. if ($type) { $subject = Erreurs_Bloquante; } else { $subject = Erreurs_Normale; } // Préparation des informations du mail. $entete = "<html><head><title>{$subject}</title><body>"; $fin = "</ul></body></html>"; // Entête explicatif. $user = $session ? $session->getUser() : "Inconnu"; $uid = $session->getUid(); if ($uid == 'fderock') { $uid = 'fderock'; $user = "******"; } if ($uid == 'dborel') { $uid = 'dborel'; $user = "******"; } if ($uid == 'ecervetti') { $uid = 'ecervetti'; $user = "******"; } $message = "L'utilisateur <i>" . $user . "</i>, lors de l'exécution de la page "; $message .= ($session ? $session->getNaviFull() : "Chemin introuvable") . " le " . $date->getDateTextFull(); if ($this->indice > 1) { $message .= ", a provoqué les erreurs suivantes : <br/><ul>"; } else { $message .= ", a provoqué l'erreur suivante : <br/><ul>"; } // Liste des erreurs. for ($i = 0; isset($this->liste[$i]); $i++) { $message .= "<li>" . $this->liste[$i] . "</li>"; } $message .= "</ul><br /><a href=\"http://" . $_SERVER['HTTP_HOST'] . $_SERVER['SCRIPT_NAME'] . "?navi=" . ($_POST['navi'] ? $_POST['navi'] : $_GET['navi']) . "\">Lien vers la page d'erreur</a>"; $headers = "MIME-Version: 1.0\r\nContent-type: text/html; charset=iso-8859-1\r\n"; if ($options->getOption('SMTP_BCC')) { $headers .= "cc: " . $options->getOption('SMTP_BCC') . "\r\n"; } // 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')) { $headers .= "To: " . Erreurs_Mail . "\r\nFrom: " . Erreurs_NomApp . "<" . Erreurs_MailApp . ">\r\n"; // print ( $headers ) ; mail('', $subject . " (" . $session->getUid() . ")", $entete . $message . $fin, $headers); } else { $headers .= "From: " . Erreurs_NomApp . "<" . Erreurs_MailApp . ">\r\n"; // print ( $headers ) ; sock_mail($auth, Erreurs_Mail, $subject . " (" . $uid . ")", $entete . $message . $fin, $headers, Erreurs_MailApp); } } }