Subversion Repositories eFlore/Applications.cel

Rev

Rev 3412 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
3393 delphine 1
<form id="form-observation" role="form" autocomplete="on">
2
	<h2><?php echo $observation['titre-obs']; ?></h2>
3
	<div id="zone-observation" class="row">
4
		<div class="col-md-6">
5
 
6
			<div class="mb-3">
7
				<label class="col-sm-8 obligatoire has-tooltip" data-toggle="tooltip" title="<?php echo $observateur['geoloc-title']; ?>">
8
					<i class="fa fa-map" aria-hidden="true"></i>
9
					<?php echo $observation['lieu-releve']; ?>
10
				</label>
11
				<div class="control-group">
12
					<span id="geoloc-error" class="error hidden"><?php echo $observation['geoloc-erreur']; ?></span>
13
					<div id="geoloc" class="col-sm-8 geoloc">
14
						<tb-geolocation-element
15
							id="tb-geolocation"
16
							layer='osm'
17
							zoom_init="4"
18
							lat_init="46.5"
19
							lng_init="2.9"
20
							marker="true"
21
							polyline="false"
22
							polygon="false"
23
							show_lat_lng_elevation_inputs="true"
24
							osm_class_filter=""
25
							elevation_provider="mapquest"
26
							map_quest_api_key="mG6oU5clZHRHrOSnAV0QboFI7ahnGg34"
27
						>
28
						</tb-geolocation-element>
29
					</div>
30
					<div id="geoloc-datas" class="hidden">
31
						<div class="mt-3">
32
							<label class="col-sm-8" for="rue"><?php echo $observation['rue']; ?></label>
33
							<div class="col-sm-8">
34
								<input type="text" class="form-control rue" disabled id="rue" name="rue" value="">
35
							</div>
36
						</div>
37
						<div class="mt-3">
38
							<label class="col-sm-8" for="commune-nom"><?php echo $observation['nom-commune']; ?></label>
39
							<div class="col-sm-8">
40
								<input type="text" class="form-control commune-nom" disabled id="commune-nom" name="commune-nom" value="">
41
								<input type="hidden" class="commune-insee" disabled id="commune-insee" name="commune-insee" value="">
42
							</div>
43
						</div>
3415 idir 44
						<input type="hidden" class="form-control latitude-releve" disabled id="latitude-releve" name="latitude-releve" value="" style="display:none">
45
						<input type="hidden" class="form-control longitude-releve" disabled id="longitude-releve" name="longitude-releve" value="" style="display:none">
46
						<input type="hidden" class="form-control altitude-releve" disabled id="altitude-releve" name="altitude-releve" value="" style="display:none">
3393 delphine 47
						<div class="row pl-3 pr-3 mt-3">
48
							<div class="d-flex flex-column col-sm-4">
49
								<label for="pays"><?php echo $observation['pays']; ?></label>
50
								<div>
51
									<input type="text" class="form-control pays" disabled id="pays" name="pays" value="">
52
								</div>
53
							</div>
54
						</div>
55
					</div>
56
				</div>
57
			</div>
58
		</div>
59
 
60
		<div class="col-md-6">
61
			<h3 class="mb-3"><?php echo $observation['titre-info-obs']; ?></h3>
62
			<div id="obs-info" class="text-justify col-sm-8">
63
				<?php echo $observation['obs-info']; ?>
64
			</div>
65
 
66
			<div class="control-group">
67
				<label for="releve-date" class="col-sm-8 obligatoire" title="">
68
					<i class="fa fa-calendar" aria-hidden="true"></i>
69
					<?php echo $observation['date']; ?>
70
				</label>
71
				<div class="col-sm-8 mb-3 has-tooltip" data-toggle="tooltip" title="<?php echo $observation['date-title']; ?>">
72
					<input type="date" id="releve-date" name="releve-date" class="form-control" max="" placeholder="jj/mm/aaaa" required>
73
				</div>
74
			</div>
75
 
76
			<div class="">
77
				<label for="commentaires" class="col-sm-8">
78
					<i class="fa fa-pen" aria-hidden="true"></i>
