Subversion Repositories Sites.obs-saisons.fr

Rev

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

Rev 262 Rev 264
1
var map = null;
1
var map = null;
2
var tableau_marqueurs = new Array();
2
var tableau_marqueurs = new Array();
3
var infowindow = new google.maps.InfoWindow();
3
var infowindow = new google.maps.InfoWindow();
4
var infos_observations = new Array();
4
var infos_observations = new Array();
5
 
5
 
6
var type_espece = '0';
6
var type_espece = '0';
7
var espece = '0';
7
var espece = '0';
8
var evenement = '0';
8
var evenement = '0';
9
var annee = '0';
9
var annee = '0';
10
var mois = '0';
10
var mois = '0';
11
var jour = '0';
11
var jour = '0';
12
var departement = '0';
12
var departement = '0';
-
 
13
var region = '0';
13
 
14
 
14
var tableau_couleurs = new Array("#A9582B", "#8DC7B8","#ED9355","#A7BD5B",
15
var tableau_couleurs = new Array("#A9582B", "#8DC7B8","#ED9355","#A7BD5B",
15
		"#FFC730","#0000FF","#CC4369","#9CA6A2",
16
		"#FFC730","#0000FF","#CC4369","#9CA6A2",
16
		"#F7E4A2","#DC574E","#3F6CA9","#DC6C4B",
17
		"#F7E4A2","#DC574E","#3F6CA9","#DC6C4B",
17
		"#E8A794","#9B5F95","#E78EDE","#45808A",
18
		"#E8A794","#9B5F95","#E78EDE","#45808A",
18
		"#168F47","#C9A838","#F2EAD8","#1A5561",
19
		"#168F47","#C9A838","#F2EAD8","#1A5561",
19
		"#6D883A");
20
		"#6D883A");
20
 
21
 
21
liste_mois = new Array("jan","fev","mar","avr","mai","jun","jui","aou","sep","oct","nov","dec");
22
liste_mois = new Array("jan","fev","mar","avr","mai","jun","jui","aou","sep","oct","nov","dec");
22
 
23
 
23
evenements_debut_annee = new Array("")
24
evenements_debut_annee = new Array("")
24
 
25
 
25
var tableau_couleurs_en_cours = new Array();
26
var tableau_couleurs_en_cours = new Array();
26
 
27
 
27
var timerSlider = null;
28
var timerSlider = null;
28
 
29
 
29
function getUrlBaseJrest() {
30
function getUrlBaseJrest() {
30
	return urlBaseJrest;
31
	return urlBaseJrest;
31
}
32
}
32
 
33
 
