180,36 → 180,17 |
|
protected function envoyerMessageAuxDestinataires() { |
foreach ($this->observations_concernees as $auteurId => $liste_obs) { |
$donnees = $this->formaterDonneesPourMessage($liste_obs, $auteur); |
$messageTxt = $this->formaterMessageTxt($donnees); |
$messageHtml = $this->formaterMessageHtml($donnees); |
$this->recapitulatifAdmin[$auteurId] = array('txt' => $messageTxt, 'html' => $messageHtml); |
|
$message = $this->formaterMessagePourAuteur($liste_obs, $auteurId); |
if ($this->testeurCourriel == null) { |
$this->envoyerMessage($messageHtml, $messageTxt, $auteurId); |
$this->envoyerMessage($message, $auteurId); |
} |
$this->recapitulatifAdmin[$auteurId] = $message; |
} |
if ($this->testeurCourriel == null) { |
$this->envoyerMessageRecap(); |
} |
$this->envoyerMessagesTesteur(); |
$this->envoyerMessageRecap(); |
$this->envoyerMessageTesteur(); |
} |
|
private function formaterMessageHtml($donnees) { |
$squelette = dirname(__FILE__).DS.'squelettes'.DS.'commentaires.tpl.html'; |
$squelettePhp = $this->conteneur->getSquelettePhp(); |
$msgHtml = $squelettePhp->analyser($squelette, $donnees); |
return $msgHtml; |
} |
|
private function formaterMessageTxt($donnees) { |
$squelette = dirname(__FILE__).DS.'squelettes'.DS.'commentaires.tpl.txt'; |
$squelettePhp = $this->conteneur->getSquelettePhp(); |
$msgTxt = $squelettePhp->analyser($squelette, $donnees); |
return $msgTxt; |
} |
|
private function formaterDonneesPourMessage($liste_obs, $auteur) { |
private function formaterMessagePourAuteur($liste_obs, $auteur) { |
$donnees = array(); |
// copie de la première obs pour en obtenir le nom et prénom de l'auteur |
// (en deux fois pour éviter un warning en mode strict) |
219,17 → 200,18 |
$donnees['auteur'] = $auteur; |
$donnees['auteur_formate'] = ucfirst($premiere_obs['prenom_utilisateur']).' '.ucfirst($premiere_obs['nom_utilisateur']); |
|
return $donnees; |
$messageSquelette = dirname(__FILE__).DS.'squelettes'.DS.'commentaires.tpl.html'; |
$squelettePhp = $this->conteneur->getSquelettePhp(); |
return $squelettePhp->analyser($messageSquelette, $donnees); |
} |
|
private function envoyerMessage($messageHtml, $messageTxt, $id_destinataire) { |
private function envoyerMessage($message, $id_destinataire) { |
$url = sprintf($this->conteneur->getParametre('url_service_messagerie'), $id_destinataire); |
$donnees = array( |
'sujet' => $this->conteneur->getParametre('titre_message_recapitulatif'), |
'message' => $message, |
'utilisateur_courriel' => $this->conteneur->getParametre('adresse_expediteur_recapitulatif'), |
'format' => 'html', |
'sujet' => $this->conteneur->getParametre('titre_message_recapitulatif'), |
'message' => $messageHtml, |
'message_txt' => $messageTxt |
'format' => 'html' |
); |
|
$clientRest = $this->conteneur->getRestClient(); |
238,10 → 220,14 |
|
private function envoyerMessageRecap() { |
$msgRecap = $this->obtenirMessageRecap(); |
$sujet = "IdentiPlante : récapitulatif envoies alertes commentaires"; |
if ($this->testeurCourriel != null) { |
$sujet = "IdentiPlante - TEST par {$this->testeurCourriel} : récapitulatif envoies alertes commentaires"; |
} else { |
$sujet = "IdentiPlante : récapitulatif envoies alertes commentaires"; |
} |
$messagerie = $this->conteneur->getMessagerie(); |
$destinataire = $this->conteneur->getParametre('email_recap'); |
$messagerie->envoyerTxt($destinataire, $sujet, $msgRecap); |
$envoieStatut = $messagerie->envoyerTxt($destinataire, $sujet, $msgRecap); |
} |
|
private function obtenirMessageRecap() { |
250,32 → 236,22 |
$separateur = str_repeat('-', 50); |
$utilisateursIntitules = $this->obtenirInfosUtilisateurs(); |
foreach ($this->recapitulatifAdmin as $utilisateurId => $message) { |
$messageTxt = $message['txt']; |
$intitule = $utilisateursIntitules[$utilisateurId]; |
$msgRecap .= "Message envoyé à : $intitule\n$messageTxt\n$separateur\n"; |
$msgRecap .= "Message envoyé à : $intitule\n$message\n$separateur\n"; |
} |
$intituleRecap = implode("\n", $utilisateursIntitules); |
$intituleRecap = implode(', ', $utilisateursIntitules); |
|
$msgTpl = "Messages envoyés aux utilisateurs suivant :\n%s\n%s\n%s"; |
$this->messageRecapitulatif = sprintf($msgTpl, $intituleRecap, $separateur, $msgRecap); |
$this->messageRecapitulatif = "Messages envoyés aux utilisateurs suivant : $intituleRecap\n$msgRecap"; |
} |
return $this->messageRecapitulatif; |
} |
|
private function envoyerMessagesTesteur() { |
private function envoyerMessageTesteur() { |
if ($this->testeurCourriel != null) { |
$msgRecap = $this->obtenirMessageRecap(); |
$sujet = "TESTEUR : Récapitulatif envoies alertes commentaires"; |
$messagerie = $this->conteneur->getMessagerie(); |
|
$sujet = "TESTEUR : récapitulatif envoies alertes commentaires"; |
$msgRecap = $this->obtenirMessageRecap(); |
$messagerie->envoyerTxt($this->testeurCourriel, $sujet, $msgRecap); |
|
$message = array_shift($this->recapitulatifAdmin); |
$sujet = "TESTEUR : exemple message HTML - alerte commentaire"; |
$messagerie->envoyerHtml($this->testeurCourriel, $sujet, $message['html'], $message['txt']); |
|
$sujet = "TESTEUR : exemple message TXT - alerte commentaire"; |
$messagerie->envoyerTxt($this->testeurCourriel, $sujet, $message['txt']); |
$envoieStatut = $messagerie->envoyerTxt($this->testeurCourriel, $sujet, $msgRecap); |
} |
} |
|