« Action 00021 » : différence entre les versions

Ce wiki, réalisé dans le cadre de la tournée pancanadienne Fab Labs Nation en 2017, est présenté à titre d'artefact informationnel. Il ne sera pas mis à jour jusqu'à nouvel ordre. Plus d'infos : https://fablabsnation.ca. //// This wiki, created for the Fab Labs Nation tour in 2017, is presented as an informational artefact. It will not be updated until further notice. More info : https://fablabsnation.ca.
Aller à : navigation, rechercher
Aucun résumé des modifications
Aucun résumé des modifications
Ligne 2 : Ligne 2 :
|A la date d ouverture de l action=2017/3/22
|A la date d ouverture de l action=2017/3/22
|A le nom de l action=Utiliser la fonction parseur #geocode pour les cartes au lieu de demander les coordonnées
|A le nom de l action=Utiliser la fonction parseur #geocode pour les cartes au lieu de demander les coordonnées
|A l état de suivi de l action=3 - À valider
|A l état de suivi de l action=2 - En cours
|A le responsable de l action=Yoann Ochietti
|A le responsable de l action=Yoann Ochietti
|Concerne=Classe:Organisation, Classe:Fab Lab
|Concerne=Classe:Organisation, Classe:Fab Lab
Ligne 25 : Ligne 25 :
|Est effectué par=Yoann Ochietti
|Est effectué par=Yoann Ochietti
|A la note de suivi d action=Semble s'être stabilisé depuis. À surveiller.
|A la note de suivi d action=Semble s'être stabilisé depuis. À surveiller.
}}
{{Suivi d action
|A la date de suivi d action=2017/4/6 06:26:40 PM
|Est effectué par=Yoann Ochietti
|A la note de suivi d action=geocoding poussé vers FLsQ. Poussé partout mais il manque Maps dans VDJ et des permissions dans AE pour configurer correctement. Devrait être reglé imminement.
}}
}}
Modificationst à l'extension:
Modificationst à l'extension:

Version du 6 avril 2017 à 18:26

Ouverture : 2017-03-22

Échéance :

Responsable(s)

Yoann Ochietti

État de suivi
2 - En cours

Actions liées

Nom de l'action

Utiliser la fonction parseur #geocode pour les cartes au lieu de demander les coordonnées

Contexte de création

Page(s) concernée(s)

Classe:Organisation
Classe:Fab Lab

Suivis

DateParNotes
7 avril 2017 12:42:13Yoann OchiettiFait dans VdJ et AE.
6 avril 2017 18:26:40Yoann Ochiettigeocoding poussé vers FLsQ. Poussé partout mais il manque Maps dans VDJ et des permissions dans AE pour configurer correctement. Devrait être reglé imminement.
3 avril 2017 15:39:08Yoann OchiettiSemble s'être stabilisé depuis. À surveiller.
31 mars 2017 15:10:03Yoann OchiettiFait pour les organisations. Le geocoding actuel plante par moments (internal server error). Il faudrait trouver un manière d'appeler la fonction geocode moins souvent (peut-être de quoi avec la substitution?) ou bien utiliser un autre service plus stable (payant? google?)
30 mars 2017 18:00:09Yoann OchiettiNOTE IMPORTANTE: la fonction #geocode utilisait auparavant google. Le seul autre service disponible (geonames) était très limité au Canada. J'ai donc modifié le fichier de geocoding pour Geonames dans le serveur pour plutôt utiliser l'api gratuite de Geocoder.ca. Cela ralentit les loadings un peu, on pourrait considérer trouver un autre service web de geocoding, c'est assez simple à implémenter au serveur. J'ai fait des backups des versions originales et modifiées des fichiers.
30 mars 2017 18:00:09Yoann OchiettiFait pour les Fab Labs.

Autres notes

Modificationst à l'extension:

protected function getRequestUrl( $address ) {
		global $egMapsGeoNamesUser;
		
		//MODIFICATION YOANN
		return 'https://geocoder.ca/?locate=' . urlencode( $address ) . '&geoit=csv';

		//ORIGINALE
		//return 'http://api.geonames.org/search?q=' . urlencode( $address ) . '&maxRows=1&username=' . urlencode( $egMapsGeoNamesUser );
	}
	protected function parseResponse( $response ) {
	//MODIFICATION YOANN

		$csvValues = explode (',',$response,4)

		$lat = floatval(($csvValues[2]);
		$lon = floatval($csvValues[3]);

	//ORIGINALE
	//	$lon = self::getXmlElementValue( $response, 'lng' );
	//	$lat = self::getXmlElementValue( $response, 'lat' );
		
		// In case one of the values is not found, return false.
		if ( !$lon || !$lat ) return false;

		return [
			'lat' => (float)$lat,
			'lon' => (float)$lon
		];		
	}