33
function traiterParametresUrl() {
34
function traiterParametresUrl() {
34
 
35
 
35
	var vars = [], hash;
36
	var vars = [], hash;
36
	var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
37
	var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
37
	for(var i = 0; i < hashes.length; i++)
38
	for(var i = 0; i < hashes.length; i++)
38
	{
39
	{
39
	    hash = hashes[i].split('=');
40
	    hash = hashes[i].split('=');
40
	    vars.push(hash[0]);
41
	    vars.push(hash[0]);
41
	    vars[hash[0]] = hash[1];
42
	    vars[hash[0]] = hash[1];
42
	}
43
	}
43
	
44
	
44
	if(vars['type_espece'] != null) {
45
	if(vars['type_espece'] != null) {
45
		type_espece = vars['type_espece'];
46
		type_espece = vars['type_espece'];
46
		$('#selecteur_liste_types_especes').val(type_espece);
47
		$('#selecteur_liste_types_especes').val(type_espece);
47
	}
48
	}
48
	
49
	
49
	if(vars['espece'] != null) {
50
	if(vars['espece'] != null) {
50
		if(type_espece != '0') {
51
		if(type_espece != '0') {
51
			modifierTableauEspeces();
52
			modifierTableauEspeces();
52
		}
53
		}
53
		espece = vars['espece'];
54
		espece = vars['espece'];
54
		$('#selecteur_especes').val(espece);
55
		$('#selecteur_especes').val(espece);
55
		
56
		
56
	}
57
	}
57
	
58
	
58
	if(vars['evenement'] != null) {
59
	if(vars['evenement'] != null) {
59
		if(espece != 0) {
60
		if(espece != 0) {
60
			modifierTableauEvenement()
61
			modifierTableauEvenement()
61
		}
62
		}
62
		evenement = vars['evenement'];
63
		evenement = vars['evenement'];
63
		$('#selecteur_evenements').val(evenement);
64
		$('#selecteur_evenements').val(evenement);
64
	}
65
	}
65
	
66
	
66
	if(vars['annee'] != null) {
67
	if(vars['annee'] != null) {
67
		annee = vars['annee'];
68
		annee = vars['annee'];
68
		$('#selecteur_liste_annees').val(annee);
69
		$('#selecteur_liste_annees').val(annee);
69
	} else {
70
	} else {
70
		date = new Date()
71
		date = new Date()
71
		annee = date.getFullYear();
72
		annee = date.getFullYear();
72
		$('#selecteur_liste_annees').val(annee);
73
		$('#selecteur_liste_annees').val(annee);
73
	}
74
	}
74
	
75
	
75
	if(vars['mois'] != null) {
76
	if(vars['mois'] != null) {
76
		mois = vars['mois'];
77
		mois = vars['mois'];
77
	} else {
78
	} else {
78
		date = new Date()
79
		date = new Date()
79
	}
80
	}
80
	
81
	
81
	if(vars['departement'] != null) {
82
	if(vars['departement'] != null) {
82
		departement = vars['departement'];
83
		departement = vars['departement'];
83
	}
84
	}
-
 
85
	
-
 
86
	if(vars['region'] != null) {
-
 
87
		region = vars['region'];
-
 
88
	}
84
	
89
	
85
	if(vars['cacher_criteres'] != null && vars['cacher_criteres'] == '1') {
90
	if(vars['cacher_criteres'] != null && vars['cacher_criteres'] == '1') {
86
		$(".criteres").hide();
91
		$(".criteres").hide();
87
	}
92
	}
88
}
93
}
89
 
94
 
90
function obtenirCodeWidget() {
95
function obtenirCodeWidget() {
91
	
96
	
92
	var UrlBase = window.location;
97
	var UrlBase = window.location;
93
	UrlBase += '?';
98
	UrlBase += '?';
94
	if(type_espece != '0') UrlBase += "type_espece="+type_espece;
99
	if(type_espece != '0') UrlBase += "type_espece="+type_espece;
95
	if(espece != '0') UrlBase += "&espece="+espece;
100
	if(espece != '0') UrlBase += "&espece="+espece;
96
	if(evenement != '0') UrlBase += "&evenement="+evenement;
101
	if(evenement != '0') UrlBase += "&evenement="+evenement;
97
	if(annee != '0') UrlBase += "&annee="+annee;
102
	if(annee != '0') UrlBase += "&annee="+annee;
98
	if(mois != '0') UrlBase += "&mois="+mois;
103
	if(mois != '0') UrlBase += "&mois="+mois;
99
	UrlBase += "&cacher_criteres=1";
104
	UrlBase += "&cacher_criteres=1";
100
	
105
	
101
	code_widget = '<iframe src="'+UrlBase+'" width="375px" height="470px"><p>Votre navigateur ne supporte pas les iframes.</p></iframe>'
106
	code_widget = '<iframe src="'+UrlBase+'" width="375px" height="470px"><p>Votre navigateur ne supporte pas les iframes.</p></iframe>'
102
	
107
	
103
	return code_widget;
108
	return code_widget;
104
}
109
}
105
 
110
 
106
$('#lien_cette_recherche').ready(function() {
111
$('#lien_cette_recherche').ready(function() {
107
	$('#lien_cette_recherche').click(function() {
112
	$('#lien_cette_recherche').click(function() {
108
		window.alert(obtenirCodeWidget());
113
		window.alert(obtenirCodeWidget());
109
		return false;
114
		return false;
110
	});
115
	});
111
});
116
});
112
 
