Subversion Repositories eFlore/Applications.cel

Rev

Rev 1215 | Rev 1218 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
1210 jpm 1
<!DOCTYPE html>
2
<html>
3
	<head>
4
		<title>Saisie simplifiée du CEL</title>
5
 
6
		<meta http-equiv="content-type" content="text/html; charset=UTF-8"/>
7
		<meta http-equiv="Content-style-type" content="text/css" />
8
		<meta http-equiv="Content-script-type" content="text/javascript" />
9
		<meta http-equiv="Content-language" content="fr" />
10
 
11
		<meta name="revisit-after" content="15 days" />
12
        <meta name="robots" content="index,follow" />
13
        <meta name="author" content="Jean-Pascal MILCENT" />
14
        <meta name="keywords" content="Tela Botanica, CEL" />
15
        <meta name="description" content="Widget de saisie simplifiée pour le CEL" />
16
 
17
		<!-- Viewport Mobile -->
18
		<meta name="viewport" content="width=device-width, initial-scale=1.0">
19
 
20
		<!-- Favicones -->
21
		<link rel="shortcut icon" type="image/x-icon" href="<?=$url_base?>/modules/saisie/squelettes/defaut/img/favicon.ico" />
22
 
23
		<!-- Javascript : bibliothèques -->
24
		<!-- Google Map v3 -->
25
		<!--<script type="text/javascript" src="https://getfirebug.com/firebug-lite.js"></script>-->
26
		<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=true&amp;language=fr&amp;region=FR"></script>
27
 
28
		<!-- Jquery -->
29
		<script type="text/javascript" src="http://www.tela-botanica.org/commun/jquery/1.7.1/jquery-1.7.1.min.js"></script>
30
		<!-- Jquery UI -->
31
		<script type="text/javascript" src="http://www.tela-botanica.org/commun/jquery/jquery-ui/1.8.17/js/jquery-ui-1.8.17.custom.min.js"></script>
32
		<script type="text/javascript" src="http://www.tela-botanica.org/commun/jquery/jquery-ui/1.8.17/js/jquery.ui.datepicker-fr.js"></script>
33
		<!-- Jquery Plugins -->
1211 jpm 34
		<script type="text/javascript" src="http://www.tela-botanica.org/commun/bootstrap/2.0.1/js/validate/1.9.0/jquery.validate.min.js"></script>
1210 jpm 35
		<script type="text/javascript" src="http://www.tela-botanica.org/commun/jquery/validate/1.9.0/messages_fr.js"></script>
36
		<script type="text/javascript" src="http://www.tela-botanica.org/commun/jquery/form/2.95/jquery.form.min.js"></script>
37
 
38
		<!-- Bootstrap -->
1211 jpm 39
		<script type="text/javascript" src="http://www.tela-botanica.org/commun/bootstrap/2.0.1/js/bootstrap.js"></script>
1210 jpm 40
 
41
		<!-- Javascript : appli saisie -->
42
		<script type="text/javascript">
43
		//<![CDATA[
44
			// La présence du parametre 'debug' dans l'URL enclenche le dégogage
45
			var DEBUG = <?=isset($_GET['debug']) ? 'true' : 'false'?>;
46
			// La présence du parametre 'html5' dans l'URL enclenche les fonctions avancées HTML5
47
			var HTML5 = <?=isset($_GET['html5']) ? 'true' : 'false'?>;
1215 jpm 48
			// La présence du parametre 'html5' dans l'URL enclenche les fonctions avancées HTML5
49
			var PROJET_TAG = "<?=isset($_GET['tag-obs']) ? $_GET['tag-obs'] : 'WidgetSaisie'?>";
1210 jpm 50
			// URL du web service réalisant l'insertion des données dans la base du CEL.
51
			var SERVICE_SAISIE_URL = "<?=$url_ws_saisie?>";
1215 jpm 52
			// Code du référentiel utilisé pour les nom scientifiques.
53
			var NOM_SCI_REFERENTIEL = "<?=$ns_referentiel?>";
54
			// Code de la version du référentiel utilisé pour les nom scientifiques.
