Subversion Repositories eFlore/Applications.cel

Rev

Rev 3317 | Rev 3329 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 3317 Rev 3322
Line 105... Line 105...
105
			}, 300 );
105
			}, 300 );
106
		}
106
		}
107
	});
107
	});
Line 108... Line 108...
108
 
108
 
109
	// Empêcher que le module carto ne bind ses events partout
109
	// Empêcher que le module carto ne bind ses events partout
110
	$( '#tb-geolocation' ).on( 'submit blur click focus mousedown mouseleave mouseup touchend touchstart change', '*', function( event ) {
110
	$( '#tb-geolocation' ).on( 'submit blur click focus mousedown mouseleave mouseup change', '*', function( event ) {
111
		event.preventDefault();
111
		event.preventDefault();
112
		return false;
112
		return false;
113
	});
113
	});
Line 443... Line 443...
443
ReleveApa.prototype.surChangementReferentiel = function() {
443
ReleveApa.prototype.surChangementReferentiel = function() {
444
	this.nomSciReferentiel = $( '#referentiel' ).val();
444
	this.nomSciReferentiel = $( '#referentiel' ).val();
445
	//réinitialise taxon.val
445
	//réinitialise taxon.val
446
	$( '#taxon' ).val( '' );
446
	$( '#taxon' ).val( '' );
447
	$( '#taxon' ).data( 'numNomSel', '' );
447
	$( '#taxon' ).data( 'numNomSel', '' );
448
	// this.initialiserAutocompleteCommune();
-
 
449
	// this.initialiserGoogleMap( false );
-
 
450
};
448
};
Line 451... Line 449...
451
 
449
 
452
// Fichier Images *************************************************************/
450
// Fichier Images *************************************************************/
453
/**
451
/**
Line 585... Line 583...
585
			this.chargerImgEnregistrees();
583
			this.chargerImgEnregistrees();
586
			this.numArbre = $.parseJSON( $( '#releve-data' ).val() ).length - 1;
584
			this.numArbre = $.parseJSON( $( '#releve-data' ).val() ).length - 1;
587
		}
585
		}
Line 588... Line 586...
588
 
586
 
589
		// transfert carto
-
 
590
		const ERROR_TXT_GEOLOC = $( '#geoloc-error' )[0].textContent;
587
		// transfert carto
591
		$( '#tb-geolocation,#geoloc-error' ).remove();
588
		$( '#tb-geolocation' ).remove();
592
		$( '#geoloc-arbres' ).append(
-
 
593
			'<span id="geoloc-error" class="error hidden">' + ERROR_TXT_GEOLOC + '</span>'+
589
		$( '#geoloc-arbres' ).append(
594
			'<tb-geolocation-element'+
590
			'<tb-geolocation-element'+
595
				' id="tb-geolocation-arbres"'+
591
				' id="tb-geolocation-arbres"'+
596
				' layer="osm"'+
592
				' layer="osm"'+
597
				' zoom_init="20"'+
593
				' zoom_init="20"'+
Line 605... Line 601...
605
				' elevation_provider="mapquest"'+
601
				' elevation_provider="mapquest"'+
606
				' map_quest_api_key="mG6oU5clZHRHrOSnAV0QboFI7ahnGg34"'+
602
				' map_quest_api_key="mG6oU5clZHRHrOSnAV0QboFI7ahnGg34"'+
607
			'>'+
603
			'>'+
608
			'</tb-geolocation-element>'
604
			'</tb-geolocation-element>'
609
		);
605
		);
610
 
-
 
611
		const geolocElements = ['geoloc','geolocalisation','rue','latitude','longitude','commune-nom','commune-insee','altitude','pays'];
-
 
612
 
-
 
613
		$.each( geolocElements, function( i, elementGeo ) {
-
 
614
			$( '#' + elementGeo ).removeClass( elementGeo );
-
 
615
			$( '#' + elementGeo + '-arbres' ).addClass( elementGeo );
-
 
616
		});
-
 
617
		// Empêcher que le module carto ne bind ses events partout
606
		// Empêcher que le module carto ne bind ses events partout
618
		$( '#tb-geolocation-arbres' ).on( 'submit blur click focus mousedown mouseleave mouseup touchend touchstart change', '*', function( event ) {
607
		$( '#tb-geolocation-arbres' ).on( 'submit blur click focus mousedown mouseleave mouseup change', '*', function( event ) {
619
			event.preventDefault();
608
			event.preventDefault();
620
			return false;
609
			return false;
621
		});
610
		});
622
		$( '#tb-geolocation-arbres' ).on( 'location', this.locationHandler.bind(this) );
611
		$( '#tb-geolocation-arbres' ).on( 'location', this.locationArbresHandler.bind( this ) );
623
	}
612
	}
624
};
613
};
Line 625... Line 614...
625
 
614
 
626
ReleveApa.prototype.chargerImgEnregistrees = function() {
615
ReleveApa.prototype.chargerImgEnregistrees = function() {
Line 692... Line 681...
692
 */