117
 
113
$(document).ready(function() {
118
$(document).ready(function() {
114
	traiterParametresUrl();
119
	traiterParametresUrl();
115
});
120
});
116
 
121
 
117
/** 
122
/** 
118
************************************************************************************************
123
************************************************************************************************
119
************************************************************************************************
124
************************************************************************************************
120
 
125
 
121
    Fonctions concernant les gestion des filtres sur la carte
126
    Fonctions concernant les gestion des filtres sur la carte
122
 
127
 
123
************************************************************************************************
128
************************************************************************************************
124
************************************************************************************************
129
************************************************************************************************
125
**/ 
130
**/ 
126
 
131
 
127
function setDateSlider() {	
132
function setDateSlider() {	
128
	numeroJour = $("#slider_date").slider("value");
133
	numeroJour = $("#slider_date").slider("value");
129
	dateObs = new Date(annee,0,0);
134
	dateObs = new Date(annee,0,0);
130
	dateObs.setDate(dateObs.getDate()+numeroJour);
135
	dateObs.setDate(dateObs.getDate()+numeroJour);
131
	
136
	
132
	mois = dateObs.getMonth();
137
	mois = dateObs.getMonth();
133
	jour = dateObs.getDay();
138
	jour = dateObs.getDay();
134
	afficherObservations();	
139
	afficherObservations();	
135
}
140
}
136
 
141
 
137
function InitialiserIntervalleDateSlider() {
142
function InitialiserIntervalleDateSlider() {
138
	
143
	
139
}
144
}
140
 
145
 
141
/*function est une anneeBissextile(	
146
/*function est une anneeBissextile(	
142
		return eval(an%4)==0 && !(eval(an%100)== 0 && eval(an%400)==0));
147
		return eval(an%4)==0 && !(eval(an%100)== 0 && eval(an%400)==0));
143
}*/
148
}*/
144
 
149
 
145
function initialiserSliderDates() {
150
function initialiserSliderDates() {
146
		
151
		
147
	date_min = 1;
152
	date_min = 1;
148
	date_max = 365;
153
	date_max = 365;
149
	
154
	
150
	$("#slider_date").slider({
155
	$("#slider_date").slider({
151
								min: date_min,
156
								min: date_min,
152
								max: date_max,
157
								max: date_max,
153
								value: mois
158
								value: mois
154
							});
159
							});
155
	
160
	
156
	taille_criteres = Math.round($("#slider_date").width()/(liste_mois.length));
161
	taille_criteres = Math.round($("#slider_date").width()/(liste_mois.length));
157
	
162
	
158
	valeurs_slider = '<table id="table_dates"><tbody><tr>';
163
	valeurs_slider = '<table id="table_dates"><tbody><tr>';
159
	
164
	
160
	for (i in liste_mois) {
165
	for (i in liste_mois) {
161
		valeurs_slider += '<td class="conteneur_date">'+liste_mois[i]+'</td>';
166
		valeurs_slider += '<td class="conteneur_date">'+liste_mois[i]+'</td>';
162
	}
167
	}
163
	
168
	
164
	valeurs_slider += '</tr></tbody></table>';
169
	valeurs_slider += '</tr></tbody></table>';
165
	
170
	
166
	$("conteneur_date").css(".conteneur_date{ width:"+taille_criteres+"px;}");
171
	$("conteneur_date").css(".conteneur_date{ width:"+taille_criteres+"px;}");
167
	
172
	
168
	$("#valeurs_date").html(valeurs_slider);
173
	$("#valeurs_date").html(valeurs_slider);
169
		
174
		
170
	$("#slider_date").bind("slidestop", function(event, ui) {
175
	$("#slider_date").bind("slidestop", function(event, ui) {
171
		setDateSlider();
176
		setDateSlider();
172
		return true;
177
		return true;
173
	});
178
	});
174
	
179
	
175
	$(window).bind("resize", resizeWindow);
180
	$(window).bind("resize", resizeWindow);
176
	function resizeWindow( e ) {
181
	function resizeWindow( e ) {
177
		taille_criteres = Math.round($("#slider_date").width()/(liste_mois.length));
182
		taille_criteres = Math.round($("#slider_date").width()/(liste_mois.length));
178
		$("#css_slider").html(".conteneur_date{ width:"+taille_criteres+"px;}");
183
		$("#css_slider").html(".conteneur_date{ width:"+taille_criteres+"px;}");
179
	}
184
	}
180
}
185
}
-
 
