| Line 116... |
Line 116... |
| 116 |
}
|
116 |
}
|
| Line 117... |
Line 117... |
| 117 |
|
117 |
|
| 118 |
$requete = 'SELECT oo_date, oo_ce_evenement FROM ods_observations oo '.
|
118 |
$requete = 'SELECT oo_date, oo_ce_evenement FROM ods_observations oo '.
|
| 119 |
'LEFT JOIN ods_individus oi ON oi_id_individu = oo_ce_individu '.
|
119 |
'LEFT JOIN ods_individus oi ON oi_id_individu = oo_ce_individu '.
|
| 120 |
'INNER JOIN ods_especes oe ON oe.oe_espece_active = 1 '.
|
120 |
'INNER JOIN ods_especes oe ON oe.oe_espece_active = 1 '.
|
| - |
|
121 |
'AND oe.oe_id_espece = oi_ce_espece ';
|
| 121 |
'AND oe.oe_id_espece = oi_ce_espece '.
|
122 |
|
| - |
|
123 |
// si on indique zéro on peut obtenir toutes les années
|
| 122 |
'WHERE oo_date != "0000-00-00" AND DAY(oo_date) != "00" '.
|
124 |
if(isset($_GET['annee']) && $_GET['annee'] != 0) {
|
| - |
|
125 |
$requete .= 'AND YEAR(oo_date) = '.$this->proteger($_GET['annee']).' ';
|
| - |
|
126 |
}
|
| - |
|
127 |
|
| 123 |
'AND YEAR(oo_date) = '.$this->proteger($_GET['annee']).' '.
|
128 |
$requete .= 'WHERE oo_date != "0000-00-00" AND DAY(oo_date) != "00" '.
|
| 124 |
'AND oi_ce_espece = '.$this->proteger($_GET['espece']).' '.
|
129 |
'AND oi_ce_espece = '.$this->proteger($_GET['espece']).' '.
|
| 125 |
'AND oo_ce_participant != "4" AND oo_ce_participant != 1 AND oo_absence_evenement = "0" '.
|
130 |
'AND oo_ce_participant != "4" AND oo_ce_participant != 1 AND oo_absence_evenement = "0" '.
|
| Line 126... |
Line 131... |
| 126 |
'ORDER BY oo_date DESC';
|
131 |
'ORDER BY oo_date DESC';
|
| Line 143... |
Line 148... |
| 143 |
$jour_mois_num = (date('d', $date_time)/$nb_jours_dans_mois)+date('m', $date_time);
|
148 |
$jour_mois_num = (date('d', $date_time)/$nb_jours_dans_mois)+date('m', $date_time);
|
| 144 |
// on garde 7 chiffres après la virgule car côté client on a besoin de s'assurer d'une largeur
|
149 |
// on garde 7 chiffres après la virgule car côté client on a besoin de s'assurer d'une largeur
|
| 145 |
// suffisante lors du calcul de la légende de chaque point.
|
150 |
// suffisante lors du calcul de la légende de chaque point.
|
| 146 |
// En fait la largeur du nombre détermine la largeur de son conteneur affiché lorsdu hover sur le point,
|
151 |
// En fait la largeur du nombre détermine la largeur de son conteneur affiché lorsdu hover sur le point,
|
| 147 |
// or il est nécessaire de remplacer cette légende lors de l'affichage (qui contient un nombre) par une vraie date.
|
152 |
// or il est nécessaire de remplacer cette légende lors de l'affichage (qui contient un nombre) par une vraie date.
|
| - |
|
153 |
// ceci est une limitation plot.ly (côté client) qui n'offre pas de fonction de formatage
|
| 148 |
$jour_mois_num = number_format($jour_mois_num, 7);
|
154 |
$jour_mois_num = number_format($jour_mois_num, 7);
|
| Line 149... |
Line 155... |
| 149 |
|
155 |
|
| 150 |
$donnees_formatees[$cle_groupe_evenements]['x'][] = $jour_mois_num;
|
156 |
$donnees_formatees[$cle_groupe_evenements]['x'][] = $jour_mois_num;
|