Subversion Repositories eFlore/Applications.cel

Rev

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

Rev 767 Rev 858
Line 1... Line 1...
1
<?php
1
<?php
-
 
2
// ATTENTION ! Classe compatible uniquement avec nouveau format de bdd du cel //
-
 
3
 
2
/**
4
/**
3
 * Service d'import d'image à partir de mails
5
 * Service d'import d'image à partir de mails
4
 * Encodage en entrée : utf8
6
 * Encodage en entrée : utf8
5
 * Encodage en sortie : utf8
7
 * Encodage en sortie : utf8
6
 *
8
 *
Line 21... Line 23...
21
	public function stockerMailCli($params)
23
	public function stockerMailCli($params)
22
	{
24
	{
23
		$contenu_mail = file_get_contents('php://stdin');
25
		$contenu_mail = file_get_contents('php://stdin');
Line 24... Line 26...
24
 
26
 
25
		$parametres_ajout = array();
27
		$parametres_ajout = array();
Line 26... Line 28...
26
		$parametres_ajout['identifiant'] = $params['-s'];
28
		$parametres_ajout['mail_utilisateur'] = $params['-s'];
Line 27... Line 29...
27
 
29
 
28
		$stockage = $this->stockerMailTemporaire($parametres_ajout, $contenu_mail);
30
		$stockage = $this->stockerMailTemporaire($parametres_ajout, $contenu_mail);
29
			
31
			
30
		if($stockage) {	
32
		if($stockage) {	
31
			$message_attente = 'Votre messsage a été reçu, et est en attente de traitement, '.
33
			$message_attente = 'Votre messsage a été reçu, et est en attente de traitement, '.
32
									'vous recevrez un message lorsque celui-ci aura été effectué';	
34
									'vous recevrez un message lorsque celui-ci aura été effectué';	
33
			mail($parametres_ajout['identifiant'],'Votre message est en attente de traitement',$message_attente);
35
			mail($parametres_ajout['mail_utilisateur'],'Votre message est en attente de traitement',$message_attente);
34
		} else {
36
		} else {
Line 35... Line 37...
35
			$message_echec = 'Votre messsage a été reçu, mais il n\'a pas pu être stocké';	
37
			$message_echec = 'Votre messsage a été reçu, mais il n\'a pas pu être stocké';	
36
			mail($parametres_ajout['identifiant'],'Problème lors de reception du message',$message_echec);
38
			mail($parametres_ajout['mail_utilisateur'],'Problème lors de reception du message',$message_echec);
Line 37... Line 39...
37
		}
39
		}
Line 38... Line 40...
38
	
40
	
39
		exit;
41
		exit;
Line 40... Line 42...
40
	}
42
	}
41
	
43
	
Line 61... Line 63...
61
	{
63
	{
Line 62... Line 64...
62
 
64
 
Line 63... Line 65...
63
		$contenu_mail = file_get_contents('php://stdin');
65
		$contenu_mail = file_get_contents('php://stdin');
64
 
66
 
Line 65... Line 67...
65
		$parametres_ajout = array();
67
		$parametres_ajout = array();
Line 66... Line 68...
66
		$parametres_ajout['identifiant'] = $params['-s'];
68
		$parametres_ajout['mail_utilisateur'] = $params['-s'];
Line 67... Line 69...
67
 
69
 
68
		$ids_stockage = $this->traiterMail($parametres_ajout, $contenu_mail);
70
		$ids_stockage = $this->traiterMail($parametres_ajout, $contenu_mail);
69
		
71
		
Line 70... Line 72...
70
		foreach($ids_stockage as $nom_image => $id_stockage) {
72
		foreach($ids_stockage as $nom_image => $id_stockage) {
71
			
73
			
72
			if($id_stockage) {			
74
			if($id_stockage) {			
Line 73... Line 75...
73
				mail($parametres_ajout['identifiant'],'Votre image a été ajoutée au Carnet en ligne','Votre image '.$nom_image.' a été ajoutée avec succès');
75
				mail($parametres_ajout['mail_utilisateur'],'Votre image a été ajoutée au Carnet en ligne','Votre image '.$nom_image.' a été ajoutée avec succès');
74
			} else {
76
			} else {
Line 85... Line 87...
85
	 * et les ajoute au cel de l'utilisateur expediteur 
87
	 * et les ajoute au cel de l'utilisateur expediteur 
86
	 * 
88
	 * 
87
	 * @param array $params les paramètres du script client, l'utilisateur est indiqué dans la case 'identifiant'
89
	 * @param array $params les paramètres du script client, l'utilisateur est indiqué dans la case 'identifiant'
88
	*/
90
	*/
89
	public function traiterMail($params, $contenu_mail)
91
	public function traiterMail($params, $contenu_mail)
90
	{
92
	{		
91
		
-
 
92
		$pieces_jointes = $this->extrairePiecesJointes($contenu_mail);
93
		$pieces_jointes = $this->extrairePiecesJointes($contenu_mail);
Line 93... Line 94...
93
 
94
 
Line 94... Line 95...
94
		$stockeur_image = new InventoryImage($this->config);
95
		$stockeur_image = new InventoryImage($this->config);
Line -... Line 96...
-
 
96
		
-
 
97
		$ids = array();
-
 
98
		
95
		
99
		$infos_utilisateur = $this->getInfosComplementairesUtilisateurPourMail($params['mail_utilisateur']);
Line 96... Line 100...
96
		$ids = array();
100
		
Line 97... Line 101...
97
		
101
		$params['ce_utilisateur'] = $infos_utilisateur['id_utilisateur'];
Line 109... Line 113...
109
			}
113
			}
110
		}
114
		}
Line 111... Line 115...
111
		
115
		
112
		// TODO: permettre la création d'observations liées aux images à partir du mail
116
		// TODO: permettre la création d'observations liées aux images à partir du mail
113
		// et d'une syntaxe simple à définir
-
 
114
		
117
		// et d'une syntaxe simple à définir
115
		return $ids;
118
		return $ids;
Line 116... Line 119...
116
	}
119
	}
117
	
120
	
Line 136... Line 139...
136
			$nom_fichier = $fichier_ou_dossier->getFilename();
139
			$nom_fichier = $fichier_ou_dossier->getFilename();
Line 137... Line 140...
137
			
140
			
138
			$expediteur_mail = $this->obtenirExpediteurPourNomTemporaireMail($nom_fichier);
141
			$expediteur_mail = $this->obtenirExpediteurPourNomTemporaireMail($nom_fichier);
Line 139... Line 142...
139
			$contenu_mail = file_get_contents($chemin_fichier);
142
			$contenu_mail = file_get_contents($chemin_fichier);
Line 140... Line 143...
140
			
143
			
Line 141... Line 144...
141
			$parametres = array('identifiant' => $expediteur_mail);
144
			$parametres = array('courriel_utilisateur' => $expediteur_mail);
142
			
145