186
 
-
 
187
function initialiserListeRegion() {
-
 
188
	
-
 
189
	$('#selecteur_liste_region').change(function() {
-
 
190
		region = $('select#selecteur_liste_region option:selected').val();
-
 
191
		obtenirObservations();	
-
 
192
	});
-
 
193
}
-
 
194
 
-
 
195
function initialiserListeDepartement() {
-
 
196
	
-
 
197
	$('#selecteur_liste_departement').change(function() {
-
 
198
		departement = $('select#selecteur_liste_departement option:selected').val();
-
 
199
		obtenirObservations();	
-
 
200
	});
-
 
201
}
-
 
202
 
-
 
203
 
-
 
204
 
181
 
205
 
182
function initialiserListeTypesEspeces() {
206
function initialiserListeTypesEspeces() {
183
	
207
	
184
	$('#selecteur_liste_types_especes').change(function() {
208
	$('#selecteur_liste_types_especes').change(function() {
185
		type_espece = $('select#selecteur_liste_types_especes option:selected').val();
209
		type_espece = $('select#selecteur_liste_types_especes option:selected').val();
186
		modifierTableauEspeces();
210
		modifierTableauEspeces();
187
		obtenirObservations();	
211
		obtenirObservations();	
188
	});
212
	});
189
}
213
}
190
 
214
 
191
function incrementerValeurSlider() {
215
function incrementerValeurSlider() {
192
	var valeur_en_cours = $('#slider_date').slider("value");
216
	var valeur_en_cours = $('#slider_date').slider("value");
193
	if($('#slider_date').slider("value") < $('#slider_date').slider("option", "max")) {
217
	if($('#slider_date').slider("value") < $('#slider_date').slider("option", "max")) {
194
		valeur_en_cours++;
218
		valeur_en_cours++;
195
		$('#slider_date').slider("value",valeur_en_cours);
219
		$('#slider_date').slider("value",valeur_en_cours);
196
		setDateSlider();
220
		setDateSlider();
197
	} else {
221
	} else {
198
		clearInterval(timerSlider);
222
		clearInterval(timerSlider);
199
		$('#demarrer_slider').removeAttr('disabled');
223
		$('#demarrer_slider').removeAttr('disabled');
200
	}
224
	}
201
}
225
}
202
 
226
 
203
function initialiserBoutonsSlider() {
227
function initialiserBoutonsSlider() {
204
	
228
	
205
	$('#demarrer_slider').click(function() {
229
	$('#demarrer_slider').click(function() {
206
		
230
		
207
		if($('#slider_date').slider("value") == $('#slider_date').slider("option","max")) {
231
		if($('#slider_date').slider("value") == $('#slider_date').slider("option","max")) {
208
			min_slider = $('#slider_date').slider("option","min");
232
			min_slider = $('#slider_date').slider("option","min");
209
			$('#slider_date').slider("value",min_slider);
233
			$('#slider_date').slider("value",min_slider);
210
		}
234
		}
211
		
235
		
212
		timerSlider = setInterval("incrementerValeurSlider()",150);
236
		timerSlider = setInterval("incrementerValeurSlider()",150);
213
		$('#demarrer_slider').attr('disabled', 'disabled');
237
		$('#demarrer_slider').attr('disabled', 'disabled');
214
	});
238
	});
215
	
239
	
216
	$('#arreter_slider').click(function() {
240
	$('#arreter_slider').click(function() {
217
		if(timerSlider != null) {
241
		if(timerSlider != null) {
218
			clearInterval(timerSlider);
242
			clearInterval(timerSlider);
219
			$('#demarrer_slider').removeAttr('disabled');
243
			$('#demarrer_slider').removeAttr('disabled');
220
		}
244
		}
221
	});
245
	});
222
	
246
	
223
}
247
}
224
 
