Subversion Repositories Sites.obs-saisons.fr

Compare Revisions

Ignore whitespace Rev 276 → Rev 277

/trunk/applications/rendu/squelettes/js/commun.js
1,4 → 1,5
var map = null;
var ctaLayer = null;
var tableau_marqueurs = new Array();
var infowindow = new google.maps.InfoWindow();
var infos_observations = new Array();
11,7 → 12,16
var jour = '0';
var departement = '0';
var region = '0';
var valeur_slider_defaut = '0';
 
/**
*
*/
Date.prototype.getDOY = function() {
var onejan = new Date(this.getFullYear(),0,1);
return Math.ceil((this - onejan) / 86400000);
}
 
var tableau_couleurs = new Array("#A9582B", "#8DC7B8","#ED9355","#A7BD5B",
"#FFC730","#0000FF","#CC4369","#9CA6A2",
"#F7E4A2","#DC574E","#3F6CA9","#DC6C4B",
76,19 → 86,31
if(vars['mois'] != null) {
mois = vars['mois'];
} else {
date = new Date()
date = new Date();
if(annee == date.getFullYear()) {
mois = date.getMonth();
valeur_slider_defaut = date.getDOY();
} else {
mois = 11;
date.setYear(annee);
date.setMonth(mois);
date.setDate(31);
valeur_slider_defaut = date.getDOY();
}
}
if(vars['departement'] != null) {
departement = vars['departement'];
$('#selecteur_liste_departement').val(annee);
} else {
if(vars['region'] != null) {
region = vars['region'];
$('#selecteur_liste_region').val(annee);
}
}
if(vars['cacher_criteres'] != null && vars['cacher_criteres'] == '1') {
$(".criteres").hide();
$(".cacher_widget").hide();
}
}
 
97,15 → 119,18
var UrlBase = url_widget;
UrlBase += '?';
if(type_espece != '0') UrlBase += "type_espece="+type_espece;
//TODO: décider si l'on peut garder l'espece et si le cas échéant on la cache
if(espece != '0') UrlBase += "&espece="+espece;
if(evenement != '0') UrlBase += "&evenement="+evenement;
if(annee != '0') UrlBase += "&annee="+annee;
if(departement != '0') UrlBase += "&departement="+departement;
if(region != '0') UrlBase += "&region="+region;
if(mois != '0') UrlBase += "&mois="+mois;
UrlBase += "&cacher_criteres=1";
UrlBase = UrlBase.replace('?&','?');
code_widget = '<iframe src="'+UrlBase+'" width="780px" height="610px"><p>Votre navigateur ne supporte pas les iframes.</p></iframe>'
code_widget = '<iframe src="'+UrlBase+'" width="735px" height="650px"><p>Votre navigateur ne supporte pas les iframes.</p></iframe>'
return code_widget;
}
141,14 → 166,6
afficherObservations();
}
 
function InitialiserIntervalleDateSlider() {
}
 
/*function est une anneeBissextile(
return eval(an%4)==0 && !(eval(an%100)== 0 && eval(an%400)==0));
}*/
 