681
 */
693
ReleveApa.prototype.locationHandler = function( location ) {
682
ReleveApa.prototype.locationHandler = function( location ) {
694
	var locDatas     = location.originalEvent.detail;
683
	var locDatas     = location.originalEvent.detail;
Line 695... Line 684...
695
 
684
 
-
 
685
	if ( this.utils.valOk( locDatas ) ) {
696
	if ( this.utils.valOk( locDatas ) ) {
686
		console.log( locDatas );
697
		var rue          = ( this.utils.valOk( locDatas.osmRoad ) ) ? locDatas.osmRoad : '';
687
		var rue          = ( this.utils.valOk( locDatas.osmRoad ) ) ? locDatas.osmRoad : '';
698
		var latitude     = ( this.utils.valOk( locDatas.geometry.coordinates[1] ) ) ? locDatas.geometry.coordinates[1] : '';
688
		var latitude     = ( this.utils.valOk( locDatas.geometry.coordinates[1] ) ) ? locDatas.geometry.coordinates[1] : '';
699
		var longitude    = ( this.utils.valOk( locDatas.geometry.coordinates[0] ) ) ? locDatas.geometry.coordinates[0] : '';
689
		var longitude    = ( this.utils.valOk( locDatas.geometry.coordinates[0] ) ) ? locDatas.geometry.coordinates[0] : '';
700
		var nomCommune   = '';
690
		var nomCommune   = '';
Line 701... Line -...
701
		var	communeInsee = '';
-
 
702
 
-
 
703
		console.log( locDatas );
691
		var	communeInsee = '';
704
 
692
 
705
		if ( this.utils.valOk( locDatas.inseeData ) ) {
693
		if ( this.utils.valOk( locDatas.inseeData ) ) {
706
			nomCommune = locDatas.inseeData.nom;
694
			nomCommune = locDatas.inseeData.nom;
707
			communeInsee = ( this.utils.valOk( locDatas.inseeData.code ) ) ? locDatas.inseeData.code : '';
695
			communeInsee = ( this.utils.valOk( locDatas.inseeData.code ) ) ? locDatas.inseeData.code : '';
Line 712... Line 700...
712
		}
700
		}
Line 713... Line 701...
713
 
701
 
714
		var altitude     = ( this.utils.valOk( locDatas.elevation ) ) ? locDatas.elevation : '';
702
		var altitude     = ( this.utils.valOk( locDatas.elevation ) ) ? locDatas.elevation : '';
Line 715... Line 703...
715
		var pays         = ( this.utils.valOk( locDatas.osmCountryCode ) ) ? locDatas.osmCountryCode.toUpperCase() : 'FR';
703
		var pays         = ( this.utils.valOk( locDatas.osmCountryCode ) ) ? locDatas.osmCountryCode.toUpperCase() : 'FR';
716
 
704
 
717
		$( '.rue' ).val( rue );
705
		$( '#rue' ).val( rue );
718
		$( '.latitude' ).val( latitude );
706
		$( '#latitude' ).val( latitude );
719
		$( '.longitude' ).val( longitude );
707
		$( '#longitude' ).val( longitude );
720
		$( '.commune-nom' ).val( nomCommune );
708
		$( '#commune-nom' ).val( nomCommune );
721
		$( '.commune-insee' ).val( communeInsee );
709
		$( '#commune-insee' ).val( communeInsee );
722
		$( '.altitude' ).val( altitude );
-
 
723
		$( '.pays' ).val( pays );
-
 
724
 
710
		$( '#altitude' ).val( altitude );
725
		//validation champs géoloc
-
 
726
		if ( this.utils.valOk( $( '.rue' ).val() ) && this.utils.valOk( $( '.commune-nom' ).val() ) ) {
-
 
727
			if ( 'rue-arbres' === $( '.rue' ).attr( 'id' ) ) {
-
 
728
				if( $( '.rue' ).val() === $( '#rue' ).val() && $( '.commune-nom' ).val() === $( '#commune-nom' ).val() ) {
-
 
729
					$( '#rue-error' ).addClass( 'hidden' );
-
 
730
					$( '.geoloc' ).closest( '.control-group' ).removeClass( 'error' );
-
 
731
				} else {
-
 
732
					$( '#rue-error' ).removeClass( 'hidden' );
-
 
733
					$( '.geoloc' ).closest( '.control-group' ).addClass( 'error' );
-
 
734
				}
711
		$( '#pays' ).val( pays );
735
			} else {
712
		if ( this.utils.valOk( $( '#rue' ).val() ) && this.utils.valOk( $( '#commune-nom' ).val() ) ) {
736
				if( !this.utils.valOk( $( '#geoloc #error-drc' ) ) ) {
-
 
737
					$( '#geoloc' ).closest( '.control-group' ).removeClass( 'error' );
713
			if( !this.utils.valOk( $( '#geoloc #error-drc' ) ) ) {
738
				}
714
				$( '#geoloc' ).closest( '.control-group' ).removeClass( 'error' );
739
			}
715
			}
740
			$( '#geoloc-error' ).addClass( 'hidden' );
716
			$( '#geoloc-error' ).addClass( 'hidden' );
741
		} else {
717
		} else {
742
			$( '.geoloc' ).closest( '.control-group' ).addClass( 'error' );
718
			$( '#geoloc' ).closest( '.control-group' ).addClass( 'error' );
743
			$( '#geoloc-error' ).removeClass( 'hidden' );
719
			$( '#geoloc-error' ).removeClass( 'hidden' );
744
			$( '#releve-date' ).removeClass( 'erreur' ).closest( '.control-group' ).removeClass( 'error' ).find( '#error-drc' ).remove();
720
			$( '#releve-date' ).removeClass( 'erreur' ).closest( '.control-group' ).removeClass( 'error' ).find( '#error-drc' ).remove();
745
			$( '#geoloc #error-drc' ).remove();
721
			$( '#geoloc #error-drc' ).remove();
746
		}
722
		}
747
	} else {
723
	} else {
748
		console.log( 'Error location' );
724
		console.log( 'Error location' );
Line 749... Line 725...
749
	}
725
	}
-
 
726
}
-
 
727
 
-
 
728
/**
-
 
729
 * Fonction handler de l'évenement location du module tb-geoloc étape arbres
-
 
730
 */
-
 
731
ReleveApa.prototype.locationArbresHandler = function( location ) {
-
 
732
	var locDatas     = location.originalEvent.detail;
-
 
733
 
-
 
734
	if ( this.utils.valOk( locDatas ) ) {
-
 
735
		console.log( locDatas );
-
 
736
		var rue          = ( this.utils.valOk( locDatas.osmRoad ) ) ? locDatas.osmRoad : '';
-
 
737
		var latitude     = ( this.utils.valOk( locDatas.geometry.coordinates[1] ) ) ? locDatas.geometry.coordinates[1] : '';
-
 
738
		var longitude    = ( this.utils.valOk( locDatas.geometry.coordinates[0] ) ) ? locDatas.geometry.coordinates[0] : '';
-
 
739
		var altitude     = ( this.utils.valOk( locDatas.elevation ) ) ? locDatas.elevation : '';
-
 
740
 
-
 
741
		$( '#rue-arbres' ).val( rue );
-
 
742
		$( '#latitude-arbres' ).val( latitude );
-
 
743
		$( '#longitude-arbres' ).val( longitude );
-
 
744
		$( '#altitude-arbres' ).val( altitude );
-
 
745
		if ( this.utils.valOk( $( '#latitude-arbres' ).val() ) && this.utils.valOk( $( '#longitude-arbres' ).val() ) ) {
-
 
746
			$( '#geoloc-arbres' ).closest( '.control-group' ).removeClass( 'error' );
-
 
747
		} else {
-
 
748
			$( '#geoloc-arbres' ).closest( '.control-group' ).addClass( 'error' );
-
 
749
		}
-
 
750
	} else {
-
 
751
		console.log( 'Error location' );
-
 
752
	}
750
}
753
}
751
 