248
 
225
function initialiserValeursParDefaut() {
249
function initialiserValeursParDefaut() {
226
	id_type_espece = $('select#selecteur_liste_types_especes').val("2");
250
	id_type_espece = $('select#selecteur_liste_types_especes').val("2");
227
	modifierTableauEspeces();
251
	modifierTableauEspeces();
228
	obtenirObservations();
252
	obtenirObservations();
229
}
253
}
230
 
254
 
231
$('#slider_date').ready(function() {
255
$('#slider_date').ready(function() {
232
	initialiserSliderDates();
256
	initialiserSliderDates();
233
	initialiserBoutonsSlider();
257
	initialiserBoutonsSlider();
234
	initialiserListeTypesEspeces();
258
	initialiserListeTypesEspeces();
235
	initialiserListeEspeces();
259
	initialiserListeEspeces();
236
	initialiserListeEvenements();
260
	initialiserListeEvenements();
237
	initialiserListeAnnees();
261
	initialiserListeAnnees();
238
	initialiserValeursParDefaut();
262
	initialiserValeursParDefaut();
-
 
263
	initialiserListeRegion();
-
 
264
	initialiserListeDepartement()
239
});
265
});
240
 
266
 
241
 
267
 
242
/** 
268
/** 
243
	************************************************************************************************
269
	************************************************************************************************
244
	************************************************************************************************
270
	************************************************************************************************
245
	
271
	
246
	    Fonctions concernant la carte permettant de pointer d'afficher l'emplacement des observation
272
	    Fonctions concernant la carte permettant de pointer d'afficher l'emplacement des observation
247
	
273
	
248
	************************************************************************************************
274
	************************************************************************************************
249
	************************************************************************************************
275
	************************************************************************************************
250
**/ 
276
**/ 
251
 
277
 
252
function initialiserCarte() {
278
function initialiserCarte() {
253
 
279
 
254
	if($('#map_canvas').length == 0) {
280
	if($('#map_canvas').length == 0) {
255
		return;
281
		return;
256
	}
282
	}
257
 
283
 
258
	var latlng = new google.maps.LatLng(47.0504, 2.2347);
284
	var latlng = new google.maps.LatLng(47.0504, 2.2347);
259
	var myOptions = {
285
	var myOptions = {
260
		zoom: 5,
286
		zoom: 5,
261
		center: latlng,
287
		center: latlng,
262
		mapTypeId: google.maps.MapTypeId.HYBRID
288
		mapTypeId: google.maps.MapTypeId.HYBRID
263
	};
289
	};
264
 
290
 
265
	map = new google.maps.Map(document.getElementById("map_canvas"),
291
	map = new google.maps.Map(document.getElementById("map_canvas"),
266
    	myOptions);
292
    	myOptions);
267
	
293
	
268
	marker = new google.maps.Marker({
294
	marker = new google.maps.Marker({
269
	      position: latlng,
295
	      position: latlng,
270
	      title:""
296
	      title:""
271
	});
297
	});
272
	
298
	
273
	$('.lien_vers_profil').live('click', function(event) {
299
	$('.lien_vers_profil').live('click', function(event) {
274
		event.preventDefault();
300
		event.preventDefault();
275
		window.open($(this).attr('href'));
301
		window.open($(this).attr('href'));
276
		return false;
302
		return false;
277
	});
303
	});
278
}
304
}
279
 
305
 