function initialiserSliderDates() {
date_min = 1;
157,7 → 174,7
$("#slider_date").slider({
min: date_min,
max: date_max,
value: mois
value: valeur_slider_defaut
});
taille_criteres = Math.round($("#slider_date").width()/(liste_mois.length));
203,8 → 220,6
}
 
 
 
 
function initialiserListeTypesEspeces() {
$('#selecteur_liste_types_especes').change(function() {
249,7 → 264,8
}
 
function initialiserValeursParDefaut() {
id_type_espece = $('select#selecteur_liste_types_especes').val("2");
type_espece = 2;
$('select#selecteur_liste_types_especes').val("2");
modifierTableauEspeces();
obtenirObservations();
}
276,22 → 292,42
************************************************************************************************
************************************************************************************************
**/
 
function initialiserCarte() {
 
if($('#map_canvas').length == 0) {
return;
}
 
var latlng = new google.maps.LatLng(47.0504, 2.2347);
var myOptions = {
zoom: 5,
center: latlng,
mapTypeId: google.maps.MapTypeId.HYBRID
center:latlng,
mapTypeId: google.maps.MapTypeId.HYBRID,
mapTypeControlOptions: {
mapTypeIds: ['OSM',
google.maps.MapTypeId.ROADMAP,
google.maps.MapTypeId.HYBRID,
google.maps.MapTypeId.SATELLITE,
google.maps.MapTypeId.TERRAIN]
}
};
var osmMapType = new google.maps.ImageMapType({
getTileUrl: function(coord, zoom) {
return "http://tile.openstreetmap.org/" +
zoom + "/" + coord.x + "/" + coord.y + ".png";
},
tileSize: new google.maps.Size(256, 256),
isPng: true,
alt: "OpenStreetMap",
name: "OSM",
maxZoom: 19
});
 
map = new google.maps.Map(document.getElementById("map_canvas"),
myOptions);
// Ajout de la couche OSM à la carte
map.mapTypes.set('OSM', osmMapType);
marker = new google.maps.Marker({
position: latlng,
298,6 → 334,8
title:""
});
chargerLimitesCommunales();
$('.lien_vers_profil').live('click', function(event) {
event.preventDefault();
window.open($(this).attr('href'));
305,6 → 343,16
});
}
 
function chargerLimitesCommunales() {
if (urlsLimitesCommunales != null) {
for (urlId in urlsLimitesCommunales) {
var url = urlsLimitesCommunales[urlId];
ctaLayer = new google.maps.KmlLayer(url, {preserveViewport: false});
ctaLayer.setMap(map);
}
}
}
 
function obtenirObservations() {
requete = '?annee='+annee;
/trunk/applications/rendu/squelettes/cartes/observations_especes.tpl.html
21,7 → 21,7
<div class="droite">
<div class="criteres">
<div class="selecteur_critere" id="conteneur_selecteur_liste_annees">
<div class="selecteur_critere cacher_widget" id="conteneur_selecteur_liste_annees">
<select id="selecteur_liste_annees" name="selecteur_liste_annees">
<option value="<?= date('Y') ?>" selected="selected"> <?= date('Y') ?> </option>
<?php for($i = date('Y') - 1 ; $i >= date('Y') - 5; $i--) { ?>
31,7 → 31,7
</div>
</div>
<span class="selecteur_critere" id="conteneur_selecteur_liste_types_especes">
<span class="selecteur_critere cacher_widget" id="conteneur_selecteur_liste_types_especes">
<select id="selecteur_liste_types_especes">
<option value="0" class="espece_type_0" selected="selected"> type d'esp&egrave;ce </option>
<?php foreach($especes as $id_type_espece => $type_espece) : ?>
40,13 → 40,13
</select>
</span>
<span class="selecteur_critere" id="conteneur_selecteur_liste_evenements">
<span class="selecteur_critere cacher_widget" id="conteneur_selecteur_liste_evenements">
<select id="selecteur_evenements">
<option value="0" class="espece_type_0" selected="selected"> tous les ev&egrave;nements </option>
</select>
</span>
<span class="selecteur_critere" id="conteneur_selecteur_liste_region">
<span class="selecteur_critere cacher_widget" id="conteneur_selecteur_liste_region">
<select name="region" id="selecteur_liste_region">
<option value="0" selected="selected">Toutes les régions</option>
<option value="42">Alsace</option>
79,7 → 79,7
</select>
</span>
<br />
<span class="selecteur_critere" id="conteneur_selecteur_liste_departement">
<span class="selecteur_critere cacher_widget" id="conteneur_selecteur_liste_departement">
<select name="dep" id="selecteur_liste_departement" onchange="viderRegion()">
<option selected="selected" value="0">Tous les départements</option>
<option value="01">Ain</option>
196,6 → 196,6
</div>
<hr class="separation_invisible" />
<div class="criteres" id="lien_cette_recherche"><a href="<?= $url; ?>">Obtenir le widget de cette recherche </a></div>
<div class="criteres cacher_widget" id="lien_cette_recherche"><a href="<?= $url; ?>">Obtenir le widget de cette recherche </a></div>
</div>
<!-- ODS_RENDU - FIN CARTE OBS -->
/trunk/applications/rendu/squelettes/cartes/observations_annees.tpl.html
19,7 → 19,7
<div id="map_canvas" style="width:100%; height:100%"></div>
</div>
<div class="droite">
<span class="selecteur_critere" id="conteneur_selecteur_liste_types_especes">
<span class="selecteur_critere cacher_widget" id="conteneur_selecteur_liste_types_especes">
<select id="selecteur_liste_types_especes">
<option value="0" class="espece_type_0" selected="selected"> type d'esp&egrave;ce </option>
<?php foreach($especes as $id_type_espece => $type_espece) : ?>
31,7 → 31,7
<span class="selecteur_critere" id="conteneur_selecteur_liste_especes">
</span>
<span class="selecteur_critere" id="conteneur_selecteur_liste_evenements">
<span class="selecteur_critere cacher_widget" id="conteneur_selecteur_liste_evenements">
<select id="selecteur_evenements">
<option value="0" class="espece_type_0" selected="selected"> tous les ev&egrave;nements </option>
</select>
38,7 → 38,7
</span>
<hr class="separation_invisible" />
<div class="selecteur_critere" id="conteneur_selecteur_liste_annees">
<div class="selecteur_critere cacher_widget" id="conteneur_selecteur_liste_annees">
</div>
</div>
</div>
45,6 → 45,6
<hr class="separation_invisible" />
<div class="criteres" id="lien_cette_recherche"><a href="<?= $url; ?>">Obtenir le widget de cette recherche </a></div>
<div class="criteres cacher_widget" id="lien_cette_recherche"><a href="<?= $url; ?>">Obtenir le widget de cette recherche </a></div>
</div>
<!-- ODS_RENDU - FIN CARTE OBS -->
/trunk/applications/rendu/controleurs/Rendu.php
61,6 → 61,8
}
$chaine_variables_script .= 'tableau_evenements['.$id_evenement.'] = "'.$nom_evenement.'";';
}
$url_limites_communales = $this->obtenirUrlsLimitesCommunales();
$chaine_variables_script .= 'var urlsLimitesCommunales = '.$url_limites_communales.';';
$chaine_variables_script .= '</script> ';
$chaine_variables_script .= '<script type="text/javascript" src="'.Liens::getUrlScript().'rendu_'.$carte.'.js"></script>';
86,4 → 88,47
return $carte;
}
private function obtenirUrlsLimitesCommunales() {
$urls = null;
if (isset($_GET['departement'])) {
// si on veut afficher les limites départementales on va compter et chercher les noms de fichiers
$fichiersKml = $this->chercherFichierKml();
if (count($fichiersKml) > 0) {
foreach ($fichiersKml as $kml => $dossier){
$url_limites_communales = sprintf(Config::get('limitesCommunaleUrlTpl'), $dossier, $kml);
$urls[] = $url_limites_communales;
}
}
}
$urls = json_encode($urls);
return $urls;
}
private function chercherFichierKml(){
$fichiers = array();
$chemins = explode(',', Config::get('communesKmzChemin'));
$departements = explode(',', $_GET['departement']);// plrs code de départements peuvent être demandés séparés par des virgules
$departements_trouves = array();
foreach ($chemins as $dossier_chemin) {
if ($dossier_ressource = opendir($dossier_chemin)) {
while ($element = readdir($dossier_ressource)) {
if ($element != '.' && $element != '..') {
foreach ($departements as $departement) {
$nom_dossier = basename($dossier_chemin);
if (!isset($departements_trouves[$departement]) || $departements_trouves[$departement] == $nom_dossier) {
$dept_protege = preg_quote($departement);
if (!is_dir($dossier_chemin.'/'.$element) && preg_match("/^$dept_protege(?:_[0-9]+|)\.km[lz]$/", $element)) {
$fichiers[$element] = $nom_dossier;
$departements_trouves[$departement] = $nom_dossier;
}
}
}
}
}
closedir($dossier_ressource);
}
}
return $fichiers;
}
}