754
 
752
/**
755
/**
753
 * Ajoute une observation à la liste des obs à transmettre
756
 * Ajoute une observation à la liste des obs à transmettre
754
 * (résumé obs)
757
 * (résumé obs)
Line 850... Line 853...
850
				'nt'        : $( '#taxon' ).data( 'nt' ),
853
				'nt'        : $( '#taxon' ).data( 'nt' ),
851
				'famille'   : $( '#taxon' ).data( 'famille' )
854
				'famille'   : $( '#taxon' ).data( 'famille' )
852
			},
855
			},
853
			'referentiel'           : referentiel,
856
			'referentiel'           : referentiel,
854
			'certitude'             : $( '#certitude' ).val(),
857
			'certitude'             : $( '#certitude' ).val(),
-
 
858
			'rue-arbres'            : $( '#rue-arbres' ).val(),
855
			'latitude-arbres'       : $( '#latitude-arbres' ).val(),
859
			'latitude-arbres'       : $( '#latitude-arbres' ).val(),
856
			'longitude-arbres'      : $( '#longitude-arbres' ).val(),
860
			'longitude-arbres'      : $( '#longitude-arbres' ).val(),
857
			'altitude-arbres'       : $( '#altitude-arbres' ).val(),
861
			'altitude-arbres'       : $( '#altitude-arbres' ).val(),
858
			'circonference'         : $( '#circonference' ).val(),
862
			'circonference'         : $( '#circonference' ).val(),
859
			'surface-pied'          : $( '#surface-pied' ).val(),
863
			'surface-pied'          : $( '#surface-pied' ).val(),
Line 865... Line 869...
865
			'miniature-img'         : miniatureImg,
869
			'miniature-img'         : miniatureImg,
866
		},
870
		},
867
		releve : {
871
		releve : {
868
			'date'                  : this.utils.fournirDate( $( '#releve-date' ).val() ),
872
			'date'                  : this.utils.fournirDate( $( '#releve-date' ).val() ),
869
			'rue'                   : $( '#rue' ).val(),
873
			'rue'                   : $( '#rue' ).val(),
870
			'commune-nom'           : $( '#commune-nom' ).val(),
-
 
871
			'commentaires'          : $( '#commentaires' ).val(),
-
 
872
			'pays'                  : $( '#pays' ).val(),
-
 
873
			'commune-insee'         : $( '#commune-insee' ).val(),
-
 
874
			'latitude'              : $( '#latitude' ).val(),
874
			'latitude'              : $( '#latitude' ).val(),
875
			'longitude'             : $( '#longitude' ).val(),
875
			'longitude'             : $( '#longitude' ).val(),
876
			'altitude'              : $( '#altitude' ).val(),
876
			'altitude'              : $( '#altitude' ).val(),
-
 
877
			'commune-nom'           : $( '#commune-nom' ).val(),
-
 
878
			'commune-insee'         : $( '#commune-insee' ).val(),
-
 
879
			'pays'                  : $( '#pays' ).val(),
877
			'zone-pietonne'         : $( '#zone-pietonne input:checked' ).val(),
880
			'zone-pietonne'         : $( '#zone-pietonne input:checked' ).val(),
878
			'pres-lampadaires'      : $( '#pres-lampadaires input:checked' ).val()
881
			'pres-lampadaires'      : $( '#pres-lampadaires input:checked' ).val(),
-
 
882
			'commentaires'          : $( '#commentaires' ).val()
879
		}
883
		}
880
	};
884
	};
881
	return obsData;
885
	return obsData;
882
};
886
};
Line 889... Line 893...
889
		numArbre          = datasObs.arbre['num-arbre'],
893
		numArbre          = datasObs.arbre['num-arbre'],
890
		dateObs           = this.utils.fournirDate( datasObs.releve.date ),
894
		dateObs           = this.utils.fournirDate( datasObs.releve.date ),
891
		numNomSel         = datasObs.arbre.taxon.numNomSel,
895
		numNomSel         = datasObs.arbre.taxon.numNomSel,
892
		taxon             = datasObs.arbre.taxon.value,
896
		taxon             = datasObs.arbre.taxon.value,
893
		certitude         = datasObs.arbre.certitude,
897
		certitude         = datasObs.arbre.certitude,
894
		rue               = datasObs.releve.rue,
898
		rue               = datasObs.arbre['rue-arbres'],
895
		commune           = datasObs.releve['commune-nom'],
899
		commune           = datasObs.releve['commune-nom'],
896
		latitudeLongitude = '[' + datasObs.arbre['latitude-arbres'] + ' / ' + datasObs.arbre['longitude-arbres'] + ']',
900
		latitudeLongitude = '[' + datasObs.arbre['latitude-arbres'] + ' / ' + datasObs.arbre['longitude-arbres'] + ']',
897
		miniatures        = this.ajouterImgMiniatureAuTransfert( datasObs.arbre['miniature-img'] ),
901
		miniatures        = this.ajouterImgMiniatureAuTransfert( datasObs.arbre['miniature-img'] ),
898
		commentaires      = '';
902
		commentaires      = '';
Line 1132... Line 1136...
1132
	var retour = [],
1136
	var retour = [],
1133
		champs = [
1137
		champs = [
1134
			'rue',
1138
			'rue',
1135
			'zone-pietonne',
1139
			'zone-pietonne',
1136
			'pres-lampadaires',
1140
			'pres-lampadaires',
-
 
1141
			'rue-arbres',
1137
			'latitude-arbres',
1142
			'latitude-arbres',
1138
			'longitude-arbres',
1143
			'longitude-arbres',
1139
			'altitude-arbres',
1144
			'altitude-arbres',
1140
			'circonference',
1145
			'circonference',
1141
			'surface-pied',
1146
			'surface-pied',
Line 1149... Line 1154...
1149
		faceOmbre       = '',
1154
		faceOmbre       = '',
1150
		faceOmbreLength = datasArbres.arbre['face-ombre'].length;
1155
		faceOmbreLength = datasArbres.arbre['face-ombre'].length;
Line 1151... Line 1156...
1151
 
1156
 
1152
	$.each( champs, function( i ,value ) {
1157
	$.each( champs, function( i ,value ) {
1153
		cleValeur = ( 3 > i ) ? 'releve' : 'arbre';
-
 
1154
		// console.log(cleValeur);
-
 
1155
		// console.log(value);
-
 
1156
		// console.log(datasArbres[cleValeur][value]);
-
 
Line 1157... Line 1158...
1157
 
1158
		cleValeur = ( 3 > i ) ? 'releve' : 'arbre';
1158
 
1159
 
1159
		if ( lthis.utils.valOk( datasArbres[cleValeur][value] ) ) {
1160
		if ( lthis.utils.valOk( datasArbres[cleValeur][value] ) ) {
1160
			retour.push({ cle : value, valeur : datasArbres[cleValeur][value] });
1161
			retour.push({ cle : value, valeur : datasArbres[cleValeur][value] });
Line 1245... Line 1246...
1245
				} else {
1246
				} else {
1246
					$( this ).prop( 'selected', false );
1247
					$( this ).prop( 'selected', false );
1247
				}
1248
				}
1248
			});
1249
			});
1249
		});
1250
		});
1250
		$( '#rue-arbres' ).val(releveDatas[0]['rue']);
1251
		$( '#rue-arbres' ).val(arbreDatas['rue-arbres']);
1251
		$( '#latitude-arbres' ).val(arbreDatas['latitude-arbres']);
1252
		$( '#latitude-arbres' ).val(arbreDatas['latitude-arbres']);
1252
		$( '#longitude-arbres' ).val(arbreDatas['longitude-arbres']);
1253
		$( '#longitude-arbres' ).val(arbreDatas['longitude-arbres']);
1253
		$( '#commune-nom-arbres' ).val(releveDatas[0]['commune-nom']);
-
 
1254
		$( '#commune-insee-arbres' ).val(releveDatas[0]['commune-insee']);
-
 
1255
		$( '#altitude-arbres' ).val(arbreDatas['altitude-arbres']);
1254
		$( '#altitude-arbres' ).val(arbreDatas['altitude-arbres']);
1256
		$( '#pays-arbres' ).val(releveDatas[0]['pays']);
-
 
1257
		// image
1255
		// image
1258
		this.supprimerMiniatures();
1256
		this.supprimerMiniatures();
1259
		$.each( arbreDatas['miniature-img'], function( i, value ) {
1257
		$.each( arbreDatas['miniature-img'], function( i, value ) {
1260
			imgHtml +=
1258
			imgHtml +=
1261
			'<div class="miniature mb-3 mr-3">'+
1259
			'<div class="miniature mb-3 mr-3">'+
Line 1640... Line 1638...
1640
			$.validator.messages.minMaxOk = lthis.validerMinMax( element ).message;
1638
			$.validator.messages.minMaxOk = lthis.validerMinMax( element ).message;
1641
			return lthis.validerMinMax( element ).cond;
1639
			return lthis.validerMinMax( element ).cond;
1642
		},
1640
		},
1643
		$.validator.messages.minMaxOk
1641
		$.validator.messages.minMaxOk
1644
	);
1642
	);
1645
	$.validator.addMethod(
-
 
1646
		'listFields',
-
 
1647
		function ( value, element ) {
-
 
1648
			return ( lthis.utils.valOk( value ) );
-
 
1649
		},
-
 
1650
		''
-
 
1651
	);
-
 
Line 1652... Line 1643...
1652
 
1643
 
1653
	$.extend( $.validator.defaults, {
1644
	$.extend( $.validator.defaults, {
1654
		errorElement: 'span',
1645
		errorElement: 'span',
1655
		errorPlacement: function( error, element ) {
1646
		errorPlacement: function( error, element ) {
Line 1818... Line 1809...
1818
			},
1809
			},
1819
			'longitude-arbres' : {
1810
			'longitude-arbres' : {
1820
				required : true,
1811
				required : true,
1821
				minlength : 1,
1812
				minlength : 1,
1822
				range : [-180, 180]
1813
				range : [-180, 180]
1823
			},
-
 
1824
			'rue-arbres' : {
-
 
1825
				required : true,
-
 
1826
				minlength : 1
-
 
1827
			}
1814
			}
1828
		}
1815
		}
1829
	});
1816
	});
1830
	$( '#form-arbre-fs' ).validate({
1817
	$( '#form-arbre-fs' ).validate({
1831
		onkeyup : false,
1818
		onkeyup : false,
Line 1917... Line 1904...
1917
			this.utils.valOk( $( '#releve-date' ).val() ) &&
1904
			this.utils.valOk( $( '#releve-date' ).val() ) &&
1918
			this.utils.valOk( $( '#rue' ).val() ) &&
1905
			this.utils.valOk( $( '#rue' ).val() ) &&
1919
			this.validerDateRueCommune( $( '#releve-date' ).val(), $( '#rue' ).val(), $( '#commune-nom' ).val() )
1906
			this.validerDateRueCommune( $( '#releve-date' ).val(), $( '#rue' ).val(), $( '#commune-nom' ).val() )
1920
		);
1907
		);
1921
	}
1908
	}
1922
	const validerReleve = ( observateur && obs && geoloc && dateRue );
-
 
1923
 
-
 
1924
	if ( !obs ) {
1909
	if ( !obs ) {
1925
		$( 'html, body' ).stop().animate({
1910
		$( 'html, body' ).stop().animate({
1926
			scrollTop: $( '#zone-observation' ).offset().top
1911
			scrollTop: $( '#zone-observation' ).offset().top
1927
		}, 300 );
1912
		}, 300 );
1928
	}
1913
	}
Line 1955... Line 1940...
1955
		this.masquerPanneau( '#dialogue-date-rue-ko' );
1940
		this.masquerPanneau( '#dialogue-date-rue-ko' );
1956
	}
1941
	}
1957
	if ( geoloc ) {
1942
	if ( geoloc ) {
1958
		this.masquerPanneau( '#dialogue-geoloc-ko' );
1943
		this.masquerPanneau( '#dialogue-geoloc-ko' );
1959
		if ( dateRue ) {
1944
		if ( dateRue ) {
1960
			$( '.geoloc' ).closest( '.control-group' ).removeClass( 'error' );
1945
			$( '#geoloc' ).closest( '.control-group' ).removeClass( 'error' );
1961
		}
1946
		}
1962
	} else {
1947
	} else {
1963
		this.afficherPanneau( '#dialogue-geoloc-ko' );
1948
		this.afficherPanneau( '#dialogue-geoloc-ko' );
1964
		$( '.geoloc' ).closest( '.control-group' ).addClass( 'error' );
1949
		$( '#geoloc' ).closest( '.control-group' ).addClass( 'error' );
1965
	}
1950
	}
Line 1966... Line 1951...
1966
 
1951
 
1967
	return validerReleve;
1952
	return  (observateur && obs && geoloc && dateRue);
Line 1968... Line 1953...
1968
};
1953
};
1969
 
1954
 
1970
/**
1955
/**
1971
 * Valide le formulaire Arbres (= étape 2) au click sur un bouton "suivant"
1956
 * Valide le formulaire Arbres (= étape 2) au click sur un bouton "suivant"
1972
 */