280
function obtenirObservations() {
306
function obtenirObservations() {
281
		
307
		
282
	requete = '?annee='+annee;
308
	requete = '?annee='+annee;
283
	
309
	
284
	if(type_espece != '0' && espece == '0') { 
310
	if(type_espece != '0' && espece == '0') { 
285
		requete += '&type_espece='+type_espece; 
311
		requete += '&type_espece='+type_espece; 
286
	}
312
	}
287
	
313
	
288
	if(espece != '0') { 
314
	if(espece != '0') { 
289
		requete += '&espece='+espece; 
315
		requete += '&espece='+espece; 
290
	}
316
	}
291
	
317
	
292
	if(evenement != '0') { 
318
	if(evenement != '0') { 
293
		requete += '&evenement='+evenement;
319
		requete += '&evenement='+evenement;
294
	}
320
	}
295
	
321
	
296
	if(departement != '0') { 
322
	if(departement != '0') { 
297
		requete += '&departement='+departement;
323
		requete += '&departement='+departement;
298
	}
324
	}
-
 
325
	
-
 
326
	if(region != '0') { 
-
 
327
		requete += '&region='+region;
-
 
328
	}
299
	
329
	
300
	$.get(getUrlBaseJrest()+'OdsExport/ExportObservationJson/'+requete, function(data) {	
330
	$.get(getUrlBaseJrest()+'OdsExport/ExportObservationJson/'+requete, function(data) {	
301
				
331
				
302
		infos_observations = data;
332
		infos_observations = data;
303
		
333
		
304
		if(tableau_marqueurs.length > 0) {
334
		if(tableau_marqueurs.length > 0) {
305
			viderMarqueurs();
335
			viderMarqueurs();
306
		}
336
		}
307
		
337
		
308
		for(i in infos_observations) {
338
		for(i in infos_observations) {
309
			creerEtAjouterMarqueur(i, infos_observations[i]);
339
			creerEtAjouterMarqueur(i, infos_observations[i]);
310
		}
340
		}
311
		
341
		
312
		afficherObservations();
342
		afficherObservations();
313
	});
343
	});
314
}
344
}
315
 
345
 
316
function creerEtAjouterMarqueur(id_marqueur, infos_obs) {
346
function creerEtAjouterMarqueur(id_marqueur, infos_obs) {
317
	
347
	
318
	latlng = new google.maps.LatLng(infos_obs['latitude'],infos_obs['longitude']);
348
	latlng = new google.maps.LatLng(infos_obs['latitude'],infos_obs['longitude']);
319
	
349
	
320
	var chaine_couleur = '';
350
	var chaine_couleur = '';
321
	
351
	
322
	for(i in infos_obs.obs) {
352
	for(i in infos_obs.obs) {
323
		var observation = infos_obs.obs[i];
353
		var observation = infos_obs.obs[i];
324
		
354
		
325
		if(typeof(tableau_couleurs_en_cours[observation.id_espece]) != 'undefined') {		
355
		if(typeof(tableau_couleurs_en_cours[observation.id_espece]) != 'undefined') {		
326
			chaine_couleur += tableau_couleurs_en_cours[observation.id_espece]+",";
356
			chaine_couleur += tableau_couleurs_en_cours[observation.id_espece]+",";
327
		}
357
		}
328
	}
358
	}
329
	
359
	
330
	chaine_couleur = chaine_couleur.slice(0,chaine_couleur.length - 1);
360
	chaine_couleur = chaine_couleur.slice(0,chaine_couleur.length - 1);
331
    var image = obtenirImagePourChaineCouleur(chaine_couleur);
361
    var image = obtenirImagePourChaineCouleur(chaine_couleur);
332
     
362
     
333
 	tableau_marqueurs[id_marqueur] = new google.maps.Marker({
363
 	tableau_marqueurs[id_marqueur] = new google.maps.Marker({
334
	      position: latlng,
364
	      position: latlng,
335
	      title:infos_obs.evenenement,
365
	      title:infos_obs.evenenement,
336
	      icon:image,
366
	      icon:image,
337
	      optimized: false
367
	      optimized: false
338
	});
368
	});
339
 
369
 
340
	google.maps.event.addListener(tableau_marqueurs[id_marqueur], 'click', function() {
370
	google.maps.event.addListener(tableau_marqueurs[id_marqueur], 'click', function() {
341
		
371
		
342
		contenu_fenetre = formaterContenuFenetre(infos_obs.obs);
372
		contenu_fenetre = formaterContenuFenetre(infos_obs.obs);
343
		infowindow.close();
373
		infowindow.close();
344
		infowindow.content = contenu_fenetre;
374
		infowindow.content = contenu_fenetre;
345
		infowindow.open(map,this);
375
		infowindow.open(map,this);
346
	});
376
	});
347
	
377
	
348
	tableau_marqueurs[id_marqueur].setDraggable(false);
378
	tableau_marqueurs[id_marqueur].setDraggable(false);
349
	tableau_marqueurs[id_marqueur].setClickable(true);
379
	tableau_marqueurs[id_marqueur].setClickable(true);
350
		
380
		
351
	tableau_marqueurs[id_marqueur].setMap(map); 
381
	tableau_marqueurs[id_marqueur].setMap(map); 
352
 
382
 
353
}
383
}
354
 