79
					<?php echo $general['commentaires']; ?>
80
				</label>
81
				<div class="col-sm-8 mb-3">
82
					<textarea id="commentaires" class="col-md-12" rows="7" name="commentaires"></textarea>
83
				</div>
84
			</div>
85
			<!-- Bouton création d'une obs -->
86
			<div class="col-sm-8 mb-3">
87
				<div title="<?php echo $resume['creer-title']; ?>">
88
					<a href="" id="soumettre-releve" class="charger-carto btn btn-primary"><?php echo $general['enregistrer']; ?></a href="">
89
				</div>
90
			</div>
91
		</div>
92
	</div>
93
</form><!-- fin zone relevé -->
94
 
95
<!-- Messages d'erreur du formulaire observateur -->
96
<div class="zone-alerte">
97
	<div id="dialogue-geoloc-ko" class="alert alert-warning alert-block hidden">
98
		<a class="close">×</a>
99
		<h4 class="alert-heading"><?php echo $observation['alertgk-title']; ?></h4>
100
		<p><?php echo $observation['alertgk']; ?></p>
101
	</div>
102
	<div id="dialogue-date-rue-ko" class="alert alert-warning alert-block hidden">
103
		<a class="close">×</a>
104
		<h4 class="alert-heading"><?php echo $observation['alertdr-title']; ?></h4>
105
		<p><?php echo $observation['alertdr']; ?></p>
106
	</div>
107
</div>
108
 
109
<div id="zone-arbres" class="bloc-top hidden">
110
	<h2 class="mb-3"><?php echo $arbres['titre']; ?></h2>
111
	<div id="bouton-saisir-lichens" class="btn btn-info hidden m-3" data-load="lichens">
112
		<i class="far fa-snowflake"></i> <?php echo $resume['saisir-lichens']; ?>
113
	</div>
114
	<div class="row">
115
		<div id="bloc-arbres-gauche" class="col-md-6">
116
			<div id="bloc-info-arbres"></div>
117
			<div id="bloc-form-arbres" class="">
118
				<div id="arbres-info" class="text-justify">
119
					<?php echo $arbres['arbres-info']; ?>
120
				</div>
121
				<form id="form-arbre" role="form" autocomplete="off">
122
					<h3 class="mb-3"><?php echo $general['arbre'];?>&nbsp;<span id="arbre-nb">1</span>&nbsp;:</h3>
123
					<input id="referentiel" name="referentiel" value="bdtfx" type="hidden">
124
					<div id="bloc-taxon" class="control-group">
125
						<label for="taxon" class="col-sm-8 obligatoire" title="">
126
							<i class="fa fa-leaf" aria-hidden="true"></i>
127
							<?php echo $general['espece']; ?> (bdtfx)
128
						</label>
129
						<div class="col-sm-8 mb-3">
130
							<input id="taxon" name="taxon" class="form-control taxon-validation has-tooltip" type="text" data-toggle="tooltip" title="<?php echo $general['espece-title']; ?>" required autocomplete="off">
131
						</div>
132
					</div>
133
 
134
					<div class="control-group">
135
						<label for="certitude" class="col-sm-8 obligatoire">
136
							<i class="fa fa-question" aria-hidden="true"></i>
137
							<?php echo $general['certitude']; ?>
138
						</label>
139
						<div class="col-sm-8 mb-3">
140
							<select id="certitude" name="certitude" class="form-control custom-select" required>
141
								<option class="choisir" hidden value="" selected><?php echo $general['choisir']; ?></option>
142
								<option class="aDeterminer" value="à determiner"><?php echo $general['certADet']; ?></option>
143
								<option class="douteuse" value="douteuse"><?php echo $general['certDout']; ?></option>
144
								<option class="certaine" value="certaine"><?php echo $general['certCert']; ?></option>
145
							</select>
146
						</div>
147
					</div>
148
					<div class="">
149
						<label class="col-sm-8 obligatoire has-tooltip" data-toggle="tooltip" title="<?php echo $observateur['geoloc-title']; ?>">
150
							<i class="fa fa-map-marked-alt " aria-hidden="true"></i>
