46,8 → 46,14 |
//FORM IDENTITE : gestion de l'observateur => OK |
|
$(document).ready(function() { |
requeterIdentite();// Sur rechargement de la page |
|
// Interaction sur le formulaire observateur |
$('#courriel').on('keypress', testerLancementRequeteIdentite); |
$('#courriel').on('blur', requeterIdentite); |
$('#courriel').on('keypress', testerLancementRequeteIdentite); |
$('#prenom').on('change', formaterPrenom); |
$('#nom').on('change', formaterNom); |
$('#courriel_confirmation').on('paste', bloquerCopierCollerCourriel); |
}); |
|
function testerLancementRequeteIdentite(event) { |
60,36 → 66,36 |
|
function requeterIdentite() { |
var courriel = $('#courriel').val(); |
//TODO: mettre ceci en paramètre de config |
var urlAnnuaire = SERVICE_ANNUAIRE_ID_URL + courriel; |
$.ajax({ |
url: urlAnnuaire, |
type: 'GET', |
success: function(data, textStatus, jqXHR) { |
if (data != undefined && data[courriel] != undefined) { |
var infos = data[courriel]; |
$('#id_utilisateur').val(infos.id); |
$('#prenom').val(infos.prenom); |
$('#nom').val(infos.nom); |
$('#courriel_confirmation').val(courriel); |
$('#prenom, #nom, #courriel_confirmation').attr('disabled', 'disabled'); |
$('#structure').focus(); |
} else { |
if (courriel) { |
var urlAnnuaire = SERVICE_ANNUAIRE_ID_URL + courriel; |
$.ajax({ |
url: urlAnnuaire, |
type: 'GET', |
success: function(data, textStatus, jqXHR) { |
if (data != undefined && data[courriel] != undefined) { |
var infos = data[courriel]; |
$('#id_utilisateur').val(infos.id); |
$('#prenom').val(infos.prenom); |
$('#nom').val(infos.nom); |
$('#courriel_confirmation').val(courriel); |
$('#prenom, #nom, #courriel_confirmation').attr('disabled', 'disabled'); |
$('#structure').focus(); |
} else { |
surErreurCompletionCourriel(); |
} |
}, |
error: function(jqXHR, textStatus, errorThrown) { |
surErreurCompletionCourriel(); |
}, |
complete: function(jqXHR, textStatus) { |
$('#zone-prenom-nom').removeClass('hidden'); |
$('#zone-courriel-confirmation').removeClass('hidden'); |
} |
}, |
error: function(jqXHR, textStatus, errorThrown) { |
surErreurCompletionCourriel(); |
}, |
complete: function(jqXHR, textStatus) { |
$('#zone-prenom-nom').removeClass('hidden'); |
$('#zone-courriel-confirmation').removeClass('hidden'); |
} |
}); |
} |
} |
|
function surErreurCompletionCourriel() { |
$('#prenom, #nom, #courriel_confirmation').val(''); |
$('#prenom, #nom, #courriel_confirmation').removeAttr('disabled'); |
afficherPanneau('#dialogue-courriel-introuvable'); |
} |
120,6 → 126,11 |
$(this).val(prenom.join(' ')); |
} |
|
function bloquerCopierCollerCourriel() { |
afficherPanneau('#dialogue-bloquer-copier-coller'); |
return false; |
} |
|
//+----------------------------------------------------------------------------------------------------------+ |
//GOOGLE MAP => OK |
|
184,9 → 195,14 |
}); |
|
function initialiserGoogleMap(){ |
latLngDeb = new google.maps.LatLng(46.30871, 2.54395);// Centre de la France |
latLngDeb = new google.maps.LatLng(48.8543, 2.3483);// Paris |
if (VILLE == 'Marseille') { |
latLngDeb = new google.maps.LatLng(43.29545, 5.37458); |
} else if (VILLE == 'Montpellier') { |
latLngDeb = new google.maps.LatLng(43.61077, 3.87672); |
} |
var options = { |
zoom: 5, |
zoom: 16, |
center: latLngDeb, |
mapTypeId: google.maps.MapTypeId.HYBRID, |
mapTypeControlOptions: { |
648,27 → 664,25 |
$('.dropdown-menu input, .dropdown-menu label').on('click', function(event) { |
event.stopPropagation(); |
}); |
|
// Gestion de la liste des taxons |
ajouterAutocompletionNoms(); |
surChangementTaxonListe(); |
$('#taxon-liste').on('change', surChangementTaxonListe); |
console.log('Selected taxon:'+$('#taxon-liste option:selected').val()); |
|
|
// Interaction sur le formulaire observateur |
$('#prenom').on('change', formaterPrenom); |
$('#nom').on('change', formaterNom); |
$('#courriel_confirmation').on('paste', bloquerCopierCollerCourriel); |
// Validation du formulaire |
configurerFormValidator(); |
definirReglesFormValidator(); |
|
// Interaction sur le formulaire obs |
configurerDatePicker('#date'); |
$('a.afficher-coord').on('click', basculerAffichageCoord); |
$('#taxon-liste').on('change', surChangementTaxonListe); |
ajouterAutocompletionNoms(); |
$('.cb-milieux').on('click', function(event) { |
$(this).valid(); |
event.stopPropagation(); |
}); |
|
// Validation du formulaire |
configurerFormValidator(); |
definirReglesFormValidator(); |
|
// Gestion des obs |
$('#ajouter-obs').on('click', ajouterObs); |
$('.obs-nbre').on('changement', surChangementNbreObs); |
$('body').on('click', '.supprimer-obs', supprimerObs); |
768,6 → 782,16 |
}); |
} |
|
function validerFormulaire() { |
var observateur = $('#form-observateur').valid(), |
obs = $('#form-obs').valid(), |
debRue = (latLngDeb == undefined) ? false : true, |
finRue = (latLngFin == undefined) ? false : true; |
var ok = (observateur && obs && debRue && finRue) ? true : false; |
//console.log('observateur:'+observateur+'-obs:'+obs+'-debRue:'+debRue+'-finRue:'+finRue); |
return ok; |
} |
|
function surChangementTaxonListe() { |
if ($('#taxon-liste').val() === '?') { |
$('#taxon-input-groupe').removeClass('hidden'); |
808,11 → 832,6 |
} |
} |
|
function bloquerCopierCollerCourriel() { |
afficherPanneau('#dialogue-bloquer-copier-coller'); |
return false; |
} |
|
function basculerAffichageCoord() { |
$('.afficher-coord-action').toggle(); |
$('#coordonnees-geo').toggle('slow'); |
851,56 → 870,49 |
referentiel = (numNomSel == undefined) ? '' : '['+NOM_SCI_PROJET+']', |
commune = $('#commune-nom').text(), |
codeInsee = $('#commune-code-insee').text(), |
station = $('input[name="adresse"]').val(), |
lat = $('input[name="latitude"]').val(), |
lng = $('input[name="longitude"]').val(), |
date = $('#date').val(), |
site = $('#station').val(), |
revetement = $('#revetement-sol').val(), |
intensiteGestion = $('#intensite-gestion').val(), |
resistance = $('#resistance-traitement-phyto').val(), |
milieux = getMilieux(), |
notes = (nomSpecial ? taxons[numNomSel]['nom_fr'] + ".<br />" : '') + $('#notes').val(); |
|
$('#liste-obs').prepend( |
'<div id="obs'+obsNbre+'" class="row-fluid obs obs'+obsNbre+'">'+ |
'<div class="span12">'+ |
'<div class="well">'+ |
'<div class="obs-action pull-right has-tooltip" data-placement="bottom" '+ |
'title="Supprimer cette observation de la liste à transmettre">'+ |
'<button class="btn btn-danger supprimer-obs" value="'+obsNbre+'" title="'+obsNbre+'">'+ |
'<i class="icon-trash icon-white"></i>'+ |
'</button>'+ |
'</div> '+ |
'<div class="row-fluid">'+ |
'<div class="span2 obs-miniatures">'+ |
ajouterImgMiniatureAuTransfert()+ |
'<div id="obs'+obsNbre+'" class="row-fluid obs obs'+obsNbre+'">' + |
'<div class="span12">' + |
'<div class="well">' + |
'<div class="obs-action pull-right has-tooltip" data-placement="bottom" ' + |
'title="Supprimer cette observation de la liste à transmettre">' + |
'<button class="btn btn-danger supprimer-obs" value="'+obsNbre+'" title="'+obsNbre+'">' + |
'<i class="icon-trash icon-white"></i>' + |
'</button>' + |
'</div> ' + |
'<div class="row-fluid">' + |
'<div class="span2 obs-miniatures">' + |
ajouterImgMiniatureAuTransfert() + |
'</div>'+ |
'<div class="span8">'+ |
'<ul class="unstyled">'+ |
'<div class="span7">' + |
'<ul class="unstyled">' + |
'<li>'+ |
'<span class="nom-sci">' + taxon + '</span> ' + |
formaterNumNomSel(numNomSel)+ |
'<span class="referentiel-obs">' + referentiel + '</span>' + |
' observé à ' + |
formaterNumNomSel(numNomSel) + |
' observé à <br />' + |
'<span class="station">' + station + '</span><br /> ' + |
'<span class="commune">' + commune + '</span> ' + |
'(' + codeInsee + ') [' + lat +' / ' + lng + ']' + |
'(' + codeInsee + ') ' + |
' le ' + |
'<span class="date">' + date + '</span>' + |
'</li>' + |
'<li>' + |
'<span>Site :</span> ' + site + ' ' + ' ; ' + |
'<span>Revêtement au sol :</span> ' + revetement + ' ' + ' ; ' + |
'<span>Intensité de gestion :</span> ' + intensiteGestion + ' ' + ' ; ' + |
'<span>Milieu :</span> ' + milieux + ' ' + ' ; ' + |
'<span>Résistance/Résilience :</span> ' + resistance + ' ' + |
'Milieux : ' + milieux + ' ' + ' ; ' + |
'</li>' + |
'<li>' + |
'Commentaires : ' + notes + |
'</li>'+ |
'</ul>'+ |
'</div>'+ |
'</div>'+ |
'</div>'+ |
'Notes : ' + notes + |
'</li>' + |
'</ul>' + |
'</div>' + |
'</div>' + |
'</div>' + |
'</div>'+ |
'</div>'); |
} |
1045,14 → 1057,6 |
$('#dialogue-bloquer-creer-obs').hide(); |
} |
|
function getNomsImgsOriginales() { |
var noms = new Array(); |
$('.miniature-img').each(function() { |
noms.push($(this).attr('alt')); |
}); |
return noms; |
} |
|
function stockerObsData() { |
var nomHorsListe = $('#taxon-liste').val() == '?' ? true : false; |
nomSpecial = $('#taxon-liste option:selected').hasClass('nom-special'), |
1069,7 → 1073,7 |
'date': $('#date').val(), |
'notes': notes, |
|
'station': $('#station').val(), |
'station': $('input[name="adresse"]').val(), |
'latitude': $('#latitude').val(), |
'longitude': $('#longitude').val(), |
'commune_nom': $('#commune-nom').text(), |
1094,12 → 1098,16 |
//console.log($('#liste-obs').data('obsId'+obsNbre)); |
} |
|
function getNomsImgsOriginales() { |
var noms = new Array(); |
$('.miniature-img').each(function() { |
noms.push($(this).attr('alt')); |
}); |
return noms; |
} |
|
function getObsChpEtendus() { |
var champs = [], |
perceptionTechnicien = getPerceptionTechnicien(); |
if (perceptionTechnicien != undefined) { |
champs.push(perceptionTechnicien); |
} |
var champs = []; |
if (latLngDeb != undefined) { |
var latitudeDebutRue = {cle: 'latitudeDebutRue', label: 'Latitude du début de la rue', valeur: latLngDeb.lat().toFixed(5)}; |
champs.push(latitudeDebutRue); |
1125,19 → 1133,6 |
return champs; |
} |
|
function getPerceptionTechnicien() { |
var perceptionTechnicien = undefined, |
perceptions = []; |
$('.cb-perception-technicien:checked').each(function() { |
perceptions.push($(this).val()); |
}); |
if (perceptions.length > 0) { |
var valeur = Array.prototype.slice.call(perceptions).join(', '); |
perceptionTechnicien = {cle: 'perceptionTechnicien', label: "Perceptions par l'équipe", valeur: valeur}; |
} |
return perceptionTechnicien; |
} |
|
//+----------------------------------------------------------------------------------------------------------+ |
//TRANSFERER OBS : envoie des obs au CEL => OK |
|