55
			var NOM_SCI_VERSION = "<?=$ns_version?>";
56
			// Nombre d'élément dans les listes d'auto-complétion
57
			var AUTOCOMPLETION_ELEMENTS_NBRE = 20;
1210 jpm 58
			// URL du web service permettant l'auto-complétion des noms scientifiques.
59
			var SERVICE_AUTOCOMPLETION_NOM_SCI_URL = "<?=$url_ws_autocompletion_ns?>?"+
60
					"masque={masque}&"+
61
					"recherche=etendue&"+
62
					"retour.champs=nom_retenu,num_taxonomique,nom_retenu.id&"+
1215 jpm 63
					"version.projet="+NOM_SCI_VERSION+"&"+
64
					"navigation.limite="+AUTOCOMPLETION_ELEMENTS_NBRE;
65
			console.log(SERVICE_AUTOCOMPLETION_NOM_SCI_URL);
1210 jpm 66
			// Squelette d'URL du web service d'eFlore fournissant les noms de communes.
67
			var SERVICE_NOM_COMMUNE_URL = "http://www.tela-botanica.org/service:eflore:osm/0.1/nom-commune?lon={lon}&lat={lat}";
68
			// URL du marqueur à utiliser dans la carte Google Map
69
			var GOOGLE_MAP_MARQUEUR_URL = "<?=$url_base?>modules/saisie/squelettes/defaut/img/marqueurs/epingle.png";
70
			// URL de l'icône du bouton supprimer
71
			var SUPPRIMER_ICONE_URL = "<?=$url_base?>modules/saisie/squelettes/defaut/img/icones/supprimer.png";
72
			// URL de l'icône du chargement en cours
73
			var CHARGEMENT_ICONE_URL = "<?=$url_base?>modules/saisie/squelettes/defaut/img/icones/chargement.gif";
74
			// URL de l'icône du calendrier
75
			var CALENDRIER_ICONE_URL = "<?=$url_base?>modules/saisie/squelettes/defaut/img/icones/calendrier.png";
76
		//]]>
77
		</script>
78
		<script type="text/javascript" src="<?=$url_base?>modules/saisie/squelettes/defaut/js/defaut.js"></script>
79
 
80
		<!-- CSS -->
81
		<link href="http://www.tela-botanica.org/commun/jquery/jquery-ui/1.8.17/css/ui-darkness/jquery-ui-1.8.17.custom.css" rel="stylesheet" type="text/css" media="screen" />
1211 jpm 82
		<link href="http://www.tela-botanica.org/commun/bootstrap/2.0.1/css/bootstrap.min.css" rel="stylesheet" type="text/css" media="screen" />
1214 jpm 83
		<link href="http://www.tela-botanica.org/commun/bootstrap/2.0.1/css/bootstrap-responsive.min.css" rel="stylesheet" type="text/css" media="screen" />
1210 jpm 84
		<link href="<?=$url_base?>modules/saisie/squelettes/defaut/css/<?=isset($_GET['style']) ? $_GET['style'] : 'defaut'?>.css" rel="stylesheet" type="text/css" media="screen" />
85
	</head>
86
 
87
	<body>
88
		<div class="container">
89
			<div class="row-fluid">
90
				<div class="span6 page-header">
91
					<div class="row">
92
						<img class="span2" src="<?=$url_base?>/modules/saisie/squelettes/defaut/img/logos/tela_botanica.png" alt="Tela Botanica" />
93
						<h1 class="span4">Saisie simplifiée des observations</h1>
94
					</div>
95
				</div>
96
				<form id="form-observateur" class="span6 control-group" action="#" autocomplete="on">
97
					<div class="well">
98
						<h2>Observateur</h2>
99
						<div class="row-fluid">
100
							<div class="span6">
101
								<label for="prenom">Prénom</label>
1214 jpm 102
								<div>
103
									<input id="prenom" name="prenom" type="text" value=""/>
104
								</div>
1210 jpm 105
							</div>
106
							<div class="span6">
107
								<label for="nom">Nom</label>
1214 jpm 108
								<div>
