Subversion Repositories Sites.obs-saisons.fr

Compare Revisions

Ignore whitespace Rev 332 → Rev 333

/trunk/applications/graphiques/evolution-evenements.php
24,6 → 24,9
}
$stades_par_type_evenement[$stade['nom']][] = $id_stade;
}
 
$espece_defaut = !empty($_GET['espece']) ? $_GET['espece'] : null;
$stades_defaut = !empty($_GET['stades']) ? $_GET['stades'] : 0;
?>
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
46,12 → 49,14
<script type="text/javascript" src="<?= dirname($_SERVER['PHP_SELF'])."/"; ?>js/jquery-3.2.1.min.js"></script>
<script type="text/javascript" src="<?= dirname($_SERVER['PHP_SELF'])."/"; ?>js/plotly.min.js"></script>
<script type="text/javascript" src="<?= dirname($_SERVER['PHP_SELF'])."/"; ?>js/evolution-evenements.js"></script>
<link media="screen" href="<?= dirname($_SERVER['PHP_SELF'])."/"; ?>css/graphiques.css" type="text/css" rel="stylesheet" />
<link href="<?= dirname($_SERVER['PHP_SELF'])."/"; ?>css/graphiques.css" type="text/css" rel="stylesheet" />
 
<script type="text/javascript">
var url_jrest = <?= json_encode($url_jrest, true) ?>;
var global_evenements = <?= json_encode($stades, true) ?>;
var annees_observations = <?= json_encode(range($annee_min_obs, date('Y')), true) ?>;
var espece_defaut = <?= json_encode($espece_defaut, true) ?>;
var stades_defaut = <?= json_encode($stades_defaut, true) ?>;
</script>
</head>
<body>
60,18 → 65,18
 
<div class="conteneur_selecteur_especes">
<select id="selecteur_liste_especes">
<option value="0" class="espece_type_0" selected="selected"> Choisissez une espèce </option>
<option value="0" class="espece_type_0" <?= $espece_defaut == null ? 'selected="selected"' : '' ?>> Choisissez une espèce </option>
<?php foreach($especes as $id_espece => $infos_espece) : ?>
<option data-id-evenements="[<?= $infos_espece['evenements'] ?>]" value="<?= $id_espece; ?>"><?= mb_ucfirst($infos_espece['nom_vernaculaire']); ?></option>
<option <?= $espece_defaut == $id_espece ? 'selected="selected"' : '' ?> data-id-evenements="[<?= $infos_espece['evenements'] ?>]" value="<?= $id_espece; ?>"><?= mb_ucfirst($infos_espece['nom_vernaculaire']); ?></option>
<?php endforeach; ?>
</select>
</div>
 
<div class="conteneur_selecteur_stades">
<select id="selecteur_stade" class="hide">
<option data-evenements="[]" value="0" class="stade" selected="selected"> Choisissez un évènement </option>
<select id="selecteur_stade" class="<?= $espece_defaut == null ? 'hide' : '' ?>">
<option data-evenements="[]" value="0" class="stade" <?= $stades_defaut == 0 ? 'selected="selected"' : '' ?>> Choisissez un évènement </option>
<?php foreach($stades_par_type_evenement as $nom_stade => $ids_stades) : ?>
<option data-evenements="[<?= implode(',', $ids_stades); ?>]" value="<?= implode(',', $ids_stades); ?>"><?= mb_ucfirst($nom_stade); ?></option>
<option <?= $stades_defaut == implode(',', $ids_stades) ? 'selected="selected"' : '' ?> data-evenements="[<?= implode(',', $ids_stades); ?>]" value="<?= implode(',', $ids_stades); ?>"><?= mb_ucfirst($nom_stade); ?></option>
<?php endforeach; ?>
</select>
</div>
/trunk/applications/graphiques/calendrier-evenements.php
18,6 → 18,9
$annee_min_obs = json_decode(file_get_contents($url_annee_min_obs), true);
 
$annees_observations = range($annee_min_obs, date('Y'));
 
$espece_defaut = !empty($_GET['espece']) ? $_GET['espece'] : null;
$annee_defaut = !empty($_GET['annee']) ? $_GET['annee'] : 0;
?>
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
40,12 → 43,14
<script type="text/javascript" src="<?= dirname($_SERVER['PHP_SELF'])."/"; ?>js/jquery-3.2.1.min.js"></script>
<script type="text/javascript" src="<?= dirname($_SERVER['PHP_SELF'])."/"; ?>js/plotly.min.js"></script>
<script type="text/javascript" src="<?= dirname($_SERVER['PHP_SELF'])."/"; ?>js/calendrier-evenements.js"></script>
<link media="screen" href="<?= dirname($_SERVER['PHP_SELF'])."/"; ?>css/graphiques.css" type="text/css" rel="stylesheet" />
<link href="<?= dirname($_SERVER['PHP_SELF'])."/"; ?>css/graphiques.css" type="text/css" rel="stylesheet" />
 
<script type="text/javascript">
var url_jrest = <?= json_encode($url_jrest, true) ?>;
var global_evenements = <?= json_encode($stades, true) ?>;
var annees_observations = <?= json_encode($annees_observations, true) ?>;
var espece_defaut = <?= json_encode($espece_defaut, true) ?>;
var annee_defaut = <?= json_encode($annee_defaut, true) ?>;
</script>
</head>
<body>
54,9 → 59,9
 