151
							<?php echo $arbres['localiser']; ?>
152
						</label>
153
						<div class="control-group">
154
							<div id="geoloc-datas-arbres" class="hidden">
155
								<div class="mt-3">
156
									<label class="col-sm-8" for="rue-arbres"><?php echo $observation['rue']; ?></label>
157
									<div class="col-sm-8">
158
										<input type="text" class="form-control rue-arbres" disabled id="rue-arbres" name="rue-arbres" value="">
159
									</div>
160
								</div>
161
								<div class="row pl-3 pr-3 mt-3">
162
									<div class="d-flex flex-column col-sm-4">
163
										<label class="" for="latitude-arbres"><?php echo $observation['latitude']; ?></label>
164
										<div class="">
165
											<input type="text" class="form-control latitude-arbres" disabled id="latitude-arbres" name="latitude-arbres" value="">
166
										</div>
167
									</div>
168
									<div class="d-flex flex-column col-sm-4">
169
										<label class="" for="longitude-arbres"><?php echo $observation['longitude']; ?></label>
170
										<div class="">
171
											<input type="text" class="form-control longitude-arbres" disabled id="longitude-arbres" name="longitude-arbres" value="">
172
										</div>
173
									</div>
174
								</div>
175
								<input type="hidden" id="altitude-arbres" name="altitude-arbres" class=""  value="" style="display:none">
176
							</div>
177
							<div id="geoloc-arbres" class="col-sm-8"></div>
178
						</div>
179
					</div>
180
				</form>
181
				<form id="form-upload" class="form-horizontal" action="<?php echo $url_ws_upload ?>" method="post" enctype="multipart/form-data">
182
					<div class="col-sm-8 mb-2 list-label and-help">
183
						<i class="fa fa-images" aria-hidden="true"></i>
184
						<?php echo $arbres['titre-photos']; ?>
185
					</div>
186
					<p id="miniature-arbres-info" class="col-sm-8">
187
						<?php echo $image['aide']; ?>
188
					</p>
189
					<div id ="photos-conteneur" class="control-group col-sm-8">
190
						<div id="bouton-fichier">
191
							<label for="fichier" class="label-file btn btn-large btn-info mb-3" title="<?php echo $image['photos-title']; ?>">
192
								<span class="label-text"><i class="fas fa-download"></i> <?php echo $image['ajouter']; ?></span>
193
								<input type="file" id="fichier" name="fichier" class="input-file" accept="image/jpeg" multiple>
194
								<input type="hidden" name="MAX_FILE_SIZE" value="5242880">
195
							</label>
196
						</div>
197
 
198
						<div id="miniatures"></div>
199
						<p class="miniature-msg" class="span12">&nbsp;</p>
200
					</div>
201
				</form>
202
				<form id="form-arbre-fs" role="form" autocomplete="off">
203
					<div class="control-group">
204
						<label for="circonference" class="col-sm-8 obligatoire">
205
							<i class="fa fa-circle-notch" aria-hidden="true"></i>
206
							<?php echo $arbres['circonference'] ;?>
207
						</label>
208
						<div class="col-sm-8 mb-3">
209
							<input id="circonference" type="number" name="circonference" class="form-control has-tooltip" data-toggle="tooltip" title="<?php echo $arbres['circonference-title'] ;?>" placeholder="<?php echo $arbres['circonference-ph'] ;?>" step="1" min="1" required>
210
						</div>
211
					</div>
212
 
213
					<div id="face-ombre" class="control-group">
214
						<div class="col-sm-8 mb-2 list-label obligatoire">
215
							<i class="far fa-compass" aria-hidden="true"></i>
216
							<?php echo $arbres['face-ombre']; ?>
217
						</div>
218
						<div class="col-sm-8 mb-3 has-tooltip list" data-toggle="tooltip" title="<?php echo $arbres['face-ombre-title']; ?>" required>
219
							<div class="form-check form-check-inline">
220
								<input type="checkbox" id="nord" name="face-ombre" class="nord form-check-input" value="nord">