384
 
355
function viderMarqueurs() {
385
function viderMarqueurs() {
356
	
386
	
357
	infowindow.close();
387
	infowindow.close();
358
	for(i in tableau_marqueurs) {
388
	for(i in tableau_marqueurs) {
359
		tableau_marqueurs[i].setMap(null);
389
		tableau_marqueurs[i].setMap(null);
360
	}
390
	}
361
	
391
	
362
	tableau_marqueurs = new Array();
392
	tableau_marqueurs = new Array();
363
}
393
}
364
 
394
 
365
 
395
 
366
function obtenirImagePourChaineCouleur(chaine_couleur) {
396
function obtenirImagePourChaineCouleur(chaine_couleur) {
367
					
397
					
368
	chaine_couleur = encodeURIComponent(chaine_couleur);
398
	chaine_couleur = encodeURIComponent(chaine_couleur);
369
	var image = getUrlBaseJrest()+"OdsMarqueur/point?couleurs="+chaine_couleur;
399
	var image = getUrlBaseJrest()+"OdsMarqueur/point?couleurs="+chaine_couleur;
370
    
400
    
371
    return image;
401
    return image;
372
}
402
}
373
 
403
 
374
function convertirDateObsVersJs(chaine_date) {
404
function convertirDateObsVersJs(chaine_date) {
375
	
405
	
376
	tableau_date = chaine_date.split('/');
406
	tableau_date = chaine_date.split('/');
377
	date_obs = new Date();
407
	date_obs = new Date();
378
	
408
	
379
	date_obs.setDate(tableau_date[0]);
409
	date_obs.setDate(tableau_date[0]);
380
	date_obs.setMonth(tableau_date[1]);
410
	date_obs.setMonth(tableau_date[1]);
381
	date_obs.setFullYear(tableau_date[2]);
411
	date_obs.setFullYear(tableau_date[2]);
382
	
412
	
383
	return date_obs;
413
	return date_obs;
384
}
414
}
385
 
415
 
386
function dateEstDansIntervalle(t_obs) {
416
function dateEstDansIntervalle(t_obs) {
387
	
417
	
388
	date_obs = convertirDateObsVersJs(t_obs);
418
	date_obs = convertirDateObsVersJs(t_obs);
389
	
419
	
390
	dans_intervalle = false;
420
	dans_intervalle = false;
391
	
421
	
392
	var dateDebutAnnee = new Date();
422
	var dateDebutAnnee = new Date();
393
	dateDebutAnnee.setDate(1);
423
	dateDebutAnnee.setDate(1);
394
	dateDebutAnnee.setMonth(1);
424
	dateDebutAnnee.setMonth(1);
395
	dateDebutAnnee.setFullYear(date_obs.getFullYear());
425
	dateDebutAnnee.setFullYear(date_obs.getFullYear());
396
	var quantieme = (date_obs.getTime() - dateDebutAnnee.getTime()) / (24 * 3600 * 1000)+1;
426
	var quantieme = (date_obs.getTime() - dateDebutAnnee.getTime()) / (24 * 3600 * 1000)+1;
397
	
427
	
398
	if($('#slider_date').slider("value") >= quantieme) {
428
	if($('#slider_date').slider("value") >= quantieme) {
399
		dans_intervalle = true;
429
		dans_intervalle = true;
400
	}
430
	}
401
		
431
		
402
	return dans_intervalle;
432
	return dans_intervalle;
403
}
433
}
404
	
