Subversion Repositories eFlore/Applications.del

Rev

Rev 1716 | Rev 1723 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1716 Rev 1722
Line 16... Line 16...
16
class AlerteMailCommentaires {
16
class AlerteMailCommentaires {
Line 17... Line 17...
17
 
17
 
18
	private $conteneur;
18
	private $conteneur;
19
	private $testeurCourriel = null;
19
	private $testeurCourriel = null;
-
 
20
	private $recapitulatifAdmin = [];
Line 20... Line 21...
20
	private $recapitulatifAdmin = [];
21
	private $messageRecapitulatif = null;
21
 
22
 
Line 22... Line 23...
22
	private $observations_concernees = array();
23
	private $observations_concernees = array();
Line 183... Line 184...
183
			if ($this->testeurCourriel == null) {
184
			if ($this->testeurCourriel == null) {
184
				$this->envoyerMessage($message, $auteurId);
185
				$this->envoyerMessage($message, $auteurId);
185
			}
186
			}
186
			$this->recapitulatifAdmin[$auteurId] = $message;
187
			$this->recapitulatifAdmin[$auteurId] = $message;
187
		}
188
		}
-
 
189
		$this->envoyerMessageRecap();
188
		$this->envoyerMessageTesteur();
190
		$this->envoyerMessageTesteur();
189
	}
191
	}
Line 190... Line 192...
190
 
192
 
191
	private function formaterMessagePourAuteur($liste_obs, $auteur) {
193
	private function formaterMessagePourAuteur($liste_obs, $auteur) {
Line 214... Line 216...
214
 
216
 
215
		$clientRest = $this->conteneur->getRestClient();
217
		$clientRest = $this->conteneur->getRestClient();
216
		$clientRest->modifier($url, $donnees);
218
		$clientRest->modifier($url, $donnees);
Line 217... Line 219...
217
	}
219
	}
-
 
220
 
218
 
221
	private function envoyerMessageRecap() {
-
 
222
		$msgRecap = $this->obtenirMessageRecap();
-
 
223
		if ($this->testeurCourriel != null) {
-
 
224
			$sujet = "IdentiPlante - TEST par {$this->testeurCourriel} : récapitulatif envoies alertes commentaires";
-
 
225
		} else {
219
	private function envoyerMessageTesteur() {
226
			$sujet = "IdentiPlante : récapitulatif envoies alertes commentaires";
220
		if ($this->testeurCourriel != null) {
227
		}
-
 
228
		$messagerie = $this->conteneur->getMessagerie();
-
 
229
		$destinataire = $this->conteneur->getParametre('email_recap');
Line -... Line 230...
-
 
230
		$envoieStatut = $messagerie->envoyerTxt($destinataire, $sujet, $msgRecap);
-
 
231
	}
221
			$clientRest = $this->conteneur->getRestClient();
232
 
-
 
233
	private function obtenirMessageRecap() {
-
 
234
		if ($this->messageRecapitulatif == null) {
222
			$urlTpl = $this->conteneur->getParametre('url_service_utilisateur');
235
			$msgRecap = '';
223
 
-
 
224
			$msgRecap = '';
-
 
225
			foreach ($this->recapitulatifAdmin as $utilisateurId => $message) {
-
 
226
				$url = sprintf($urlTpl, $utilisateurId);
-
 
227
				$json = $clientRest->consulter($url);
-
 
228
				$infosUtilisateur = json_decode($json);
-
 
229
				if (isset($infosUtilisateur->courriel) && isset($infosUtilisateur->intitule)) {
236
			$separateur = str_repeat('-', 50);
230
					$intitule = $infosUtilisateur->intitule.' ('.$infosUtilisateur->courriel.')';
-
 
231
				} else {
-
 
232
					$intitule = "Utilisateur avec id $utilisateurId introuvable";
-
 
233
				}
237
			$utilisateursIntitules = $this->obtenirInfosUtilisateurs();
234
				$separateur = str_repeat('-', 50);
238
			foreach ($this->recapitulatifAdmin as $utilisateurId => $message) {
235
 
239
				$intitule = $utilisateursIntitules[$utilisateurId];
Line -... Line 240...
-
 
240
				$msgRecap .= "Message envoyé à : $intitule\n$message\n$separateur\n";
-
 
241
			}
-
 
242
			$intituleRecap = implode(', ', $utilisateursIntitules);
-
 
243
 
-
 
244
			$this->messageRecapitulatif = "Messages envoyés aux utilisateurs suivant : $intituleRecap\n$msgRecap";
-
 
245
		}
-
 
246
		return $this->messageRecapitulatif;
-
 
247
	}
-
 
248
 
236
				$msgRecap += "Message envoyé à : $intitule\n$message\n$separateur\n";
249
	private function envoyerMessageTesteur() {
237
			}
250
		if ($this->testeurCourriel != null) {
238
			$sujet = "ADMIN : Récapitulatif envoies";
251
			$msgRecap = $this->obtenirMessageRecap();
239
 
252
			$sujet = "TESTEUR : Récapitulatif envoies alertes commentaires";
-
 
253
			$messagerie = $this->conteneur->getMessagerie();
-
 
254
			$envoieStatut = $messagerie->envoyerTxt($this->testeurCourriel, $sujet, $msgRecap);
-
 
255
		}
-
 
256
	}
-
 
257
 
-
 
258
	private function obtenirInfosUtilisateurs() {
-
 
259
		$clientRest = $this->conteneur->getRestClient();
-
 
260
		$urlTpl = $this->conteneur->getParametre('url_service_utilisateur');
-
 
261
		$idUtilisateurs = array_keys($this->recapitulatifAdmin);
-
 
262
		$utilisateursIntitules = [];
-
 
263
		foreach ($idUtilisateurs as $utilisateurId) {
-
 
264
			$url = sprintf($urlTpl, $utilisateurId);
-
 
265
			$json = $clientRest->consulter($url);
-
 
266
			$infosUtilisateur = json_decode($json);
-
 
267
			if (isset($infosUtilisateur->courriel) && isset($infosUtilisateur->intitule)) {
-
 
268
				$intitule = $infosUtilisateur->intitule.' ('.$infosUtilisateur->courriel.')';
-
 
269
			} else {
-
 
270
				$intitule = "Utilisateur avec id $utilisateurId introuvable";
-
 
271
			}
240
			$messagerie = $this->conteneur->getMessagerie();
272
			$utilisateursIntitules[$utilisateurId] = $intitule;
241
			$envoieStatut = $messagerie->envoyerTxt($this->testeurCourriel, $sujet, $msgRecap);
273
		}