109
									<input id="nom" name="nom" type="text" value=""/>
110
								</div>
1210 jpm 111
							</div>
112
						</div>
113
						<div class="row-fluid">
114
							<div class="span6">
115
								<label for="courriel"
116
									title="Veuillez saisir votre adresse courriel.">
117
									<strong class="obligatoire">*</strong> Courriel
118
								</label>
119
								<div class="input-prepend">
120
									<span class="add-on">
121
										<i class="icon-envelope"></i>
122
									</span>
123
									<input id="courriel" name="courriel" type="text" value=""/>
124
								</div>
125
							</div>
126
							<div class="span6">
127
								<label for="courriel_confirmation" title="Veuillez saisir confirmer votre adresse courriel.">
128
									<strong class="obligatoire">*</strong> Courriel (confirmation)
129
								</label>
130
								<div class="input-prepend">
131
									<span class="add-on">
132
										<i class="icon-envelope"></i>
133
									</span>
134
									<input id="courriel_confirmation" name="courriel_confirmation" type="text" value=""/>
135
								</div>
136
							</div>
137
						</div>
138
					</div>
139
				</form>
140
			</div>
141
			<div class="row-fluid">
142
				<div class="span6">
1216 jpm 143
					<div class="well">
1210 jpm 144
						<div class="row-fluid">
145
							<div class="span12">
1216 jpm 146
								<h2>Lieu du relevé</h2>
147
							</div>
148
						</div>
149
						<div class="row-fluid">
150
							<div class="span4">
1210 jpm 151
								<label for="map_canvas" title="Veuillez localiser l'observation">
152
									<strong class="obligatoire">*</strong>
153
									Géolocalisation
154
								</label>
1216 jpm 155
							</div>
156
							<div class="span8 droite">
157
								<form id="form-carte-recherche" class="form-search form-horizontal" action="#" >
158
									<div class="control-group">
159
										<label for="carte-recherche">Rechercher</label>
160
										<input id="carte-recherche" class="search-query" type="text" value=""
161
											placeholder="Centrer la carte sur un lieu..."/>
162
									</div>
163
								</form>
164
							</div>
165
						</div>
166
						<div class="row-fluid">
167
							<div class="span12">
1210 jpm 168
								<div id="map-canvas"></div>
169
							</div>
170
						</div>
171
						<div class="row-fluid">
172
							<label for="coordonnees-geo" class="span7">
173
								<a href="#" class="afficher-coord">Afficher</a>
174
								<a href="#" class="afficher-coord" style="display:none;">Cacher</a>
175
								Les coordonnées géographiques
176
								<span id="lat-lon-info" class="info"
177
									title="Système géodésique mondial, révision de 1984 - Coordonnées non projetées">
178
									(WGS84)
179
								</span>
180
							</label>
181
							<div id="info-commune" class="span5">
182
					    		<span for="marqueur-commune">Commune : </span>
183
					    		<span id="marqueur-commune">
184
					    			<span id="commune-nom" class="commune-info"></span>
185
					    			(<span id="commune-code-insee" class="commune-info" title="Code INSEE de la commune"></span>)
186
					    		</span>
187
				    		</div>
188
						</div>
1216 jpm 189
						<form id="form-station" class="control-group" action="#" enctype="multipart/form-data" autocomplete="on">
190
							<div id="coordonnees-geo" class="well" style="display:none;">
191
								<div class="row-fluid form-inline">
192
									<div id="coord-lat" class="span4">
193
										<label for="latitude">Latitude</label>
194
										<div>
195
											<input id="latitude" class="input-mini" name="latitude" type="text" value=""/>
196
										</div>
197
									</div>
198
									<div id="coord-lng" class="span4">
199
										<label for="longitude">Longitude</label>
200
										<div>
201
											<input id="longitude" class="input-mini" name="longitude" type="text" value=""/>
202
										</div>
203
									</div>
204
									<div class="span1">
205
										<div>
206
											<input id="geolocaliser" type="button" value="Voir sur la carte"/>
207
										</div>
208
									</div>
209
						    	</div>
210
							</div>
