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); } } }
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 newMessage($listeMails = '') { global $session; global $options; if (!$this->patient->getILP()) { $this->patient = new clPatient($this->idpatient, "Sortis"); } if ($options->getOption("typeMail") == "HTML") { $retourLigne = "<br />"; $trait = "<hr />"; } else { $retourLigne = "\n"; $trait = "\n----------------------------------------------\n\n"; } // Préparation des textes et dates... $dest2 = ''; $message .= "Médecins urgences : " . ($this->patient->getMedecin() ? $this->patient->getMedecin() : '--') . $retourLigne; $age = new clDate($this->patient->getDateNaissance()); $duree = new clDuree(); $adm = new clDate($this->patient->getDateAdmission()); $exa = new clDate($this->patient->getDateExamen()); $message .= "Concerne le patient : " . $this->patient->getSexe() . " " . $this->patient->getPrenom() . " " . strtoupper($this->patient->getNom()) . " (" . $duree->getAge($age->getTimestamp()) . ")" . $retourLigne; $message .= "Numéro de séjour : " . $this->patient->getNSEJ() . $retourLigne; $message .= "ILP : " . $this->patient->getILP() . $retourLigne; $message .= "Médecin traitant : " . $this->patient->getMedecinTraitant() . $retourLigne . $trait; if ($this->patient->getDateAdmission() != '0000-00-00 00:00:00') { $message .= "Admis aux urgences le : " . $adm->getDate("d-m-Y à H:i") . $retourLigne; } else { $message .= "Admis aux urgences le : --" . $retourLigne; } $message .= "Pour " . $this->patient->getRecours() . " (" . $this->patient->getCategorieRecours() . ")" . $retourLigne; if ($this->patient->getDateExamen() != '0000-00-00 00:00:00') { $message .= "Heure Examen : " . $exa->getDate("d-m-Y à H:i") . $retourLigne; } else { $message .= "Heure Examen : --" . $retourLigne; } $message .= "Dest. confirmée : " . ($this->patient->getDestinationAttendue() ? $this->patient->getDestinationAttendue() : '--') . $retourLigne; $message .= "Message : " . stripslashes($_POST['observations']); // Préparation des destinataires du message. $listeGen = new clListesGenerales("recup"); // Type de message. switch ($_POST['type']) { case 'conflit': $sujet = "[Terminurg] Signalement conflit"; if (!$listeMails) { $listeMails = "Mails Conflit"; } break; case 'social': $sujet = "[Terminurg] Signalement social"; if (!$listeMails) { $listeMails = "Mails Gériatrie"; } break; case 'virus': $sujet = "[Terminurg] " . $_POST['sendMessage']; if (!$listeMails) { $listeMails = "Mails Alerte Virus"; } break; case 'non uhcd': $sujet = "[Terminurg] Etat UHCD à vérifier"; if (!$listeMails) { $listeMails = "Mails Alerte UHCD"; } break; case 'sortie forcée': $sujet = "[Terminurg] Sortie forcée détectée"; if (!$listeMails) { $listeMails = "Mails Sortie forcée"; } break; default: $sujet = "[Terminurg] Procédure dépistage maltraitance"; if (!$listeMails) { $listeMails = "Mails Maltraitance"; } break; } //eko ( "test" ) ; $liste = $listeGen->getListeItems($listeMails, "1", '', ''); $to = ''; if (!is_array($liste)) { $liste = array(); } while (list($key, $val) = each($liste)) { $dest .= $val . $retourLigne; if ($dest2) { $vir = ","; } else { $vir = ""; } $dest2 .= $vir . $val; if (!$to) { $to = $val; } else { $dest3 .= "To: {$val}\r\n"; } } // print $dest2 ; // Si une confirmation a été transmise, alors on ajoute et on envoie le nouveau message. if ($_POST['Envoyer'] or $_POST['Envoyer_x']) { $date = new clDate(); $data['idpatient'] = $this->patient->getID(); $data['dt_mail'] = $date->getDatetime(); $data['contenu'] = addslashes($message . $trait . nl2br(stripslashes($_POST['observations']))); $data['nsej'] = $this->patient->getNSEJ(); if ($_POST['type']) { $data['type_mail'] = $_POST['type']; } else { $data['type_mail'] = "Procédure dépistage maltraitance"; } $requete = new clRequete(BDD, MAILSLOGS, $data); $requete->addRecord(); // eko ( $sujet ) ; // Préparation des informations du mail. if ($options->getOption("typeMail") == "HTML") { $entete = "<html><head><title>{$subject}</title><body>"; $fin = "</table></body></html>"; $message = $entete . $message . $fin; $headers = "MIME-Version: 1.0\r\n"; $headers .= "Content-type: text/html; charset=iso-8859-1\r\n"; $headers .= "From: " . Erreurs_NomApp . " <" . Erreurs_MailApp . ">\r\n"; } else { $message = $subject . "\n\n" . $message; $headers = "MIME-Version: 1.0\r\n"; $headers .= "Content-type: text/plain; charset=iso-8859-1\r\n"; $headers .= "From: " . Erreurs_NomApp . " <" . Erreurs_MailApp . ">\r\n"; } //$headers .= "Bcc: dborel@ch-hyeres.fr\r\n"; if ($options->getOption('SMTP_BCC')) { $headers .= "Cc: <" . $options->getOption('SMTP_BCC') . ">\r\n"; $cc = $options->getOption('SMTP_BCC'); } else { $cc = ''; } // Envoi du mail. // mail ( $dest2, $sujet, $message, $headers ) ; if ($options->getOption('SMTP_Type') == 'localhost') { mail($dest2, $sujet, $message, $headers); } else { //$headers .= 'To: '.$dest2."\r\n" ; // print $headers ; if ($options->getOption('SMTP_Type') == 'autreAvecAuth') { $auth = 1; } else { $auth = 0; } sock_mail($auth, $dest2, $sujet, $message, $headers, Erreurs_MailApp, $cc); } //eko ( $dest2 ) ; // Sinon, on affiche le formulaire d'envoi / création de message. } else { // Chargement du template ModeliXe. $mod = new ModeliXe("Messages.mxt"); $mod->SetModeliXe(); // Affichage des différents champs. $mod->MxBloc("view", "modify", " "); $mod->MxBloc("list", "modify", " "); $mod->MxText("new.nomApplication", NOMAPPLICATION); $mod->MxText("new.mailApplication", Erreurs_MailApp); $mod->MxText("new.nomsDestinataires", $dest); $mod->MxCheckerField("new.type1", "radio", "type", "maltraitance", ($_POST['type'] == "maltraitance" or !$_POST['type']) ? 1 : 0); $mod->MxCheckerField("new.type2", "radio", "type", "conflit", $_POST['type'] == "conflit" ? 1 : 0); $mod->MxCheckerField("new.type3", "radio", "type", "social", $_POST['type'] == "social" ? 1 : 0); $mod->MxText("new.sujet", $sujet); $mod->MxText("new.message", $message); $form = new clForm(); $mod->MxText("new.observations", $form->genTextArea("observations", stripslashes($_POST['observations']), 45, 4, "width: 420px; height: 80px;")); // Variable de navigation dans le cas d'une action normale. $mod->MxHidden("new.hidden1", "navi=" . $session->genNavi($session->getNavi(0), $session->getNavi(1), $session->getNavi(2), "newMessage")); // Variable de navigation dans le cas d'une action d'annulation. $mod->MxHidden("new.hidden2", "navi=" . $session->genNavi($session->getNavi(0), $session->getNavi(1), $session->getNavi(2))); // Récupération du code HTML généré. return $mod->MxWrite("1"); } }