Subversion Repositories Sites.obs-saisons.fr

Rev

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

Rev 269 Rev 327
Line 1... Line 1...
1
function modifierTableauEspeces() {
1
function modifierTableauEspeces() {
Line 2... Line 2...
2
 
2
 
3
	id_type_espece = $('select#selecteur_liste_types_especes option:selected').val();
3
	id_type_espece = $('select#selecteur_liste_types_especes option:selected').val();
4
	espece = 0;
4
	espece = 0;
5
	
5
 
6
	elements_liste = tableau_especes[id_type_espece];
6
	elements_liste = tableau_especes[id_type_espece];
-
 
7
 
-
 
8
	var especes_triees_par_nom = trierTableau(elements_liste);
-
 
9
	var noms_especes_a_id = renverserTableauEtHashcoderIndex(elements_liste);
7
	
10
 
Line 8... Line 11...
8
	var nb_couleur = 0;
11
	var nb_couleur = 0;
9
 
12
 
10
	chaine_elements_liste = '';
13
	chaine_elements_liste = '';
11
	chaine_elements_liste += '<select id="selecteur_liste_especes" name="selecteur_liste_especes">';
14
	chaine_elements_liste += '<select id="selecteur_liste_especes" name="selecteur_liste_especes">';
-
 
15
	chaine_elements_liste += '<option class="option_espece" value="0"> Toutes les espèces </option>';
-
 
16
	for(i in especes_triees_par_nom) {
12
	chaine_elements_liste += '<option class="option_espece" value="0"> Toutes les espèces </option>';
17
		var nom_espece = especes_triees_par_nom[i];
13
	for(i in elements_liste) { 
18
		var id_espece = noms_especes_a_id[nom_espece.hashCode()];
14
		chaine_elements_liste += '<option class="option_espece" value="'+i+'"> '+elements_liste[i]+' </option>';
19
		chaine_elements_liste += '<option class="option_espece" value="'+id_espece+'"> '+nom_espece+' </option>';
15
	}
20
	}
16
	chaine_elements_liste += '</select>';
21
	chaine_elements_liste += '</select>';
17
	
22
 
Line 18... Line 23...
18
	$('#conteneur_selecteur_liste_especes').html(chaine_elements_liste);	
23
	$('#conteneur_selecteur_liste_especes').html(chaine_elements_liste);
19
}
24
}
20
 
25
 
21
function initialiserListeEspeces() {
26
function initialiserListeEspeces() {
22
	
27
 
23
	$('#selecteur_liste_especes').live('change', function() {
28
	$('#selecteur_liste_especes').live('change', function() {
24
		modifierTableauEvenements();
29
		modifierTableauEvenements();
Line 25... Line 30...
25
		obtenirObservations();	
30
		obtenirObservations();
26
	});
31
	});
27
}
32
}
28
 
33
 
29
function getEspeceSelectionnee() {
34
function getEspeceSelectionnee() {
30
	
35
 
31
	var espece_selectionnee = $('.option_espece:selected').val();
36
	var espece_selectionnee = $('.option_espece:selected').val();
Line 32... Line 37...
32
	espece = espece_selectionnee;
37
	espece = espece_selectionnee;
33
	
38
 
34
	return espece_selectionnee;
39
	return espece_selectionnee;
35
}
40
}
36
 
41
 
37
function modifierTableauEvenements() {
42
function modifierTableauEvenements() {
38
	
43
 
39
	espece_selectionnee = getEspeceSelectionnee();	
44
	espece_selectionnee = getEspeceSelectionnee();
40
	evenement = 0;
45
	evenement = 0;
41
	
46
 
42
	if(espece_selectionnee == 0 ) {
47
	if(espece_selectionnee == 0 ) {
43
		espece_selectionnee = 0;
48
		espece_selectionnee = 0;
44
		liste_evenements_cette_espece = new Array();
49
		liste_evenements_cette_espece = new Array();
45
	} else {		
50
	} else {
46
		evenements_especes = tableau_evenements_especes[espece_selectionnee];
51
		evenements_especes = tableau_evenements_especes[espece_selectionnee];
47
		liste_evenements_cette_espece = evenements_especes.split(',');
52
		liste_evenements_cette_espece = evenements_especes.split(',');
48
	}
53
	}
49
	
54
 
50
	elements_liste = new Array();
55
	elements_liste = new Array();
51
	
56
 
52
	for(j in liste_evenements_cette_espece) {
57
	for(j in liste_evenements_cette_espece) {
53
		elements_liste[j] = liste_evenements_cette_espece[j];
58
		elements_liste[j] = liste_evenements_cette_espece[j];
54
	}
59
	}
55
	
60
 
56
	chaine_elements_liste = '';
61
	chaine_elements_liste = '';
57
	chaine_elements_liste = '<option value="0" class="espece_type_0" selected="selected"> tous les ev&egrave;nements </option>';
62
	chaine_elements_liste = '<option value="0" class="espece_type_0" selected="selected"> Tous les ev&egrave;nements </option>';
58
	for(i in elements_liste) { 
63
	for(i in elements_liste) {
Line 59... Line 64...
59
		chaine_elements_liste += '<option value='+elements_liste[i]+'>'+tableau_evenements[elements_liste[i]]+'</option>';
64
		chaine_elements_liste += '<option value='+elements_liste[i]+'>'+tableau_evenements[elements_liste[i]]+'</option>';
60
	}
65
	}
61
	
66
 
62
	$('#selecteur_evenements').html(chaine_elements_liste);	
67
	$('#selecteur_evenements').html(chaine_elements_liste);
63
}
68
}
64
 