211
							<div class="row-fluid">
212
								<div class="span4">
213
									<label for="lieudit">
214
										Lieu-dit
215
									</label>
1214 jpm 216
									<div>
1216 jpm 217
										<input type="text" id="lieudit" class="input-medium" name="lieudit" value="" />
1214 jpm 218
									</div>
1210 jpm 219
								</div>
1216 jpm 220
								<div class="span4">
221
									<label for="station">
222
										Station
223
									</label>
1214 jpm 224
									<div>
1216 jpm 225
										<input type="text" id="station" class="input-medium" name="station" value="" />
1214 jpm 226
									</div>
1210 jpm 227
								</div>
1216 jpm 228
								<div class="span4">
229
									<label for="milieux">
230
										Milieu
231
									</label>
1214 jpm 232
									<div>
1216 jpm 233
										<input type="text" id="milieu" class="input-medium" name="milieu" value="" />
1214 jpm 234
									</div>
1210 jpm 235
								</div>
236
							</div>
1216 jpm 237
						</form>
238
					</div>
1210 jpm 239
				</div>
240
				<div class="span6">
241
					<div class="well">
242
						<form id="form-obs" class="" action="#" autocomplete="on">
243
							<h2>Observations</h2>
244
							<div class="row-fluid">
245
								<div class="span4">
246
									<label for="date" title="Veuillez indiquer la date du relevé au format jj/mm/aaaa">
247
										<strong class="obligatoire">*</strong> Date du relevé
248
									</label>
249
									<div class="input-prepend">
250
										<span id="date-icone" class="add-on"></span>
251
										<input id="date" class="input-small" name="date" type="text" value=""
252
											placeholder="jj/mm/aaaa"/>
253
									</div>
254
								</div>
1214 jpm 255
								<div id="taxon-input-groupe" class="span8">
1210 jpm 256
									<label for="taxon" title="Choisissez une espèce">
257
										<strong class="obligatoire">*</strong>
258
										Espèce
259
									</label>
260
									<div class="input-prepend">
261
										<span class="add-on">
262
											<i class="icon-leaf"></i>
263
										</span>
264
										<input type="text" id="taxon" name="taxon" value="" />
265
									</div>
266
								</div>
267
							</div>
268
							<div class="row-fluid">
269
								<div class="span12">
270
									<label for="notes">Notes</label>
1216 jpm 271
									<div>
272
										<textarea id="notes" class="span5" rows="7" name="notes"
273
											placeholder="Vous pouvez éventuellement ajouter une note sur votre observation..."
274
										></textarea>
275
									</div>
1210 jpm 276
								</div>
277
							</div>
278
						</form>
279
						<form id="form-upload" class="well form-horizontal" action="<?=$url_base?>saisie?projet=sauvages&amp;service=upload-image"
280
							method="post" enctype="multipart/form-data">
281
							<label>Photo</label>
282
							<input type="file" id="fichier" name="fichier" accept="image/jpeg"/>
283
							<input type="hidden" name="MAX_FILE_SIZE" value="5242880"/>
284
							<p id="miniature-info" class="discretion help-inline">La photo doit être au format JPEG et ne doit pas excéder 5Mo.</p>
285
							<div id="miniature"></div>
286
							<button id="effacer-miniature" type="button" style="display:none;">Effacer</button>
287
							<p id="miniature-msg" class="span12">&nbsp;</p>
288
						</form>
289
						<div class="row-fluid">
1216 jpm 290
							<div class="span12 centre">
1210 jpm 291
								<button id="ajouter-obs" class="btn btn-primary btn-large" type="button"
292
									title="Ajoute l'observation courante à la liste ci-dessous.">
293
									Créer
294
								</button>
295
							</div>
296
						</div>
297
					</div>
298
				</div>
299
			</div>
300
			<!-- Affiche le tableau récapitualif des observations ajoutées -->
301
			<div id="zone-liste-obs" class="row-fluid">
302
				<form action="#" class="well form-horizontal">
303
					<div class="row-fluid">
1215 jpm 304
						<h2>Liste des <span class="obs-nbre"></span> observations à transmettre</h2>
