Subversion Repositories eFlore/Applications.cel

Rev

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

Rev 2879 Rev 2939
Line 102... Line 102...
102
	/**
102
	/**
103
	 * Service permettant de recréer les miniatures pour des ids d'images
103
	 * Service permettant de recréer les miniatures pour des ids d'images
104
	 * fournis en entrée - @NOTE devrait peut-être être fait avec DELETE ? 
104
	 * fournis en entrée - @NOTE devrait peut-être être fait avec DELETE ? 
105
	 */
105
	 */
106
	protected function getRegenererMiniatures() {
106
	protected function getRegenererMiniatures() {
-
 
107
		$idsImages = array();
107
		$ids = array();
108
		$idsObs = array();
-
 
109
		// par image
108
		if (!empty($_GET['ids'])) {
110
		if (!empty($_GET['ids-img'])) {
-
 
111
			$idsImages = explode(',', $_GET['ids-img']);
-
 
112
			$idsImages = array_unique($idsImages);
-
 
113
		} elseif (!empty($_GET['ids-obs'])) { // par obs
109
			$ids = explode(',', $_GET['ids']);
114
			$idsObs = explode(',', $_GET['ids-obs']);
-
 
115
			$idsObs = array_unique($idsObs);
-
 
116
			// get id images selon id obs
-
 
117
			$req = "SELECT DISTINCT id_image FROM cel_images WHERE ce_observation IN (";
-
 
118
			$req .= implode(',', $idsObs);
-
 
119
			$req .= ");";
-
 
120
			//var_dump($req);
-
 
121
			$resultats = Cel::db()->requeter($req);
-
 
122
			//var_dump($resultats);
-
 
123
			$idsImages = array();
-
 
124
			if ($resultats) {
-
 
125
				foreach ($resultats as $res) {
-
 
126
					$idsImages[] = $res["id_image"];
-
 
127
				}
-
 
128
			}
-
 
129
		}
-
 
130
		// a-t-on trouvé au moins une image ?
-
 
131
		if (empty($idsImages)) {
-
 
132
			$this->envoyerMessageErreur(500, "Erreur: aucune image trouvée - avez-vous bien fourni des valeurs corrected pour un des paramètres \"ids-img\" ou \"ids-obs\" ?");
-
 
133
			return false; // aucun id fourni
110
		}
134
		}
111
		//var_dump($ids);
135
		//var_dump($idsImages);
112
		
136
 
113
		$lib = new ImageRecreation($this->config);
137
		$lib = new ImageRecreation($this->config);
114
		foreach ($ids as $id) {
138
		foreach ($idsImages as $id) {
115
			if (! is_numeric($id)) {
139
			if (! is_numeric($id)) {
116
				continue;
140
				continue; // @TODO faire plutot un array_filter avant
117
			}
141
			}
118
			$id = intval($id);
142
			$id = intval($id);
-
 
143
			//echo "Regen [$id]\n";
119
			$lib->regenererMiniaturesPourId(array($id));
144
			$lib->regenererMiniaturesPourId(array($id));
120
		}
145
		}
121
		return "ok"; // aucune garantie, c'est juste pour faire style
146
		return "ok"; // aucune garantie, c'est juste pour faire style
122
	}
147
	}
Line 142... Line 167...
142
		$suppressionImage = $gestionnaireImage->supprimerImage($idsImages);
167
		$suppressionImage = $gestionnaireImage->supprimerImage($idsImages);
Line 143... Line 168...
143
 
168
 
144
		if ($suppressionImage) {
169
		if ($suppressionImage) {
145
			$this->envoyer('OK');
170
			$this->envoyer('OK');
146
		} else {
171
		} else {
147
			$this->envoyer("Au moins une image « $idImage » n'a pu être supprimé.");
172
			$this->envoyer("Au moins une image « $idImage » n'a pu être supprimée");
148
		}
173
		}
Line 149... Line 174...
149
	}
174
	}
150
 
175