<div class="conteneur_selecteur_especes">
<select id="selecteur_liste_especes">
<option value="0" class="espece_type_0" selected="selected"> Choisissez une espèce </option>
<option value="0" class="espece_type_0" <?= $espece_defaut == null ? 'selected="selected"' : '' ?>> Choisissez une espèce </option>
<?php foreach($especes as $id_espece => $infos_espece) : ?>
<option value="<?= $id_espece; ?>"><?= mb_ucfirst($infos_espece['nom_vernaculaire']); ?></option>
<option <?= $espece_defaut == $id_espece ? 'selected="selected"' : '' ?> value="<?= $id_espece; ?>"><?= mb_ucfirst($infos_espece['nom_vernaculaire']); ?></option>
<?php endforeach; ?>
</select>
</div>
63,9 → 68,9
 
<div class="conteneur_selecteur_annees">
<select id="selecteur_annees">
<option data-evenements="[]" value="0" class="stade" selected="selected"> Toutes les années </option>
<option data-evenements="[]" value="0" class="stade" <?= $annee_defaut == 0 ? 'selected="selected"' : '' ?>> Toutes les années </option>
<?php foreach($annees_observations as $annee_obs) : ?>
<option value="<?= $annee_obs; ?>"><?= $annee_obs; ?></option>
<option <?= $annee_defaut != 0 ? 'selected="selected"' : '' ?> value="<?= $annee_obs; ?>"><?= $annee_obs; ?></option>
<?php endforeach; ?>
</select>
</div>
/trunk/applications/graphiques/css/graphiques.css
1,3 → 1,9
.hide {
display: none;
}
 
.conteneur-criteres > * {
display: inline-block;
margin-left: 5px;
margin-right: 5px;
}
/trunk/applications/graphiques/js/evolution-evenements.js
91,7 → 91,7
var nom_espece_selectionnee = obtenirNomEspeceSelectionnee();
var nom_stade_selectionne = obtenirNomStadeSelectionne().toLowerCase();
 
var titre_graphique = 'Évolution des dates moyennes de ';
var titre_graphique = 'Dates moyennes de ';
if(nb_evenements > 1) {
titre_graphique += 'début et fin de ';
}
112,7 → 112,15
autoticks: false,
tickvals: [1,2,3,4,5,6,7,8,9,10,11,12],
ticktext: ['janvier', 'fevrier', 'mars', 'avril', 'mai', 'juin', 'juillet', 'août', 'septembre', 'octobre', 'novembre', 'décembre'],
}
},
// pour la légende apparaisse en bas du graphique afin de ne pas gâcher
// presque un tiers de l'espace de la page
legend:{
xanchor:"center",
yanchor:"top",
y:-0.3,
x:0.5
}
};
var conteneur_graphique = document.getElementById('conteneur-graphique');
Plotly.purge(conteneur_graphique);
134,4 → 142,8
}
surChangementSelecteurStade($(this).val());
});
 
if(espece_defaut != null && stades_defaut != 0) {
obtenirDonneesStadePhenologiques(espece_defaut, stades_defaut);
}
});
/trunk/applications/graphiques/js/calendrier-evenements.js
37,7 → 37,7
});
}
 
var titre = 'Calendrier phénologique pour l\'espèce '+obtenirNomEspeceSelectionnee();
var titre = 'Espèce '+obtenirNomEspeceSelectionnee();
if(annee == "0") {
titre += '<br /> Toutes les années';
} else {
54,7 → 54,15
hoverformat: '.7f',
tickvals: [1,2,3,4,5,6,7,8,9,10,11,12],
ticktext: ['janvier', 'fevrier', 'mars', 'avril', 'mai', 'juin', 'juillet', 'août', 'septembre', 'octobre', 'novembre', 'décembre'],
}
},
// pour la légende apparaisse en bas du graphique afin de ne pas gâcher
// presque un tiers de l'espace de la page
legend:{
xanchor:"center",
yanchor:"top",
y:-0.3,
x:0.5
}
};
 
Plotly.newPlot('conteneur-graphique', traces, layout);
71,6 → 79,21
$('text.nums, text.name').css('visibility', 'hidden');
$('text.nums, text.name').css('width', 0);
$('text.nums').each(function() {
 
// certains label contiennent du texte qui ne doit pas être changé
// par exemple si un point tombe pile sur un début de mois
// le nom du mois doit rester affiché
if(isNaN($(this).data('unformatted'))) {
$(this).css('visibility', 'visible');
$(this).css('width', '100%');
return true;
}
 
var $label_axe_y = $(this).parent().find(":contains("+axeY+")");
if($label_axe_y.length != 0) {
$label_axe_y.css('z-index', -99999);
$label_axe_y.hide();
}
var $text_hover_clone = creerCopieTooltip($(this), axeY);
$(this).parent().append($text_hover_clone);
});
123,4 → 146,8
}
});
 
if(espece_defaut != null) {
obtenirDonneesPhasesPhenologiques(espece_defaut, annee_defaut);
}
 
});