69
 
65
function initialiserListeEvenements() {
70
function initialiserListeEvenements() {
Line 66... Line 71...
66
	
71
 
67
	$('#selecteur_evenements').change(function() {		
72
	$('#selecteur_evenements').change(function() {
68
		evenement = $('select#selecteur_evenements option:selected').val();
-
 
69
		obtenirObservations();	
-
 
70
	});
-
 
71
}
73
		evenement = $('select#selecteur_evenements option:selected').val();
72
 
74
		obtenirObservations();
73
function initialiserListeAnnees() {
75
	});
-
 
76
}
-
 
77
 
-
 
78
function initialiserListeAnnees() {
-
 
79
 
74
	
80
	var chaine_element_date = '';
-
 
81
	var nb_couleur = 0;
75
	var date = new Date();
82
 
-
 
83
	var diviseur_colonnes = annees_ayant_obs.length < 5 ? 1 : 3;
-
 
84
	var division_elements_liste = Math.floor(annees_ayant_obs.length/diviseur_colonnes);
-
 
85
	var compteur_division_element_liste = 0;
-
 
86
 
-
 
87
	chaine_element_date = '<div class="critere" id="selecteur_liste_annees">';
-
 
88
	chaine_element_date += '<div>';
-
 
89
 
76
	var cette_annee = date.getFullYear();
90
	for(i in annees_ayant_obs) {
-
 
91
		if(compteur_division_element_liste > division_elements_liste) {
77
	
92
			chaine_element_date += '</div>';
78
	var chaine_element_date = '';
93
			chaine_element_date += '<div>';
79
	var nb_couleur = 0;
94
			compteur_division_element_liste = 0;
-
 
95
		}
-
 
96
 
-
 
97
		var annee_ayant_obs = annees_ayant_obs[i];
80
	
98
		chaine_element_date += '<span id="conteneur_annee_numero_'+annee_ayant_obs+'" class="conteneur_annee">';
81
	chaine_element_date = '<div class="critere" id="selecteur_liste_annees">';
99
		chaine_element_date += '<span class="legende" style="background-color:'+tableau_couleurs[nb_couleur]+'"></span>';
82
	
100
		chaine_element_date += '<input class="selecteur_date" type="checkbox" id="annee_numero_'+annee_ayant_obs+'" name="selecteur_annees" value="'+annee_ayant_obs+'" />';
83
	for(var i = cette_annee; i >= cette_annee - 5; i--) {
101
		chaine_element_date += '<label for="annee_numero_'+annee_ayant_obs+'">'+annee_ayant_obs+' <span class="nb_obs"></span></label><br />';
84
		chaine_element_date += '<span class="legende" style="background-color:'+tableau_couleurs[nb_couleur]+'"></span>';
102
		chaine_element_date += '</span>';
-
 
103
 
85
		chaine_element_date += '<input class="selecteur_date" type="checkbox" id="annee_numero_'+i+'" name="selecteur_annees" value="'+i+'" />';
104
		compteur_division_element_liste++;
86
		chaine_element_date += '<label for="annee_numero_'+i+'">'+i+'</label><br />';
105
 
87
		
106
		tableau_couleurs_en_cours[annee_ayant_obs] = tableau_couleurs[nb_couleur];
88
		tableau_couleurs_en_cours[i] = tableau_couleurs[nb_couleur];
107
		nb_couleur++;
89
		nb_couleur++;
108
	}
90
	}
-
 
91
	
-
 
92
	chaine_element_date += '</div>';
-
 
93
	
-
 
94
	$('#conteneur_selecteur_liste_annees').html(chaine_element_date);
109
 
95
	
-
 
96
	$('#selecteur_liste_annees').change(function() {
-
 
97
		
-
 
98
		annee = '';
-
 
99
		
-
 
100
		$('.selecteur_date:checked').each(function(){
-
 
101
			annee += $(this).val()+',';
110
	chaine_element_date += '</div>';
102
			i++;
111
	chaine_element_date += '</div>';
103
		}); 
112
 
Line -... Line 113...
-
 
113
	$('#conteneur_selecteur_liste_annees').html(chaine_element_date);
-
 
114
 
-
 
115
	$('#selecteur_liste_annees').change(function() {
-
 
116
		annee = getAnneeSelectionnee();
-
 
117
		obtenirObservations();
-
 
118
	});
-
 
119
}
-
 
120
 
-
 
121
function getAnneeSelectionnee() {
-
 
122
	if($('.selecteur_date:checked').length > 0) {
-
 
123
		var annees_selectionnes = $('.selecteur_date:checked').map(function(){
104
		
124
			 return $(this).val();
105
		if(annee.lastIndexOf( "," ) == annee.length - 1) {
125
		}).get();
-
 
126
		return annees_selectionnes.join(',');
106
			annee = annee.substring(0,annee.length - 1);
127
	} else {
107
		}
-
 
108
		obtenirObservations();	
128
		return (new Date()).getFullYear();
109
	});
129
	}
110
}
130
}
111
 
