Subversion Repositories eFlore/Applications.del

Rev

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

Rev 1397 Rev 1398
Line 117... Line 117...
117
		return $obs_merged;
117
		return $obs_merged;
118
	}
118
	}
Line 119... Line 119...
119
 
119
 
120
 
120
 
121
	// utilisée uniquement par ListeImages.php
121
	// utilisée uniquement par ListeImages.php
122
	static function reformateImagesSimpleIndex($obs, $url_pattern = '') {
122
	static function reformateImagesDoubleIndex($obs, $url_pattern = '', $image_format = 'XL') {
123
		// XXX: cf Observation.php::consulter(), nous pourriouns ici
123
		// XXX: cf Observation.php::consulter(), nous pourriouns ici
124
		// conserver les valeurs vides (pour les phptests notamment, ou non)
124
		// conserver les valeurs vides (pour les phptests notamment, ou non)
125
		$obs = array_map('array_filter', $obs);
125
		// $obs = array_map('array_filter', $obs);
126
		$obs_merged = array();
126
		$obs_merged = $obs_keyed_by_id_image = array();
127
		foreach($obs as $o) {
-
 
128
			// $id = $o['jsonindex']; // non, ça nous complique la tâche,
127
		foreach($obs as $o) {
-
 
128
			// ceci nous complique la tâche pour le reste du processing...
-
 
129
			$id = $o['jsonindex'];
-
 
130
			// ainsi nous utilisons deux tableaux: le final, indexé par couple d'id(image-obs)
129
			// faisons ça à la fin.
131
			// et celui indexé par simple id_image qui est fort utile pour mapVotesToImages()
130
			$id = $o['id_image'];
132
			// mais tout deux partage leur référence à "protocole"
131
			$image = array(
133
			$image = array(
132
				'id_image' => $o['id_image'],
134
				'id_image' => $o['id_image'],
133
				'binaire.href' => sprintf($url_pattern, $o['id_image']),
-
 
134
				'mots_cles_texte' => $o['i_mots_cles_texte'],
135
				'binaire.href' => sprintf($url_pattern, $o['id_image'], $image_format),
135
				'jsonindex' => $o['jsonindex'], // tmp
136
				'mots_cles_texte' => @$o['i_mots_cles_texte'], // @, peut avoir été filtré par array_map() ci-dessus
136
			);
137
			);
137
			unset($o['id_image'], $o['i_mots_cles_texte'], $o['jsonindex']);
138
			unset($o['id_image'], $o['i_mots_cles_texte'], $o['jsonindex']);
-
 
139
			if(!isset($obs_merged[$id])) $obs_merged[$id] = $image;
-
 
140
			$obs_merged[$id]['observation'] = $o;
-
 
141
			$obs_merged[$id]['protocoles_votes'] = array();
138
			if(!isset($obs_merged[$id])) $obs_merged[$id] = $image;
142
			
-
 
143
			$obs_keyed_by_id_image[$image['id_image']]['protocoles_votes'] = &$obs_merged[$id]['protocoles_votes'];
139
			$obs_merged[$id]['observation'] = $o;
144
		}
140
		}
145
 
Line 141... Line 146...
141
		return $obs_merged;
146
		return array($obs_merged,$obs_keyed_by_id_image);
142
	}
147
	}
143
 
148