434
	
405
function comparerDates(date_1, date_2){
435
function comparerDates(date_1, date_2){
406
	diff = date_1.getTime()-date_2.getTime();
436
	diff = date_1.getTime()-date_2.getTime();
407
	return (diff==0?diff:diff/Math.abs(diff));
437
	return (diff==0?diff:diff/Math.abs(diff));
408
}
438
}
409
 
439
 
410
function obtenirMarqueurPourStade(stade) {
440
function obtenirMarqueurPourStade(stade) {
411
		
441
		
412
	iconeStade = '../images/marqueur_'+stade+'.png';
442
	iconeStade = '../images/marqueur_'+stade+'.png';
413
 
443
 
414
	return iconeStade;
444
	return iconeStade;
415
}
445
}
416
 
446
 
417
function formaterContenuFenetre(infos_obs) {
447
function formaterContenuFenetre(infos_obs) {
418
	
448
	
419
	contenu_fenetre = '';
449
	contenu_fenetre = '';
420
	date_courante = new Date(annee,mois,jour);
450
	date_courante = new Date(annee,mois,jour);
421
	
451
	
422
	for(i in infos_obs) {
452
	for(i in infos_obs) {
423
		
453
		
424
		t_obs = infos_obs[i].date;
454
		t_obs = infos_obs[i].date;
425
		
455
		
426
		if(dateEstDansIntervalle(t_obs)) {
456
		if(dateEstDansIntervalle(t_obs)) {
427
			nom_stade ='';
457
			nom_stade ='';
428
			if(infos_obs[i].code_bbch != '') {
458
			if(infos_obs[i].code_bbch != '') {
429
				nom_stade = ' stade '+infos_obs[i].code_bbch;
459
				nom_stade = ' stade '+infos_obs[i].code_bbch;
430
			}
460
			}
431
			
461
			
432
			contenu_fenetre += '<div class="fenetre_infos">';
462
			contenu_fenetre += '<div class="fenetre_infos">';
433
			contenu_fenetre += '<div class="nom_sci">'+infos_obs[i].nom_scientifique+'</div>';
463
			contenu_fenetre += '<div class="nom_sci">'+infos_obs[i].nom_scientifique+'</div>';
434
			contenu_fenetre += '<div class="nom_sci">'+infos_obs[i].evenenement+nom_stade+'</div>';
464
			contenu_fenetre += '<div class="nom_sci">'+infos_obs[i].evenenement+nom_stade+'</div>';
435
			contenu_fenetre += '<div class="date_obs"> Observ&eacute; le : '+infos_obs[i].date+' </div>';
465
			contenu_fenetre += '<div class="date_obs"> Observ&eacute; le : '+infos_obs[i].date+' </div>';
436
			contenu_fenetre += construireUrlProfilParticipant(infos_obs[i].participant);
466
			contenu_fenetre += construireUrlProfilParticipant(infos_obs[i].participant);
437
			contenu_fenetre += '</div><br />';
467
			contenu_fenetre += '</div><br />';
438
		}
468
		}
439
	}
469
	}
440
	
470
	
441
	return contenu_fenetre;
471
	return contenu_fenetre;
442
}
472
}
443
 
473
 
444
function construireUrlProfilParticipant(id) {
474
function construireUrlProfilParticipant(id) {
445
	return '<a class="lien_vers_profil" href="http://obs-saisons.fr/user/'+id+'"> Voir l\'auteur </a>';
475
	return '<a class="lien_vers_profil" href="http://obs-saisons.fr/user/'+id+'"> Voir l\'auteur </a>';
446
}
476
}
447
	
477
	
448
 
478
 
449
$('#map_canvas').ready(function() {
479
$('#map_canvas').ready(function() {
450
	initialiserCarte();
480
	initialiserCarte();
451
});
481
});