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