Subversion Repositories eFlore/Applications.del

Compare Revisions

Ignore whitespace Rev 1721 → Rev 1722

/branches/v1.2-lithium/scripts/modules/commentaires/AlerteMailCommentaires.php
18,6 → 18,7
private $conteneur;
private $testeurCourriel = null;
private $recapitulatifAdmin = [];
private $messageRecapitulatif = null;
 
private $observations_concernees = array();
private $correspondance_id_obs_auteurs = array();
185,6 → 186,7
}
$this->recapitulatifAdmin[$auteurId] = $message;
}
$this->envoyerMessageRecap();
$this->envoyerMessageTesteur();
}
 
216,29 → 218,59
$clientRest->modifier($url, $donnees);
}
 
private function envoyerMessageTesteur() {
private function envoyerMessageRecap() {
$msgRecap = $this->obtenirMessageRecap();
if ($this->testeurCourriel != null) {
$clientRest = $this->conteneur->getRestClient();
$urlTpl = $this->conteneur->getParametre('url_service_utilisateur');
$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');
$envoieStatut = $messagerie->envoyerTxt($destinataire, $sujet, $msgRecap);
}
 
private function obtenirMessageRecap() {
if ($this->messageRecapitulatif == null) {
$msgRecap = '';
$separateur = str_repeat('-', 50);
$utilisateursIntitules = $this->obtenirInfosUtilisateurs();
foreach ($this->recapitulatifAdmin as $utilisateurId => $message) {
$url = sprintf($urlTpl, $utilisateurId);
$json = $clientRest->consulter($url);
$infosUtilisateur = json_decode($json);
if (isset($infosUtilisateur->courriel) && isset($infosUtilisateur->intitule)) {
$intitule = $infosUtilisateur->intitule.' ('.$infosUtilisateur->courriel.')';
} else {
$intitule = "Utilisateur avec id $utilisateurId introuvable";
}
$separateur = str_repeat('-', 50);
 
$msgRecap += "Message envoyé à : $intitule\n$message\n$separateur\n";
$intitule = $utilisateursIntitules[$utilisateurId];
$msgRecap .= "Message envoyé à : $intitule\n$message\n$separateur\n";
}
$sujet = "ADMIN : Récapitulatif envoies";
$intituleRecap = implode(', ', $utilisateursIntitules);
 
$this->messageRecapitulatif = "Messages envoyés aux utilisateurs suivant : $intituleRecap\n$msgRecap";
}
return $this->messageRecapitulatif;
}
 
private function envoyerMessageTesteur() {
if ($this->testeurCourriel != null) {
$msgRecap = $this->obtenirMessageRecap();
$sujet = "TESTEUR : Récapitulatif envoies alertes commentaires";
$messagerie = $this->conteneur->getMessagerie();
$envoieStatut = $messagerie->envoyerTxt($this->testeurCourriel, $sujet, $msgRecap);
}
}
 
private function obtenirInfosUtilisateurs() {
$clientRest = $this->conteneur->getRestClient();
$urlTpl = $this->conteneur->getParametre('url_service_utilisateur');
$idUtilisateurs = array_keys($this->recapitulatifAdmin);
$utilisateursIntitules = [];
foreach ($idUtilisateurs as $utilisateurId) {
$url = sprintf($urlTpl, $utilisateurId);
$json = $clientRest->consulter($url);
$infosUtilisateur = json_decode($json);
if (isset($infosUtilisateur->courriel) && isset($infosUtilisateur->intitule)) {
$intitule = $infosUtilisateur->intitule.' ('.$infosUtilisateur->courriel.')';
} else {
$intitule = "Utilisateur avec id $utilisateurId introuvable";
}
$utilisateursIntitules[$utilisateurId] = $intitule;
}
return $utilisateursIntitules;
}
}