Subversion Repositories eFlore/Applications.cel

Rev

Rev 1386 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1386 Rev 1470
1
<?php
1
<?php
2
// ATTENTION ! Classe compatible uniquement avec nouveau format de bdd du cel //
2
// ATTENTION ! Classe compatible uniquement avec nouveau format de bdd du cel //
3
 
3
 
4
/**
4
/**
5
* PHP Version 5
5
* PHP Version 5
6
*
6
*
7
* @category  PHP
7
* @category  PHP
8
* @package   jrest
8
* @package   jrest
9
* @author    Aurelien Peronnet <aurelien@tela-botanica.org>
9
* @author    Aurelien Peronnet <aurelien@tela-botanica.org>
10
* @copyright 2010 Tela-Botanica
10
* @copyright 2010 Tela-Botanica
11
* @license   http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL
11
* @license   http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL
12
* @version   SVN: <svn_id>
12
* @version   SVN: <svn_id>
13
* @link      /doc/jrest/
13
* @link      /doc/jrest/
14
*/
14
*/
15
 
15
 
16
/**
16
/**
17
* Classe de gestion de l'ajout, modification et suppression des images
17
* Classe de gestion de l'ajout, modification et suppression des images
18
* 
18
* 
19
* in=utf8
19
* in=utf8
20
* out=utf8
20
* out=utf8
21
*
21
*
22
*/ 
22
*/ 
23
class GestionImage extends Cel {
23
class GestionImage extends Cel {
24
	
24
	
25
	/**
25
	/**
26
	* Ajoute une image dans la base de données et stocke le fichier en fabriquant les miniatures,
26
	* Ajoute une image dans la base de données et stocke le fichier en fabriquant les miniatures,
27
	* renvoie le nouvel id d'image en cas de succès
27
	* renvoie le nouvel id d'image en cas de succès
28
	* 
28
	* 
29
	* @param int $id_utilisateur identifiant de l'utilisateur
29
	* @param int $id_utilisateur identifiant de l'utilisateur
30
	* @param array $infos_fichier les infos sur le fichier à traiter, de la même forme que les
30
	* @param array $infos_fichier les infos sur le fichier à traiter, de la même forme que les
31
	* élements du tableau $_FILES de php
31
	* élements du tableau $_FILES de php
32
	*/
32
	*/
33
	public function ajouterImage($id_utilisateur, $infos_fichier) {
33
	public function ajouterImage($id_utilisateur, $infos_fichier) {
34
		
34
		
35
		$nouvel_ordre = $this->obtenirNouvelOrdrePourUtilisateur($id_utilisateur);
35
		$nouvel_ordre = $this->obtenirNouvelOrdrePourUtilisateur($id_utilisateur);
36
		
36
		
37
		if (!$nouvel_ordre) {
37
		if (!$nouvel_ordre) {
38
			$message = 'Erreur lors du calcul du nouvel ordre de l\'image';
38
			$message = 'Erreur lors du calcul du nouvel ordre de l\'image';
39
			$this->logger($message);
39
			$this->logger($message);
40
		}
40
		}
41
		
41
		
42
		$extracteur_metadonnees = new ExtracteurMetadonnees();
42
		$extracteur_metadonnees = new ExtracteurMetadonnees();
43
		$informations_image = $extracteur_metadonnees->extraireMetadonnees($infos_fichier['tmp_name']) ;
43
		$informations_image = $extracteur_metadonnees->extraireMetadonnees($infos_fichier['tmp_name']) ;
44
				
44
				
45
		if(!$informations_image) {
45
		if(!$informations_image) {
46
			$message = 'Erreur lors de l\'extraction des metadonnées';
46
			$message = 'Erreur lors de l\'extraction des metadonnées';
47
			$this->logger($message);
47
			$this->logger($message);
48
		}
48
		}
49
		
49
		
50
		// ajout de quelques informations supplémentaire, en sus 
50
		// ajout de quelques informations supplémentaire, en sus 
51
		// des metadonnées dejà extraites
51
		// des metadonnées dejà extraites
52
		$informations_image['ordre'] = $nouvel_ordre ;
52
		$informations_image['ordre'] = $nouvel_ordre ;
53
		$informations_image['publiable_eflore'] = 'false' ;
53
		$informations_image['publiable_eflore'] = 'false' ;
54
		$informations_image['nom_original'] = $infos_fichier['name'] ;
54
		$informations_image['nom_original'] = $infos_fichier['name'] ;
55
		
55
		
56
		// le md5 du fichier sert à repérer les images en doublons
56
		// le md5 du fichier sert à repérer les images en doublons
57
		$informations_image['md5'] = md5_file($infos_fichier['tmp_name']) ;
57
		$informations_image['md5'] = md5_file($infos_fichier['tmp_name']) ;
58
		
58
		
59
		$informations_image['ce_utilisateur'] = $id_utilisateur ;
59
		$informations_image['ce_utilisateur'] = $id_utilisateur ;
60
		
60
		
61
		$infos_utilisateur = $this->getInfosComplementairesUtilisateur($id_utilisateur);	
61
		$infos_utilisateur = $this->getInfosComplementairesUtilisateur($id_utilisateur);	
62
		
62
		
63
		$informations_image['courriel_utilisateur'] = $infos_utilisateur['courriel'];
63
		$informations_image['courriel_utilisateur'] = $infos_utilisateur['courriel'];
64
		$informations_image['nom_utilisateur'] = $infos_utilisateur['nom'];
64
		$informations_image['nom_utilisateur'] = $infos_utilisateur['nom'];
65
		$informations_image['prenom_utilisateur'] = $infos_utilisateur['prenom'];
65
		$informations_image['prenom_utilisateur'] = $infos_utilisateur['prenom'];
66
		
66
		
67
		$requete_insertion_infos_image = $this->construireRequeteInsertionImage($informations_image);
67
		$requete_insertion_infos_image = $this->construireRequeteInsertionImage($informations_image);
68
		
68
		
69
		// important ! ne pas utiliser la fonction executerRequete qui renvoie une erreur si la requete contient des | (pipes)
69
		// important ! ne pas utiliser la fonction executerRequete qui renvoie une erreur si la requete contient des | (pipes)
70
		// ce qui est fréquent dans les métadonnées 
70
		// ce qui est fréquent dans les métadonnées 
71
		// TODO: corriger la fonction ou bien continuer à utiliser executerRequeteSimple
71
		// TODO: corriger la fonction ou bien continuer à utiliser executerRequeteSimple
72
		$resultat_insertion_infos_image = $this->executerRequeteSimple($requete_insertion_infos_image);
72
		$resultat_insertion_infos_image = $this->executerRequeteSimple($requete_insertion_infos_image);
73
 
73
 
74
		if (!$resultat_insertion_infos_image) {
74
		if (!$resultat_insertion_infos_image) {
75
			$message = "Echec de l'insertion dans la base de donnees : " ;
75
			$message = "Echec de l'insertion dans la base de donnees : " ;
76
			$this->logger($message);
76
			$this->logger($message);
77
        }
77
        }
78
 
78
 
79
		$id_nouvelle_image = $this->obtenirIdImagePourIdentifiantEtOrdre($id_utilisateur, $nouvel_ordre);
79
		$id_nouvelle_image = $this->obtenirIdImagePourIdentifiantEtOrdre($id_utilisateur, $nouvel_ordre);
80
		
80
		
81
		if (!$id_nouvelle_image)
81
		if (!$id_nouvelle_image)
82
		{
82
		{
83
			$message =  'Impossible d\'obtenir le nouvel identifiant de l\'image' ;
83
			$message =  'Impossible d\'obtenir le nouvel identifiant de l\'image' ;
84
			$this->logger($message);
84
			$this->logger($message);
85
		}
85
		}
86
		
86
		
87
		$manipulateur_image = new ImageRecreation($this->config);
87
		$manipulateur_image = new ImageRecreation($this->config);
88
		$fichier_stocke = $manipulateur_image->stockerFichierEtCreerMiniatures($infos_fichier,$id_nouvelle_image);
88
		$fichier_stocke = $manipulateur_image->stockerFichierEtCreerMiniatures($infos_fichier,$id_nouvelle_image);
89
		
89
		
90
		if (!$fichier_stocke) {
90
		if (!$fichier_stocke) {
91
			$message =  'Erreur lors du stockage du fichier' ;
91
			$message =  'Erreur lors du stockage du fichier' ;
92
			$this->logger($message);
92
			$this->logger($message);
93
		}
93
		}
94
		
94
		
95
		return $id_nouvelle_image;
95
		return $id_nouvelle_image;
96
	}
96
	}
97
	
97
	
98
	private function obtenirNouvelOrdrePourUtilisateur($id_utilisateur) {
98
	private function obtenirNouvelOrdrePourUtilisateur($id_utilisateur) {
99
 
99
 
100
		$nouvel_ordre = 0 ;
100
		$nouvel_ordre = 0 ;
101
		
101
		
102
		$requete_selection_ordre_max ='SELECT MAX(ordre) as max_ordre FROM cel_images WHERE ce_utilisateur = '.$this->proteger($id_utilisateur) ;
102
		$requete_selection_ordre_max ='SELECT MAX(ordre) as max_ordre FROM cel_images WHERE ce_utilisateur = '.$this->proteger($id_utilisateur) ;
103
		$resultat_requete_ordre_max = $this->executerRequete($requete_selection_ordre_max);
103
		$resultat_requete_ordre_max = $this->executerRequete($requete_selection_ordre_max);
104
						
104
						
105
		if($resultat_requete_ordre_max !== false) {
105
		if($resultat_requete_ordre_max !== false) {
106
			$nouvel_ordre = $resultat_requete_ordre_max[0]['max_ordre'];
106
			$nouvel_ordre = $resultat_requete_ordre_max[0]['max_ordre'];
107
			$nouvel_ordre++;
107
			$nouvel_ordre++;
108
		}
108
		}
109
		
109
		
110
		return $nouvel_ordre;
110
		return $nouvel_ordre;
111
	}
111
	}
112
	
112
	
113
	private function obtenirIdImagePourIdentifiantEtOrdre($id_utilisateur, $ordre) {
113
	private function obtenirIdImagePourIdentifiantEtOrdre($id_utilisateur, $ordre) {
114
		
114
		
115
		$id_image = false;
115
		$id_image = false;
116
		
116
		
117
		$requete_id_image ='SELECT id_image FROM cel_images WHERE ce_utilisateur = '.$this->proteger($id_utilisateur).' AND ordre = '.$ordre ;
117
		$requete_id_image ='SELECT id_image FROM cel_images WHERE ce_utilisateur = '.$this->proteger($id_utilisateur).' AND ordre = '.$ordre ;
118
		$resultat_id_image = $this->executerRequete($requete_id_image);
118
		$resultat_id_image = $this->executerRequete($requete_id_image);
119
 
119
 
120
        if (count($resultat_id_image) > 0)
120
        if (count($resultat_id_image) > 0)
121
		{
121
		{
122
			$id_image = $resultat_id_image[0]['id_image'];
122
			$id_image = $resultat_id_image[0]['id_image'];
123
        }
123
        }
124
		
124
		
125
        return $id_image;
125
        return $id_image;
126
	}
126
	}
127
	
127
	
128
	private function construireRequeteInsertionImage($informations_image) {
128
	private function construireRequeteInsertionImage($informations_image) {
129
		
129
		
130
		$requete_insertion_image = "INSERT INTO cel_images ";
130
		$requete_insertion_image = "INSERT INTO cel_images ";
131
		
131
		
132
		$champs_a_inserer = '' ;
132
		$champs_a_inserer = '' ;
133
		$valeurs_a_inserer = '' ;
133
		$valeurs_a_inserer = '' ;
134
 
134
 
135
		foreach ($informations_image as $champ => $valeur)
135
		foreach ($informations_image as $champ => $valeur)
136
		{
136
		{
137
			$champs_a_inserer .= $champ.',' ;
137
			$champs_a_inserer .= $champ.',' ;
138
 
138
 
139
			if (is_null($valeur))
139
			if (is_null($valeur))
140
			{
140
			{
141
				$valeurs_a_inserer .= 'NULL,' ;
141
				$valeurs_a_inserer .= 'NULL,' ;
142
			}
142
			}
143
			else
143
			else
144
			{
144
			{
145
				$valeurs_a_inserer .= $this->proteger($valeur).',' ;
145
				$valeurs_a_inserer .= $this->proteger($valeur).',' ;
146
			}
146
			}
147
		}
147
		}
148
 
148
 
149
        $champs_a_inserer .= 'date_modification,' ;
149
        $champs_a_inserer .= 'date_modification,' ;
150
        $valeurs_a_inserer .= '"0000-00-00 00:00:00",' ;
150
        $valeurs_a_inserer .= '"0000-00-00 00:00:00",' ;
151
        $champs_a_inserer .= 'date_creation' ;
151
        $champs_a_inserer .= 'date_creation' ;
152
        $valeurs_a_inserer .= 'CURRENT_TIMESTAMP()' ;
152
        $valeurs_a_inserer .= 'CURRENT_TIMESTAMP()' ;
153
 
153
 
154
		$requete_insertion_image .= "(".$champs_a_inserer.") VALUES (".$valeurs_a_inserer.")" ;
154
		$requete_insertion_image .= "(".$champs_a_inserer.") VALUES (".$valeurs_a_inserer.")" ;
155
		
155
		
156
		return $requete_insertion_image;
156
		return $requete_insertion_image;
157
	}
157
	}
158
	
158
	
159
	/**
159
	/**
160
	 * Modifie les champs de metadonnées d'une image
160
	 * Modifie les champs de metadonnées d'une image
161
	 * 
161
	 * 
162
	 * @param array $utilisateur identifiant utilisateur
162
	 * @param array $utilisateur identifiant utilisateur
163
	 * @param array $id id de l'image
163
	 * @param array $id id de l'image
164
	 * @param array $parametres un taleau contenant des valeurs indexées par les noms de champs de la bdd
164
	 * @param array $parametres un taleau contenant des valeurs indexées par les noms de champs de la bdd
165
	 * 
165
	 * 
166
	 * @return boolean true ou false suivant le succès de l'opération
166
	 * @return boolean true ou false suivant le succès de l'opération
167
	 * 
167
	 * 
168
	*/
168
	*/
169
	public function modifierImage($utilisateur, $id_image, $parametres) {
169
	public function modifierImage($utilisateur, $id_image, $parametres) {
170
		
170
		
171
		$requete_mise_a_jour_image = 'UPDATE cel_images SET ' ;
171
		$requete_mise_a_jour_image = 'UPDATE cel_images SET ' ;
172
		
172
		
173
		$champs_a_mettre_a_jour = $this->construireRequeteMajMetaDonnees($parametres);
173
		$champs_a_mettre_a_jour = $this->construireRequeteMajMetaDonnees($parametres);
174
		$requete_mise_a_jour_image .= $champs_a_mettre_a_jour;
174
		$requete_mise_a_jour_image .= $champs_a_mettre_a_jour;
175
 
175
 
176
		$requete_mise_a_jour_image .= ' WHERE id_image = '.$this->proteger($id_image).
176
		$requete_mise_a_jour_image .= ' WHERE id_image = '.$this->proteger($id_image).
177
									  ' AND ce_utilisateur = '.$this->proteger($utilisateur);
177
									  ' AND ce_utilisateur = '.$this->proteger($utilisateur);
178
 
178
 
179
		$resultat_mise_a_jour = $this->executerRequeteSimple($requete_mise_a_jour_image);
179
		$resultat_mise_a_jour = $this->executerRequeteSimple($requete_mise_a_jour_image);
180
		
180
		
181
		return ($resultat_mise_a_jour !== false);
181
		return ($resultat_mise_a_jour !== false);
182
	}
182
	}
183
	
183
	
184
	/**
184
	/**
185
	 * Assemble la requete de mise à jour des champs de metadonnées
185
	 * Assemble la requete de mise à jour des champs de metadonnées
186
	 * 
186
	 * 
187
	 * @param array $valeurs_metadonnees un taleau contenant des valeurs indexées par les noms de champs de la bdd
187
	 * @param array $valeurs_metadonnees un taleau contenant des valeurs indexées par les noms de champs de la bdd
188
	 * 
188
	 * 
189
	 * @return string une sous chaine sql utilisable dans une requete de type UPPDATE table SET valeur1=champ1 ...
189
	 * @return string une sous chaine sql utilisable dans une requete de type UPPDATE table SET valeur1=champ1 ...
190
	 * 
190
	 * 
191
	*/
191
	*/
192
	private function construireRequeteMajMetaDonnees($valeurs_metadonnees) {
192
	private function construireRequeteMajMetaDonnees($valeurs_metadonnees) {
193
		
193
		
194
		$requete_maj_champs = '';
194
		$requete_maj_champs = '';
195
		
195
		
196
		$champs_a_ignorer = array('id_image');
196
		$champs_a_ignorer = array('id_image');
197
		
197
		
198
		foreach ($valeurs_metadonnees as $champ  => $valeur)
198
		foreach ($valeurs_metadonnees as $champ  => $valeur)
199
		{		
199
		{		
200
			if (!in_array($champ,$champs_a_ignorer)) {
200
			if (!in_array($champ,$champs_a_ignorer)) {
201
				if ($champ == 'date_prise_de_vue') {
201
				if ($champ == 'date_prise_de_vue') {
202
	
202
	
203
					$date_tab = explode('/',$valeur) ;
203
					$date_tab = explode('/',$valeur) ;
204
					$date = $date_tab[2].'-'.$date_tab[1].'-'.$date_tab[0] ;
204
					$date = $date_tab[2].'-'.$date_tab[1].'-'.$date_tab[0] ;
205
	
205
	
206
					$requete_maj_champs .= $champ.' = '.$this->proteger($date).' , ' ;
206
					$requete_maj_champs .= $champ.' = '.$this->proteger($date).' , ' ;
207
	
207
	
208
				}
208
				}
209
				else {
209
				else {
210
					$requete_maj_champs .= $champ.' = '.$this->proteger($valeur).' , ' ;
210
					$requete_maj_champs .= $champ.' = '.$this->proteger($valeur).' , ' ;
211
				}
211
				}
212
			}
212
			}
213
		}
213
		}
214
 
214
 
215
		$requete_maj_champs = rtrim($requete_maj_champs,' , ') ;
215
		$requete_maj_champs = rtrim($requete_maj_champs,' , ') ;
216
		
216
		
217
		return $requete_maj_champs;
217
		return $requete_maj_champs;
218
	}
218
	}
219
	
219
	
220
	public function supprimerImageParOrdre($id_utilisateur, $ordre_image_ou_tableau) {
220
	public function supprimerImageParOrdre($id_utilisateur, $ordre_image_ou_tableau) {
221
		
221
		
222
		if(is_array($ordre_image_ou_tableau)) {
222
		if(is_array($ordre_image_ou_tableau)) {
223
			$id_image_ou_tableau = array_map(array($this,'proteger'),$ordre_image_ou_tableau);
223
			$id_image_ou_tableau = array_map(array($this,'proteger'),$ordre_image_ou_tableau);
224
			$ids_images = implode(',',$ordre_image_ou_tableau);
224
			$ids_images = implode(',',$ordre_image_ou_tableau);
225
		} else {
225
		} else {
226
			$ids_images = $this->proteger($ordre_image_ou_tableau);
226
			$ids_images = $this->proteger($ordre_image_ou_tableau);
227
		}
227
		}
228
		
228
		
229
		$requete_selection_ids_images = 'SELECT id_image FROM cel_images WHERE '.
229
		$requete_selection_ids_images = 'SELECT id_image FROM cel_images WHERE '.
230
												'ce_utilisateur = '.$this->proteger($id_utilisateur).' '.
230
												'ce_utilisateur = '.$this->proteger($id_utilisateur).' '.
231
												'AND ordre IN ('.$ids_images.') ';
231
												'AND ordre IN ('.$ids_images.') ';
232
					
232
					
233
		$tableau_ids_images = $this->executerRequete($requete_selection_ids_images);
233
		$tableau_ids_images = $this->executerRequete($requete_selection_ids_images);
234
		$chaine_ids_images = '';
234
		$chaine_ids_images = '';
235
		foreach($tableau_ids_images as $id_image) {
235
		foreach($tableau_ids_images as $id_image) {
236
			$chaine_ids_images .= $id_image['id_image'];
236
			$chaine_ids_images .= $id_image['id_image'];
237
		}
237
		}
238
		
238
		
239
		$chaine_ids_images = rtrim($chaine_ids_images,',');
239
		$chaine_ids_images = rtrim($chaine_ids_images,',');
240
		
240
		
241
		return $this->supprimerImage($id_utilisateur, $ordre_image_ou_tableau);
241
		return $this->supprimerImage($id_utilisateur, $ordre_image_ou_tableau);
242
	}
242
	}
243
	
243
	
244
	public function supprimerImage($id_utilisateur, $id_image_ou_tableau) {
244
	public function supprimerImage($id_utilisateur, $id_image_ou_tableau) {
245
		
245
		
246
		if(is_array($id_image_ou_tableau)) {
246
		if(is_array($id_image_ou_tableau)) {
247
			$id_image_ou_tableau = array_map(array($this,'proteger'),$id_image_ou_tableau);
247
			$id_image_ou_tableau = array_map(array($this,'proteger'),$id_image_ou_tableau);
248
			$chaine_ids_images = implode(',',$id_image_ou_tableau);
248
			$chaine_ids_images = implode(',',$id_image_ou_tableau);
249
		} else {
249
		} else {
250
			$chaine_ids_images = $this->proteger($id_image_ou_tableau);
250
			$chaine_ids_images = $this->proteger($id_image_ou_tableau);
251
		}
251
		}
252
						
252
						
253
		$requete_suppression_images = "DELETE FROM cel_images WHERE id_image in (".$chaine_ids_images.")";
253
		$requete_suppression_images = "DELETE FROM cel_images WHERE id_image in (".$chaine_ids_images.")";
254
		
254
		
255
		$requete_suppression_lien_images_obs = "DELETE FROM cel_obs_images WHERE id_image in (".$chaine_ids_images.")";
255
		$requete_suppression_lien_images_obs = "DELETE FROM cel_obs_images WHERE id_image in (".$chaine_ids_images.")";
256
		$requete_suppression_lien_images_mots_cles = "DELETE FROM cel_images_mots_cles WHERE id_image in (".$chaine_ids_images.")";
256
		$requete_suppression_lien_images_mots_cles = "DELETE FROM cel_images_mots_cles WHERE id_image in (".$chaine_ids_images.")";
257
		
257
		
258
		$resultat_suppression_image = $this->executerRequeteSimple($requete_suppression_images);
258
		$resultat_suppression_image = $this->executerRequeteSimple($requete_suppression_images);
259
		$resultat_suppression_lien_images_obs = $this->executerRequeteSimple($requete_suppression_lien_images_obs);
259
		$resultat_suppression_lien_images_obs = $this->executerRequeteSimple($requete_suppression_lien_images_obs);
260
		$resultat_suppression_lien_images_mots_cles = $this->executerRequeteSimple($requete_suppression_lien_images_mots_cles);
260
		$resultat_suppression_lien_images_mots_cles = $this->executerRequeteSimple($requete_suppression_lien_images_mots_cles);
261
		
261
		
262
		if ($resultat_suppression_image === false) {
262
		if ($resultat_suppression_image === false) {
263
			$message =  'Erreur lors de la suppression de l\'image' ;
263
			$message =  'Erreur lors de la suppression de l\'image' ;
264
			$this->logger($message);
264
			$this->logger($message);
265
		}
265
		}
266
		
266
		
267
		if ($resultat_suppression_lien_images_obs === false) {
267
		if ($resultat_suppression_lien_images_obs === false) {
268
			$message =  'Erreur lors de la suppression des observations associées à l\'image' ;
268
			$message =  'Erreur lors de la suppression des observations associées à l\'image' ;
269
			$this->logger($message);
269
			$this->logger($message);
270
		}
270
		}
271
		
271
		
272
		if (!$resultat_suppression_lien_images_mots_cles === false) {
272
		if (!$resultat_suppression_lien_images_mots_cles === false) {
273
			$message =  'Erreur lors de la suppression des mots cles associés à l\'image' ;
273
			$message =  'Erreur lors de la suppression des mots cles associés à l\'image' ;
274
			$this->logger($message);
274
			$this->logger($message);
275
		}
275
		}
276
 
276
 
277
		$manipulateur_image = new ImageRecreation($this->config);
277
		$manipulateur_image = new ImageRecreation($this->config);
278
		
278
		
279
		$tableau_ids_image = explode(',',$ids_images);
279
		$tableau_ids_image = explode(',',$ids_images);
280
		
280
		
281
		foreach($tableau_ids_image as $id_image_a_detruire) {
281
		foreach($tableau_ids_image as $id_image_a_detruire) {
282
        	$destruction_fichier_image = $manipulateur_image->detruireImageSurDisque($id_image_a_detruire);
282
        	$destruction_fichier_image = $manipulateur_image->detruireImageSurDisque($id_image_a_detruire);
283
		}
283
		}
284
		
284
		
285
		return $destruction_fichier_image;
285
		return $destruction_fichier_image;
286
	}
286
	}
-
 
287
	
-
 
288
	/**
-
 
289
	* Fonction utilisée pour importer les anciennes images saisies dans les widget dans un compte identifié
-
 
290
	* Dans ce cas là, le widget remplit la case id_utilisateur par le mail indiqué lors de la saisie
-
 
291
	* @param string $mail_utilisateur
-
 
292
	* @param string $id_utilisateur
-
 
293
	*/
-
 
294
	public function migrerImagesMailVersId($mail_utilisateur, $infos_utilisateur) {
-
 
295
		// ATTENTION : cette fonction suppose que l'utilisateur n'ai pas déjà d'images dans le CEL
-
 
296
		// avec l'identifiant $id_utilisateur ce qui est normalement le cas
-
 
297
		$requete_migration_releve = 'UPDATE cel_images SET '.
-
 
298
										'ce_utilisateur = '.$this->proteger($infos_utilisateur['id_utilisateur']).', '.
-
 
299
										'prenom_utilisateur = '.$this->proteger($infos_utilisateur['prenom']).', '.
-
 
300
										'nom_utilisateur = '.$this->proteger($infos_utilisateur['nom']).', '.
-
 
301
										'courriel_utilisateur = '.$this->proteger($infos_utilisateur['courriel']).' '.
-
 
302
										'WHERE ce_utilisateur = '.$this->proteger($mail_utilisateur).' ';
-
 
303
		
-
 
304
		$migration_releve = $this->executerRequeteSimple($requete_migration_releve);
-
 
305
	
-
 
306
		return $migration_releve;
-
 
307
	}
287
}
308
}
288
?>
309
?>