221
								<label for="nord" class="nord form-check-label"><?php echo $general['nord']; ?></label>
222
							</div>
223
							<div class="form-check form-check-inline">
224
								<input type="checkbox" id="sud" name="face-ombre" class="sud form-check-input" value="sud">
225
								<label for="sud" class="sud form-check-label"><?php echo $general['sud']; ?></label>
226
							</div>
227
							<div class="form-check form-check-inline">
228
								<input type="checkbox" id="est" name="face-ombre" class="est form-check-input" value="est">
229
								<label for="est" class="est form-check-label"><?php echo $general['est']; ?></label>
230
							</div>
231
							<div class="form-check form-check-inline">
232
								<input type="checkbox" id="ouest" name="face-ombre" class="ouest form-check-input" value="ouest">
233
								<label for="ouest" class="ouest form-check-label"><?php echo $general['ouest']; ?></label>
234
							</div>
235
							<div class="form-check form-check-inline">
236
								<input type="checkbox" id="aucune" name="face-ombre" class="ouest form-check-input" value="aucune">
237
								<label for="aucune" class="aucune form-check-label"><?php echo $general['aucune']; ?></label>
238
							</div>
239
						</div>
240
					</div>
241
 
242
					<div class="">
243
						<label for="com-arbres" class="col-sm-8" title="">
244
								<i class="fa fa-pen" aria-hidden="true"></i>
245
								<?php echo $general['commentaires']; ?>
246
						</label>
247
						<div class="col-sm-8 mb-3">
248
								<textarea id="com-arbres" class="col-md-12" rows="7" name="com-arbres"></textarea>
249
						</div>
250
					</div>
251
				</form>
252
 
253
				<!-- Bouton création d'une obs et retour à la saisie après visualisation d'un arbre-->
254
				<div class="col-sm-8 mb-3">
255
					<button id="retour" class="btn btn-info has-tooltip hidden" data-toggle="tooltip" title="<?php echo $resume['retour-title']; ?>">
256
						<i class="fas fa-undo-alt"></i> <?php echo $general['retour']; ?>
257
					</button>
258
					<button id="ajouter-obs" class="btn btn-primary has-tooltip" data-toggle="tooltip" title="<?php echo $resume['creer-title']; ?>">
259
						<i class="fas fa-step-forward"></i> <?php echo $general['suivant']; ?>
260
					</button>
261
				</div>
262
			</div>
263
		</div><!-- fin formulaire arbres -->
264
		<!-- zone résumé obs arbres ( =zone de droite) -->
265
		<div id="boc-arbres-droite" class="col-md-6 mb-3">
266
			<!-- Messages d'erreur du formulaire -->
267
			<div class="row">
268
				<div class="zone-alerte">
269
					<div id="dialogue-bloquer-creer-obs" class="alert alert-warning alert-block hidden">
270
						<a class="close">×</a>
271
						<h4 class="alert-heading"><?php echo $resume['alert10max']; ?></h4>
272
						<p><?php echo $resume['alert10max-desc']; ?></p>
273
					</div>
274
				</div>
275
				<div class="zone-alerte">
276
					<div id="dialogue-form-invalide" class="alert alert-warning alert-block hidden">
277
						<a class="close">×</a>
278
						<h4 class="alert-heading"><?php echo $resume['alertchp']; ?></h4>
279
						<p><?php echo $resume['alertchp-desc']; ?></p>
280
					</div>
281
				</div>
282
			</div>
283
 
284
			<!-- Affiche le tableau récapitualif des observations ajoutées -->
285
			<div id="zone-liste-obs" class="hidden">
286
				<div id="bloc-controle-liste-obs" class="alert alert-info">
287
					<h2 class="transmission-title"><strong><?php echo $resume['titre']; ?> <span class="obs-nbre badge badge-info">0</span></strong></h2>
288
					<button id="transmettre-obs" class="btn btn-primary has-tooltip" data-toggle="tooltip" disabled="disabled"
289
						title="<?php echo $resume['trans-title']; ?>" type="button">
290
						<?php echo $general['enregistrer']; ?>
291
					</button>
292
				</div>