1957
 */
1973
ReleveApa.prototype.validerArbres = function( etapeReleve = false ) {
1958
ReleveApa.prototype.validerArbres = function() {
1974
	const observateur = ( $( '#form-observateur' ).valid() && $( '#courriel' ).valid() )
1959
	const validerReleve = this.validerReleve();
1975
	const geoloc      = (
1960
	const geoloc      = (
1976
		this.utils.valOk( $( '#latitude-arbres' ).val() ) &&
-
 
1977
		this.utils.valOk( $( '#longitude-arbres' ).val() ) &&
-
 
1978
		this.utils.valOk( $( '#rue-arbres' ).val() ) &&
1961
		this.utils.valOk( $( '#latitude-arbres' ).val() ) &&
1979
		this.utils.valOk( $( '#commune-nom-arbres' ).val() )
1962
		this.utils.valOk( $( '#longitude-arbres' ).val() )
1980
	);
1963
	);
1981
	const piedArbre = this.utils.valOk( $( '#equipement-pied-arbre' ).val(), false, 'other' );
1964
	const piedArbre = this.utils.valOk( $( '#equipement-pied-arbre' ).val(), false, 'other' );
1982
	const taxon = this.utils.valOk( $( '#taxon' ).val() );
-
 
1983
	const obs   = (
1965
	const taxon = this.utils.valOk( $( '#taxon' ).val() );
1984
		$( '#form-observation' ).valid() &&
1966
	const obs   = (
1985
		$( '#form-arbre' ).valid() &&
1967
		$( '#form-arbre' ).valid() &&
1986
		$( '#form-arbre-fs' ).valid() &&
1968
		$( '#form-arbre-fs' ).valid() &&
Line 2000... Line 1982...
2000
				.find( 'span.error' )
1982
				.find( 'span.error' )
2001
					.removeClass( 'hidden' );
1983
					.removeClass( 'hidden' );
2002
	}
1984
	}
2003
	if ( geoloc ) {
1985
	if ( geoloc ) {
2004
		this.masquerPanneau( '#dialogue-geoloc-ko' );
1986
		this.masquerPanneau( '#dialogue-geoloc-ko' );
2005
		$( '.geoloc' ).closest( '.control-group' ).removeClass( 'error' );
1987
		$( '#geoloc-arbres' ).closest( '.control-group' ).removeClass( 'error' );
2006
	} else {
1988
	} else {
2007
		this.afficherPanneau( '#dialogue-geoloc-ko' );
1989
		this.afficherPanneau( '#dialogue-geoloc-ko' );
2008
		$( '.geoloc' ).closest( '.control-group' ).addClass( 'error' );
1990
		$( '#geoloc-arbres' ).closest( '.control-group' ).addClass( 'error' );
2009
	}
-
 
2010
	// panneau observateur
-
 
2011
	if ( observateur ) {
-
 
2012
		this.masquerPanneau( '#dialogue-utilisateur-non-identifie' );
-
 
2013
		$( '#tb-observateur .control-group' ).removeClass( 'error' );
-
 
2014
	} else {
-
 
2015
		this.afficherPanneau( '#dialogue-utilisateur-non-identifie' );
-
 
2016
		$( '#tb-observateur .control-group' ).addClass( 'error' );
-
 
2017
	}
1991
	}
Line 2018... Line 1992...
2018
 
1992
 
2019
	return ( observateur && obs && geoloc && taxon );
1993
	return ( validerReleve && obs && geoloc && taxon );
Line 2020... Line 1994...
2020
};
1994
};
Line 2021... Line 1995...
2021
 
1995