131
 
112
function afficherObservations() {
132
function afficherObservations() {
113
	
133
 
114
	var chaine_couleur = '';
134
	var nb_total_obs = 0;
115
	
135
	var chaine_couleur = '';
116
	for(i in tableau_marqueurs) {
136
	for(i in tableau_marqueurs) {
-
 
137
		id_obs = i;
117
		id_obs = i;
138
		obs_associees = infos_observations[id_obs];
118
		obs_associees = infos_observations[id_obs];
139
 
119
		
140
		afficher_marqueur = false;
120
		afficher_marqueur = false;
141
		chaine_couleur = '';
121
		chaine_couleur = '';
142
 
122
		
143
		for(j in obs_associees.obs) {
123
		for(j in obs_associees.obs) {
144
 
124
			
145
			nb_total_obs++;
125
			date_obs = obs_associees.obs[j].date;
146
			date_obs = obs_associees.obs[j].date;
126
			afficher_marqueur = dateEstDansIntervalle(date_obs);
147
			afficher_marqueur = dateEstDansIntervalle(date_obs);
127
			
148
 
128
			if(afficher_marqueur) {
149
			if(afficher_marqueur) {
129
				if(typeof(tableau_couleurs_en_cours[date_obs.getFullYear()]) != 'undefined') {		
150
				if(typeof(tableau_couleurs_en_cours[date_obs.getFullYear()]) != 'undefined') {
130
					chaine_couleur += tableau_couleurs_en_cours[date_obs.getFullYear()]+",";
151
					chaine_couleur += tableau_couleurs_en_cours[date_obs.getFullYear()]+",";
131
				}
152
				}
132
			}
153
			}
133
		}
154
		}
134
				
155
 
135
		if(afficher_marqueur && chaine_couleur != '') {
156
		if(afficher_marqueur && chaine_couleur != '') {
136
			chaine_couleur = chaine_couleur.slice(0,chaine_couleur.length - 1);
157
			chaine_couleur = chaine_couleur.slice(0,chaine_couleur.length - 1);
137
		    var image = obtenirImagePourChaineCouleur(chaine_couleur);
158
		    var image = obtenirImagePourChaineCouleur(chaine_couleur);
138
			tableau_marqueurs[i].setIcon(image);
159
			tableau_marqueurs[i].setIcon(image);
139
			
-
 
140
			if(!tableau_marqueurs[i].getVisible()) {
160
 
-
 
161
			if(!tableau_marqueurs[i].getVisible()) {
-
 
162
				tableau_marqueurs[i].setVisible(true);
-
 
163
			}
-
 
164
		} else {
-
 
165
			tableau_marqueurs[i].setVisible(false);
-
 
166
		}
-
 
167
	}
-
 
168
 
-
 
169
	$(".conteneur_selecteur_liste_annees .nb_obs").html("");
-
 
170
	for(annee in nb_observations_par_annee) {
-
 
171
		$("#conteneur_annee_numero_"+annee+" .nb_obs").html(" ("+nb_observations_par_annee[annee]+") ");
-
 
172
	}