293
				<div id="liste-obs" ></div>
294
				<div class="row">
295
					<div class="zone-alerte">
296
						<div id="dialogue-zero-obs" class="alert alert-block hidden">
297
							<a class="close">×</a>
298
							<h4 class="alert-heading"><?php echo $resume['alert0obs']; ?></h4>
299
							<p><?php echo $resume['alert0obs-desc']; ?></p>
300
						</div>
301
						<div id="dialogue-obs-transaction-ok" class="alert alert-success alert-block hidden">
302
							<a class="close">×</a>
303
							<h4 class="alert-heading"><?php echo $resume['info-trans']; ?></h4>
304
							<div class="alert-txt"></div>
305
						</div>
306
						<div id="dialogue-obs-transaction-ko" class="alert alert-error alert-block hidden">
307
							<a class="close">×</a>
308
							<h4 class="alert-heading"><?php echo $resume['alerttrans']; ?></h4>
309
							<div class="alert-txt"></div>
310
						</div>
311
					</div>
312
				</div>
313
			</div>
314
 
315
			<!-- Fenêtres modales -->
316
			<div id="chargement" class="modal-fenetre hidden">
317
				<div id="chargement-centrage" class="modal-contenu">
318
					<div class="progress progress-striped active">
319
						<div id="barre-progression-upload" class="progress-bar progress-bar-striped" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="10" style="">
320
								<span class="sr-only">0/10 <?php echo $resume['nbobs']; ?></span>
321
							</div>
322
					</div>
323
					<p id="chargement-txt">
324
						<?php echo $resume['transencours']; ?>
325
					</p>
326
				</div>
327
			</div>
328
 
329
			<!-- Templates HTML -->
330
			<div id="tpl-transmission-ok" class="hidden">
331
				<p class="msg"><?php echo $resume['transok']; ?></p>
332
			</div>
333
			<div id="tpl-transmission-ko" class="hidden">
334
				<p class="msg"><?php echo $resume['transko']; ?></p>
335
			</div>
336
		</div><!-- fin arbres zone résumé obs ( =zone de droite ) -->
337
	</div>
338
	<!-- Connexion, bloc de prévisualisation, date -->
339
	<script type="text/javascript">
340
		//<![CDATA[