305
						<table id="liste-obs" class="table table-bordered table-condensed">
1210 jpm 306
							<thead>
307
								<tr>
1215 jpm 308
									<th rowspan="3">Photo</th>
1210 jpm 309
									<th><i class="icon-leaf illustration">&nbsp;</i>Nom</th>
1215 jpm 310
									<th colspan="2">Commune (code INSEE) [<span title="Latitude / Longitude"><i class="icon-map-marker">&nbsp;</i>Lat./Long.</span>]</th>
311
									<th rowspan="3">Notes</th>
312
									<th rowspan="3"><i class="icon-trash icone">&nbsp;</i>Action</th>
313
								</tr>
314
								<tr>
315
									<!-- Photo -->
316
									<th rowspan="2"><i class="icon-calendar illustration">&nbsp;</i>Date</th>
1210 jpm 317
									<th>Lieu-dit</th>
318
									<th>Station</th>
1215 jpm 319
									<!-- Notes -->
320
									<!-- Action -->
1210 jpm 321
								</tr>
1215 jpm 322
								<tr>
323
									<!-- N° -->
324
									<!-- Photo -->
325
									<!-- Nom scientifique & Date -->
326
									<th colspan="2">Milieu</th>
327
									<!-- Notes -->
328
									<!-- Action -->
329
								</tr>
1210 jpm 330
							</thead>
331
							<tbody></tbody>
332
						</table>
333
					</div>
334
					<div class="row-fluid">
335
						<div class="span12 droite">
336
							<button id="transmettre-obs" class="btn btn-primary btn-large" type="button"
337
								title="Ajoute les observations à votre Carnet en Ligne et les rend publiques.">
338
								Transmettre
339
							</button>
340
						</div>
341
					</div>
342
				</form>
343
			</div>
344
 
345
			<footer class="row-fluid">
346
				<p class="span12">&copy; Tela Botanica 2012</p>
347
			</footer>
348
		</div>
349
 
350
		<!-- Messages d'erreur du formulaire-->
1215 jpm 351
		<div id="dialogue-bloquer-copier-coller" style="display: none;" title="Information copier/coller">
1210 jpm 352
			<p>
353
				Merci de ne pas copier/coller votre courriel.<br/>
354
				La double saisie permet de vérifier l'absence d'erreurs.
355
			</p>
356
		</div>
1215 jpm 357
		<div id="dialogue-zero-obs" style="display: none;" title="Information aucune observation">
1210 jpm 358
			<p>Veuillez saisir des observations pour les transmettres.</p>
359
		</div>
360
 
1215 jpm 361
		<div id="dialogue-obs-transaction" style="display: none;" title="Transmission des observations"></div>
1210 jpm 362
 
1215 jpm 363
		<div id="dialogue-erreur" style="display: none;" title="Erreur"></div>
1210 jpm 364
 
365
		<div id="chargement" style="position:fixed;z-index:1000;top:0;left:0;height:100%;width:100%;background:#777;background:rgba(90,86,93,0.7);text-align:center;display:none;">
366
			<div id="chargement-centrage" style="position:relative;width:30%;margin:0 auto;top:30%;">
367
				<img id="chargement-img" src="<?=$url_base?>modules/saisie/squelettes/sauvages/img/chargement_arbre.gif" alt="Transfert en cours..."/>
368
				<p id="chargement-txt" style="color:white;font-size:1.5em;">
369
					Transfert des observations en cours...<br />
370
					Cela peut prendre plusieurs minutes en fonction de la taille des images et du nombre d'observation à transférer.
371
				</p>
372
			</div>
373
		</div>
374
 
375
		<!-- Stats : Google Analytics-->
376
		<script type="text/javascript">
377
			//<![CDATA[
378
			var _gaq = _gaq || [];
379
			_gaq.push(['_setAccount', 'UA-20092557-1']);
380
			_gaq.push(['_trackPageview']);
381
 
382
			(function() {
383
			  var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
384
			  ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
385
			  var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
386
			})();
387
			//]]>
388
		</script>
389
	</body>
390
</html>