107,7 → 107,7 |
}); |
|
// Empêcher que le module carto ne bind ses events partout |
$( '#tb-geolocation' ).on( 'submit blur click focus mousedown mouseleave mouseup touchend touchstart change', '*', function( event ) { |
$( '#tb-geolocation' ).on( 'submit blur click focus mousedown mouseleave mouseup change', '*', function( event ) { |
event.preventDefault(); |
return false; |
}); |
445,8 → 445,6 |
//réinitialise taxon.val |
$( '#taxon' ).val( '' ); |
$( '#taxon' ).data( 'numNomSel', '' ); |
// this.initialiserAutocompleteCommune(); |
// this.initialiserGoogleMap( false ); |
}; |
|
// Fichier Images *************************************************************/ |
587,10 → 585,8 |
} |
|
// transfert carto |
const ERROR_TXT_GEOLOC = $( '#geoloc-error' )[0].textContent; |
$( '#tb-geolocation,#geoloc-error' ).remove(); |
$( '#tb-geolocation' ).remove(); |
$( '#geoloc-arbres' ).append( |
'<span id="geoloc-error" class="error hidden">' + ERROR_TXT_GEOLOC + '</span>'+ |
'<tb-geolocation-element'+ |
' id="tb-geolocation-arbres"'+ |
' layer="osm"'+ |
607,19 → 603,12 |
'>'+ |
'</tb-geolocation-element>' |
); |
|
const geolocElements = ['geoloc','geolocalisation','rue','latitude','longitude','commune-nom','commune-insee','altitude','pays']; |
|
$.each( geolocElements, function( i, elementGeo ) { |
$( '#' + elementGeo ).removeClass( elementGeo ); |
$( '#' + elementGeo + '-arbres' ).addClass( elementGeo ); |
}); |
// Empêcher que le module carto ne bind ses events partout |
$( '#tb-geolocation-arbres' ).on( 'submit blur click focus mousedown mouseleave mouseup touchend touchstart change', '*', function( event ) { |
$( '#tb-geolocation-arbres' ).on( 'submit blur click focus mousedown mouseleave mouseup change', '*', function( event ) { |
event.preventDefault(); |
return false; |
}); |
$( '#tb-geolocation-arbres' ).on( 'location', this.locationHandler.bind(this) ); |
$( '#tb-geolocation-arbres' ).on( 'location', this.locationArbresHandler.bind( this ) ); |
} |
}; |
|
694,6 → 683,7 |
var locDatas = location.originalEvent.detail; |
|
if ( this.utils.valOk( locDatas ) ) { |
console.log( locDatas ); |
var rue = ( this.utils.valOk( locDatas.osmRoad ) ) ? locDatas.osmRoad : ''; |
var latitude = ( this.utils.valOk( locDatas.geometry.coordinates[1] ) ) ? locDatas.geometry.coordinates[1] : ''; |
var longitude = ( this.utils.valOk( locDatas.geometry.coordinates[0] ) ) ? locDatas.geometry.coordinates[0] : ''; |
700,8 → 690,6 |
var nomCommune = ''; |
var communeInsee = ''; |
|
console.log( locDatas ); |
|
if ( this.utils.valOk( locDatas.inseeData ) ) { |
nomCommune = locDatas.inseeData.nom; |
communeInsee = ( this.utils.valOk( locDatas.inseeData.code ) ) ? locDatas.inseeData.code : ''; |
714,32 → 702,20 |
var altitude = ( this.utils.valOk( locDatas.elevation ) ) ? locDatas.elevation : ''; |
var pays = ( this.utils.valOk( locDatas.osmCountryCode ) ) ? locDatas.osmCountryCode.toUpperCase() : 'FR'; |
|
$( '.rue' ).val( rue ); |
$( '.latitude' ).val( latitude ); |
$( '.longitude' ).val( longitude ); |
$( '.commune-nom' ).val( nomCommune ); |
$( '.commune-insee' ).val( communeInsee ); |
$( '.altitude' ).val( altitude ); |
$( '.pays' ).val( pays ); |
|
//validation champs géoloc |
if ( this.utils.valOk( $( '.rue' ).val() ) && this.utils.valOk( $( '.commune-nom' ).val() ) ) { |
if ( 'rue-arbres' === $( '.rue' ).attr( 'id' ) ) { |
if( $( '.rue' ).val() === $( '#rue' ).val() && $( '.commune-nom' ).val() === $( '#commune-nom' ).val() ) { |
$( '#rue-error' ).addClass( 'hidden' ); |
$( '.geoloc' ).closest( '.control-group' ).removeClass( 'error' ); |
} else { |
$( '#rue-error' ).removeClass( 'hidden' ); |
$( '.geoloc' ).closest( '.control-group' ).addClass( 'error' ); |
} |
} else { |
if( !this.utils.valOk( $( '#geoloc #error-drc' ) ) ) { |
$( '#geoloc' ).closest( '.control-group' ).removeClass( 'error' ); |
} |
$( '#rue' ).val( rue ); |
$( '#latitude' ).val( latitude ); |
$( '#longitude' ).val( longitude ); |
$( '#commune-nom' ).val( nomCommune ); |
$( '#commune-insee' ).val( communeInsee ); |
$( '#altitude' ).val( altitude ); |
$( '#pays' ).val( pays ); |
if ( this.utils.valOk( $( '#rue' ).val() ) && this.utils.valOk( $( '#commune-nom' ).val() ) ) { |
if( !this.utils.valOk( $( '#geoloc #error-drc' ) ) ) { |
$( '#geoloc' ).closest( '.control-group' ).removeClass( 'error' ); |
} |
$( '#geoloc-error' ).addClass( 'hidden' ); |
} else { |
$( '.geoloc' ).closest( '.control-group' ).addClass( 'error' ); |
$( '#geoloc' ).closest( '.control-group' ).addClass( 'error' ); |
$( '#geoloc-error' ).removeClass( 'hidden' ); |
$( '#releve-date' ).removeClass( 'erreur' ).closest( '.control-group' ).removeClass( 'error' ).find( '#error-drc' ).remove(); |
$( '#geoloc #error-drc' ).remove(); |
750,6 → 726,33 |
} |
|
/** |
* Fonction handler de l'évenement location du module tb-geoloc étape arbres |
*/ |
ReleveApa.prototype.locationArbresHandler = function( location ) { |
var locDatas = location.originalEvent.detail; |
|
if ( this.utils.valOk( locDatas ) ) { |
console.log( locDatas ); |
var rue = ( this.utils.valOk( locDatas.osmRoad ) ) ? locDatas.osmRoad : ''; |
var latitude = ( this.utils.valOk( locDatas.geometry.coordinates[1] ) ) ? locDatas.geometry.coordinates[1] : ''; |
var longitude = ( this.utils.valOk( locDatas.geometry.coordinates[0] ) ) ? locDatas.geometry.coordinates[0] : ''; |
var altitude = ( this.utils.valOk( locDatas.elevation ) ) ? locDatas.elevation : ''; |
|
$( '#rue-arbres' ).val( rue ); |
$( '#latitude-arbres' ).val( latitude ); |
$( '#longitude-arbres' ).val( longitude ); |
$( '#altitude-arbres' ).val( altitude ); |
if ( this.utils.valOk( $( '#latitude-arbres' ).val() ) && this.utils.valOk( $( '#longitude-arbres' ).val() ) ) { |
$( '#geoloc-arbres' ).closest( '.control-group' ).removeClass( 'error' ); |
} else { |
$( '#geoloc-arbres' ).closest( '.control-group' ).addClass( 'error' ); |
} |
} else { |
console.log( 'Error location' ); |
} |
} |
|
/** |
* Ajoute une observation à la liste des obs à transmettre |
* (résumé obs) |
*/ |
852,6 → 855,7 |
}, |
'referentiel' : referentiel, |
'certitude' : $( '#certitude' ).val(), |
'rue-arbres' : $( '#rue-arbres' ).val(), |
'latitude-arbres' : $( '#latitude-arbres' ).val(), |
'longitude-arbres' : $( '#longitude-arbres' ).val(), |
'altitude-arbres' : $( '#altitude-arbres' ).val(), |
867,15 → 871,15 |
releve : { |
'date' : this.utils.fournirDate( $( '#releve-date' ).val() ), |
'rue' : $( '#rue' ).val(), |
'commune-nom' : $( '#commune-nom' ).val(), |
'commentaires' : $( '#commentaires' ).val(), |
'pays' : $( '#pays' ).val(), |
'commune-insee' : $( '#commune-insee' ).val(), |
'latitude' : $( '#latitude' ).val(), |
'longitude' : $( '#longitude' ).val(), |
'altitude' : $( '#altitude' ).val(), |
'commune-nom' : $( '#commune-nom' ).val(), |
'commune-insee' : $( '#commune-insee' ).val(), |
'pays' : $( '#pays' ).val(), |
'zone-pietonne' : $( '#zone-pietonne input:checked' ).val(), |
'pres-lampadaires' : $( '#pres-lampadaires input:checked' ).val() |
'pres-lampadaires' : $( '#pres-lampadaires input:checked' ).val(), |
'commentaires' : $( '#commentaires' ).val() |
} |
}; |
return obsData; |
891,7 → 895,7 |
numNomSel = datasObs.arbre.taxon.numNomSel, |
taxon = datasObs.arbre.taxon.value, |
certitude = datasObs.arbre.certitude, |
rue = datasObs.releve.rue, |
rue = datasObs.arbre['rue-arbres'], |
commune = datasObs.releve['commune-nom'], |
latitudeLongitude = '[' + datasObs.arbre['latitude-arbres'] + ' / ' + datasObs.arbre['longitude-arbres'] + ']', |
miniatures = this.ajouterImgMiniatureAuTransfert( datasObs.arbre['miniature-img'] ), |
1134,6 → 1138,7 |
'rue', |
'zone-pietonne', |
'pres-lampadaires', |
'rue-arbres', |
'latitude-arbres', |
'longitude-arbres', |
'altitude-arbres', |
1151,11 → 1156,7 |
|
$.each( champs, function( i ,value ) { |
cleValeur = ( 3 > i ) ? 'releve' : 'arbre'; |
// console.log(cleValeur); |
// console.log(value); |
// console.log(datasArbres[cleValeur][value]); |
|
|
if ( lthis.utils.valOk( datasArbres[cleValeur][value] ) ) { |
retour.push({ cle : value, valeur : datasArbres[cleValeur][value] }); |
} |
1247,13 → 1248,10 |
} |
}); |
}); |
$( '#rue-arbres' ).val(releveDatas[0]['rue']); |
$( '#rue-arbres' ).val(arbreDatas['rue-arbres']); |
$( '#latitude-arbres' ).val(arbreDatas['latitude-arbres']); |
$( '#longitude-arbres' ).val(arbreDatas['longitude-arbres']); |
$( '#commune-nom-arbres' ).val(releveDatas[0]['commune-nom']); |
$( '#commune-insee-arbres' ).val(releveDatas[0]['commune-insee']); |
$( '#altitude-arbres' ).val(arbreDatas['altitude-arbres']); |
$( '#pays-arbres' ).val(releveDatas[0]['pays']); |
// image |
this.supprimerMiniatures(); |
$.each( arbreDatas['miniature-img'], function( i, value ) { |
1642,13 → 1640,6 |
}, |
$.validator.messages.minMaxOk |
); |
$.validator.addMethod( |
'listFields', |
function ( value, element ) { |
return ( lthis.utils.valOk( value ) ); |
}, |
'' |
); |
|
$.extend( $.validator.defaults, { |
errorElement: 'span', |
1820,10 → 1811,6 |
required : true, |
minlength : 1, |
range : [-180, 180] |
}, |
'rue-arbres' : { |
required : true, |
minlength : 1 |
} |
} |
}); |
1919,8 → 1906,6 |
this.validerDateRueCommune( $( '#releve-date' ).val(), $( '#rue' ).val(), $( '#commune-nom' ).val() ) |
); |
} |
const validerReleve = ( observateur && obs && geoloc && dateRue ); |
|
if ( !obs ) { |
$( 'html, body' ).stop().animate({ |
scrollTop: $( '#zone-observation' ).offset().top |
1957,31 → 1942,28 |
if ( geoloc ) { |
this.masquerPanneau( '#dialogue-geoloc-ko' ); |
if ( dateRue ) { |
$( '.geoloc' ).closest( '.control-group' ).removeClass( 'error' ); |
$( '#geoloc' ).closest( '.control-group' ).removeClass( 'error' ); |
} |
} else { |
this.afficherPanneau( '#dialogue-geoloc-ko' ); |
$( '.geoloc' ).closest( '.control-group' ).addClass( 'error' ); |
$( '#geoloc' ).closest( '.control-group' ).addClass( 'error' ); |
} |
|
return validerReleve; |
return (observateur && obs && geoloc && dateRue); |
}; |
|
/** |
* Valide le formulaire Arbres (= étape 2) au click sur un bouton "suivant" |
*/ |
ReleveApa.prototype.validerArbres = function( etapeReleve = false ) { |
const observateur = ( $( '#form-observateur' ).valid() && $( '#courriel' ).valid() ) |
ReleveApa.prototype.validerArbres = function() { |
const validerReleve = this.validerReleve(); |
const geoloc = ( |
this.utils.valOk( $( '#latitude-arbres' ).val() ) && |
this.utils.valOk( $( '#longitude-arbres' ).val() ) && |
this.utils.valOk( $( '#rue-arbres' ).val() ) && |
this.utils.valOk( $( '#commune-nom-arbres' ).val() ) |
this.utils.valOk( $( '#longitude-arbres' ).val() ) |
); |
const piedArbre = this.utils.valOk( $( '#equipement-pied-arbre' ).val(), false, 'other' ); |
const taxon = this.utils.valOk( $( '#taxon' ).val() ); |
const obs = ( |
$( '#form-observation' ).valid() && |
$( '#form-arbre' ).valid() && |
$( '#form-arbre-fs' ).valid() && |
piedArbre |
2002,21 → 1984,13 |
} |
if ( geoloc ) { |
this.masquerPanneau( '#dialogue-geoloc-ko' ); |
$( '.geoloc' ).closest( '.control-group' ).removeClass( 'error' ); |
$( '#geoloc-arbres' ).closest( '.control-group' ).removeClass( 'error' ); |
} else { |
this.afficherPanneau( '#dialogue-geoloc-ko' ); |
$( '.geoloc' ).closest( '.control-group' ).addClass( 'error' ); |
$( '#geoloc-arbres' ).closest( '.control-group' ).addClass( 'error' ); |
} |
// panneau observateur |
if ( observateur ) { |
this.masquerPanneau( '#dialogue-utilisateur-non-identifie' ); |
$( '#tb-observateur .control-group' ).removeClass( 'error' ); |
} else { |
this.afficherPanneau( '#dialogue-utilisateur-non-identifie' ); |
$( '#tb-observateur .control-group' ).addClass( 'error' ); |
} |
|
return ( observateur && obs && geoloc && taxon ); |
return ( validerReleve && obs && geoloc && taxon ); |
}; |
|
// Controle des panneaux d'infos **********************************************/ |