341
			$( document ).ready( function() {
342
				lichens = null;
343
				releve = null;
344
				// OMG un modèle objet !!
345
				releve = new ReleveLg();
346
 
347
				// La présence du parametre 'debug' dans l'URL enclenche le débogage
348
				releve.debug = <?php echo isset( $_GET['debug'] ) ? 'true' : 'false'; ?>;
349
				// La présence du parametre 'html5' dans l'URL enclenche les fonctions avancées HTML5
350
				releve.html5 = <?php echo isset($_GET['html5']) ? 'true' : 'false'; ?>;
351
				// Mot-clé du widget/projet
3412 idir 352
				releve.tagProjet = "WidgetSaisie,tb_lichensgo";
3393 delphine 353
				// Mots-clés à ajouter aux images
354
				releve.tagImg = "<?php echo isset($_GET['tag-img']) ? $_GET['tag-img'] : ''; ?>";
355
				releve.separationTagImg = "<?php echo isset($_GET['motcle']) && isset($_GET['tag-img']) ? ',' : ''; ?>";
356
				releve.tagImg = <?php echo isset($_GET['motcle']) ? "'".$_GET['motcle']."' + releve.separationTagImg + releve.tagImg" : 'releve.tagImg'; ?>;
357
				// Mots-clés à ajouter aux observations
358
				releve.tagObs = "<?php echo isset($_GET['tag-obs']) ? $_GET['tag-obs'] : ''; ?>";
359
				releve.separationTagObs = "<?php echo isset($_GET['projet']) && isset($_GET['tag-obs']) ? ',' : ''; ?>";
360
				releve.tagObs = <?php echo isset($_GET['projet']) ? "'".$_GET['projet']."' + releve.separationTagObs + releve.tagObs" : 'releve.tagObs'; ?>;
361
				// Précharger le formulaire avec les infos d'une observation
362
				releve.obsId = "<?php echo isset($_GET['id-obs']) ? $_GET['id-obs'] : ''; ?>";
363
				// URL du web service réalisant l'insertion des données dans la base du CEL.
364
				releve.serviceSaisieUrl = "<?php echo $url_ws_lg; ?>";
365
				// URL du web service permettant de récupérer les infos d'une observation du CEL.
366
				releve.serviceObsUrl = "<?php echo $url_ws_obs; ?>";
367
				// URL du web service permettant de récupérer les images d'une observation.
368
				releve.serviceObsImgs = "<?php echo $url_ws_cel_imgs; ?>";
369
				// URL du web service permettant de récupérer l'url d'une image (liée à une obs)'.
370
				releve.serviceObsImgUrl = "<?php echo $url_ws_cel_img_url; ?>";
371
 
372
				// langue
373
				releve.langue = "<?php echo $widget['langue']; ?>";
374
				// Squelette d'URL du web service de l'annuaire.
375
				releve.serviceAnnuaireIdUrl = "<?php echo $url_ws_annuaire; ?>";
376
				// mode : prod / beta / local
377
				releve.mode = "<?php echo $conf_mode; ?>";
378
				// URL de l'icône du chargement en cours d'une image
379
				releve.chargementImageIconeUrl = "<?php echo $url_base; ?>img/icones/chargement-image.gif";
380
				// URL de l'icône pour une photo manquante
381
				releve.pasDePhotoIconeUrl = "<?php echo $url_base; ?>img/icones/pasdephoto.png";
382
 
383
				// Code du référentiel utilisé pour les nom scientifiques.
384
				releve.nomSciReferentiel = "<?php echo strtolower( $widget['referentiel'] ); ?>";
385
				// Nombre d'élément dans les listes d'auto-complétion
386
				releve.autocompletionElementsNbre = 20;
387
				// Indication de la présence d'un référentiel imposé
388
				releve.referentielImpose = "<?php echo $referentiel_impose; ?>";
389
 
390
				// URL du web service permettant l'auto-complétion des noms scientifiques
391
				releve.serviceAutocompletionNomSciUrl = "<?php echo $widget['especes']['url_ws_autocompletion_ns']; ?>?"+
392
					"masque={masque}&"+
393
					"recherche=etendue&"+
394
					"retour.champs=famille,nom_retenu,nom_retenu_complet,num_taxonomique,nom_retenu.id&"+
395
					"ns.structure=au&"+
396
					"navigation.limite=" + releve.autocompletionElementsNbre;
397
				// Squelette d'URL du web service permettant l'auto-complétion des noms scientifiques
398
				releve.serviceAutocompletionNomSciUrlTpl = "<?php echo $widget['especes']['url_ws_autocompletion_ns_tpl']; ?>?"+
399
					"masque={masque}&"+
400
					"recherche=etendue&"+
401
					"retour.champs=famille,nom_retenu,nom_retenu_complet,num_taxonomique,nom_retenu.id&"+
402
					"retour.tri=alpharet&"+ // tri "à la CeL"
403
					"ns.structure=au&"+
404
					"navigation.limite=" + releve.autocompletionElementsNbre;
405
				// Nombre d'observations max autorisé avant transmission
406
				releve.obsMaxNbre = 10;
407
				// Durée d'affichage en milliseconde des messages d'informations
408
				releve.dureeMessage = 10000;
409
 
410
				// Squelette d'URL du web service d'eFlore fournissant les noms de communes.
411
				releve.serviceNomCommuneUrl = "https://api.tela-botanica.org/service:eflore:0.1/osm/nom-commune?lon={lon}&lat={lat}";
412
				// Squelette d'URL du web service d'eFlore fournissant les noms de communes hors de France (localisation approximative).
413
				releve.serviceNomCommuneUrlAlt = "https://api.tela-botanica.org/service:eflore:0.1/wikipedia/nom-commune?lon={lon}&lat={lat}&nbre=1";
414
 
415
				// Initialisation du bousin
416
				releve.init();
417
			});
418
		//]]>
419
	</script>
420
</div>