Subversion Repositories eFlore/Applications.cel

Rev

Rev 3228 | Rev 3230 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 3228 Rev 3229
1
<!DOCTYPE html>
1
<!DOCTYPE html>
2
<html xmlns="https://www.w3.org/1999/xhtml">
2
<html xmlns="https://www.w3.org/1999/xhtml">
3
	<head>
3
	<head>
4
		<title><?= $widget['titre']; ?></title>
4
		<title><?= $widget['titre']; ?></title>
5
 
5
 
6
		<meta charset="utf-8" />
6
		<meta charset="utf-8" />
7
		<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
7
		<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
8
		<meta http-equiv="Content-style-type" content="text/css" />
8
		<meta http-equiv="Content-style-type" content="text/css" />
9
		<meta http-equiv="Content-script-type" content="text/javascript" />
9
		<meta http-equiv="Content-script-type" content="text/javascript" />
10
		<meta http-equiv="Content-language" content="fr" />
10
		<meta http-equiv="Content-language" content="fr" />
11
 
11
 
12
		<meta name="revisit-after" content="15 days" />
12
		<meta name="revisit-after" content="15 days" />
13
		<meta name="robots" content="index,follow" />
13
		<meta name="robots" content="index,follow" />
14
		<meta name="author" content="Tela Botanica" />
14
		<meta name="author" content="Tela Botanica" />
15
		<meta name="keywords" content="Tela Botanica, CEL" />
15
		<meta name="keywords" content="Tela Botanica, CEL" />
16
		<meta name="description" content="Gestion des widgets de saisie du carnet en ligne" />
16
		<meta name="description" content="Gestion des widgets de saisie du carnet en ligne" />
17
		<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no, user-scalable=no" />
17
		<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no, user-scalable=no" />
18
 
18
 
19
		<!-- OpenGraph pour Facebook, Pinterest, Google+ -->
19
		<!-- OpenGraph pour Facebook, Pinterest, Google+ -->
20
		<meta property="og:type" content="website" />
20
		<meta property="og:type" content="website" />
21
		<meta property="og:title" content="Widgets de saisie du CeL" />
21
		<meta property="og:title" content="Widgets de saisie du CeL" />
22
		<meta property="og:site_name" content="Tela Botanica" />
22
		<meta property="og:site_name" content="Tela Botanica" />
23
		<meta property="og:description" content="Widgets de saisie du Carnet en Ligne" />
23
		<meta property="og:description" content="Widgets de saisie du Carnet en Ligne" />
24
		<meta property="og:image" content="https://resources.tela-botanica.org/tb/img/256x256/carre_englobant.png" />
24
		<meta property="og:image" content="https://resources.tela-botanica.org/tb/img/256x256/carre_englobant.png" />
25
		<meta property="og:image:type" content="image/png" />
25
		<meta property="og:image:type" content="image/png" />
26
		<meta property="og:image:width" content="256" />
26
		<meta property="og:image:width" content="256" />
27
		<meta property="og:image:height" content="256" />
27
		<meta property="og:image:height" content="256" />
28
		<meta property="og:locale" content="fr_FR" />
28
		<meta property="og:locale" content="fr_FR" />
29
 
29
 
30
		<!-- Favicones -->
30
		<!-- Favicones -->
31
		<link rel="shortcut icon" type="image/x-icon" href="https://resources.tela-botanica.org/tb/img/16x16/favicon.ico" />
31
		<link rel="shortcut icon" type="image/x-icon" href="https://resources.tela-botanica.org/tb/img/16x16/favicon.ico" />
32
		
32
		
33
		<!-- CSS -->
33
		<!-- CSS -->
34
		<link href="https://www.tela-botanica.org/commun/jquery/jquery-ui/1.8.18/css/smoothness/jquery-ui-1.8.18.custom.css" rel="stylesheet" type="text/css" media="screen" />
34
		<link href="https://www.tela-botanica.org/commun/jquery/jquery-ui/1.8.18/css/smoothness/jquery-ui-1.8.18.custom.css" rel="stylesheet" type="text/css" media="screen" />
35
		<!-- Bootstrap CSS -->
35
		<!-- Bootstrap CSS -->
36
		<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css" integrity="sha384-MCw98/SFnGE8fJT3GXwEOngsV7Zt27NXFoaoApmYm81iuXoPkFOJwJ8ERdknLPMO" crossorigin="anonymous" />
36
		<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css" integrity="sha384-MCw98/SFnGE8fJT3GXwEOngsV7Zt27NXFoaoApmYm81iuXoPkFOJwJ8ERdknLPMO" crossorigin="anonymous" />
37
		<link rel="stylesheet" type="text/css" href="<?= $url_base; ?>modules/saisie2/squelettes/css/bootstrap-4/css/bootstrap.min.css" />
37
		<link rel="stylesheet" type="text/css" href="<?= $url_base; ?>modules/saisie2/squelettes/css/bootstrap-4/css/bootstrap.min.css" />
38
		<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.1.1/css/all.css" integrity="sha384-O8whS3fhG2OnA5Kas0Y9l3cfpmYjapjI0E4theH4iuMD+pLhbf6JI0jIMfYcK3yZ" crossorigin="anonymous" />
38
		<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.1.1/css/all.css" integrity="sha384-O8whS3fhG2OnA5Kas0Y9l3cfpmYjapjI0E4theH4iuMD+pLhbf6JI0jIMfYcK3yZ" crossorigin="anonymous" />
39
		<link href="<?= $url_base; ?>modules/saisie2/squelettes/css/saisie.css" rel="stylesheet" type="text/css" media="screen" />
39
		<link href="<?= $url_base; ?>modules/saisie2/squelettes/css/saisie.css" rel="stylesheet" type="text/css" media="screen" />
40
 
40
 
41
		<!-- carto -->
41
		<!-- carto -->
42
		<link href="<?= $url_base; ?>modules/saisie2/squelettes/js/tb-geoloc/styles.css" rel="stylesheet" type="text/css" media="screen" />
42
		<link href="<?= $url_base; ?>modules/saisie2/squelettes/js/tb-geoloc/styles.css" rel="stylesheet" type="text/css" media="screen" />
43
		<!--  Google Analytics -->
43
		<!--  Google Analytics -->
44
		<?php if( $prod ): ?>
44
		<?php if( $prod ): ?>
45
			<?php include "analytics.html"; ?>
45
			<?php include "analytics.html"; ?>
46
		<?php endif; ?>
46
		<?php endif; ?>
47
		<link rel="icon" type="image/x-icon" href="favicon.ico" />
47
		<link rel="icon" type="image/x-icon" href="favicon.ico" />
48
		<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet" />
48
		<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet" />
49
	</head>
49
	</head>
50
 
50
 
51
	<body>
51
	<body>
52
		<!-- <?php //var_dump($widget['especes']['url_ws_autocompletion_ns']); ?> -->
52
		<!-- <?php //var_dump($widget['especes']['url_ws_autocompletion_ns']); ?> -->
53
		<div id="zone-appli" class="container">
53
		<div id="zone-appli" class="container">
54
			<div class="layout-wrapper page">
54
			<div class="layout-wrapper page">
55
				<div class="media">
55
				<div class="media">
56
					<img class="d-flex mr-3" src="<?= $widget['logo']; ?>" alt="logo<?= $widget['projet']; ?>" />
56
					<img class="d-flex mr-3" src="<?= $widget['logo']; ?>" alt="logo<?= $widget['projet']; ?>" />
57
				<div class="media-body">
57
				<div class="media-body">
58
				<h1 class="mt-0"><?= $widget['titre']; ?></h1>
58
				<h1 class="mt-0"><?= $widget['titre']; ?></h1>
59
			</div>
59
			</div>
60
		</div>
60
		</div>
61
 
61
 
62
		<div class="row">
62
		<div class="row">
63
			<div class="col-md-6">
63
			<div class="col-md-6">
64
				<div id="description"><?= $widget['description']; ?></div>
64
				<div id="description"><?= $widget['description']; ?></div>
65
			</div>
65
			</div>
66
			<div class="col-md-6">
66
			<div class="col-md-6">
67
				<div id="aide" class="well well-lg hidden-sm-down">
67
				<div id="aide" class="well well-lg hidden-sm-down">
68
					<h3><?= $aide['titre']; ?></h3>
68
					<h3><?= $aide['titre']; ?></h3>
69
					<div id="aide-txt" class="hiden-sm-down">
69
					<div id="aide-txt" class="hiden-sm-down">
70
						<p><?= $aide['description']; ?></p>
70
						<p><?= $aide['description']; ?></p>
71
					</div>
71
					</div>
72
				</div>
72
				</div>
73
			</div>
73
			</div>
74
		</div>
74
		</div>
75
 
75
 
76
		<div id="formulaire" class="row mb-3 bloc-top">
76
		<div id="formulaire" class="row mb-3 bloc-top">
77
			<form id="form-observateur" role="form" autocomplete="on">
77
			<form id="form-observateur" role="form" autocomplete="on">
78
				<h2><?= $observateur['titre']; ?></h2>
78
				<h2><?= $observateur['titre']; ?></h2>
79
				<!--la partie tb-navigation vient du widget stats http://svn.tela-botanica.net/websvn/filedetails.php?repname=eFlore%2FApplications.cel&path=%2Ftrunk%2Fwidget%2Fmodules%2Fstats%2Fsquelettes%2Fstats_utilisateur.tpl.html
79
				<!--la partie tb-navigation vient du widget stats http://svn.tela-botanica.net/websvn/filedetails.php?repname=eFlore%2FApplications.cel&path=%2Ftrunk%2Fwidget%2Fmodules%2Fstats%2Fsquelettes%2Fstats_utilisateur.tpl.html
80
				la partie contenu-souce vient de http://svn.tela-botanica.net/websvn/filedetails.php?repname=Applications.reseau&path=%2Ftrunk%2Fwidget%2Fmodules%2Fnavigation%2Fsquelettes%2Fbootstrap3.tpl.php
80
				la partie contenu-souce vient de http://svn.tela-botanica.net/websvn/filedetails.php?repname=Applications.reseau&path=%2Ftrunk%2Fwidget%2Fmodules%2Fnavigation%2Fsquelettes%2Fbootstrap3.tpl.php
81
				le javascript auth.js vient de http://svn.tela-botanica.net/websvn/filedetails.php?repname=Applications.reseau&path=%2Ftrunk%2Fresources%2Fjs%2Fnavigation.js
81
				le javascript auth.js vient de http://svn.tela-botanica.net/websvn/filedetails.php?repname=Applications.reseau&path=%2Ftrunk%2Fresources%2Fjs%2Fnavigation.js
82
				de l'aide dans la partie Intégration dans l'interface (applications AJAX) de https://www.tela-botanica.org/wikini/DevInformatiques/wakka.php?wiki=MemoIntegrationSSO-->
82
				de l'aide dans la partie Intégration dans l'interface (applications AJAX) de https://www.tela-botanica.org/wikini/DevInformatiques/wakka.php?wiki=MemoIntegrationSSO-->
83
				<!-- prod : -->
83
				<!-- prod : -->
84
				<!-- <div id="tb-navigation" data-courant="widget-cel-saisie2" data-squelette="navigation" data-mode="prod"> -->
84
				<!-- <div id="tb-navigation" data-courant="widget-cel-saisie2" data-squelette="navigation" data-mode="prod"> -->
85
				<!-- beta (test) :-->
85
				<!-- beta (test) :-->
86
				<div id="tb-navigation" data-courant="widget-cel-saisie2" data-squelette="navigation" data-mode="test">
86
				<div id="tb-navigation" data-courant="widget-cel-saisie2" data-squelette="navigation" data-mode="test">
87
				<!-- dev (localhost) : -->
87
				<!-- dev (localhost) : -->
88
				<!-- <div id="tb-navigation" data-courant="widget-cel-saisie2" data-squelette="navigation" data-mode="local"> -->
88
				<!-- <div id="tb-navigation" data-courant="widget-cel-saisie2" data-squelette="navigation" data-mode="local"> -->
89
					<div class="navbar-default mb-3" id="tb-navbar">
89
					<div class="navbar-default mb-3" id="tb-navbar">
90
						<div class="nav navbar-nav navbar-right row">
90
						<div class="nav navbar-nav navbar-right row">
91
							<div id="bouton-connexion" class="dropdown col-md-6 col-sm-8">
91
							<div id="bouton-connexion" class="dropdown col-md-6 col-sm-8">
92
								<label for="bouton-connexion"><?= $observateur['compte']; ?></label>
92
								<label for="bouton-connexion"><?= $observateur['compte']; ?></label>
93
								<a id="connexion" href="<?= $authTpl; ?>" class="btn btn-success  mr-1 mb-1" taget="_blank"><?= $observateur['connexion']; ?></a>
93
								<a id="connexion" href="<?= $authTpl; ?>" class="btn btn-success  mr-1 mb-1" taget="_blank"><?= $observateur['connexion']; ?></a>
94
								<a id="bouton-inscription" href="https://beta.tela-botanica.org/test/inscription" class="btn btn-primary mr-1 mb-1" taget="_blank"><?= $observateur['inscription']; ?></a>
94
								<a id="bouton-inscription" href="https://beta.tela-botanica.org/test/inscription" class="btn btn-primary mr-1 mb-1" taget="_blank"><?= $observateur['inscription']; ?></a>
95
							</div>
95
							</div>
96
							<div id="creation-compte" class="dropdown col-md-6 col-sm-8">
96
							<div id="creation-compte" class="dropdown col-md-6 col-sm-8">
97
								<label for="creation-compte"><?= $observateur['noninscription']; ?></label>
97
								<label for="creation-compte"><?= $observateur['noninscription']; ?></label>
98
								<a id="bouton-anonyme" href="#" class="btn btn-info mr-1 mb-1"><?= $observateur['connexion']; ?>Observation sans inscription</a>
98
								<a id="bouton-anonyme" href="#" class="btn btn-info mr-1 mb-1"><?= $observateur['nonconnexion']; ?></a>
99
							</div>
99
							</div>
100
							<div id="utilisateur-connecte" class="dropdown hidden">
100
							<div id="utilisateur-connecte" class="dropdown hidden">
101
								<label for="utilisateur-connecte"><?= $observateur['bienvenue']; ?></label>
101
								<label for="utilisateur-connecte"><?= $observateur['bienvenue']; ?></label>
102
								<a href="#" class="list-tool btn btn-largee btn-primary dropdown-toggle" data-toggle="dropdown">
102
								<a href="#" class="list-tool btn btn-largee btn-primary dropdown-toggle" data-toggle="dropdown">
103
									<span id="nom-complet"></span>
103
									<span id="nom-complet"></span>
104
								</a>
104
								</a>
105
								<div class="dropdown-menu">
105
								<div class="dropdown-menu">
106
									<div id="profil-utilisateur"><a href="https://beta.tela-botanica.org/test/inscription" taget="_blank">Mon profil</a></div>
106
									<div id="profil-utilisateur"><a href="https://beta.tela-botanica.org/test/inscription" taget="_blank"><?= $observateur['profil']; ?></a></div>
107
									<div id="deconnexion"><a href="#"><?= $observateur['deconnexion']; ?></a></div>
107
									<div id="deconnexion"><a href="#"><?= $observateur['deconnexion']; ?></a></div>
108
								</div>
108
								</div>
109
							</div>
109
							</div>
110
						</div>
110
						</div>
111
					</div>
111
					</div>
112
				</div>
112
				</div>
113
	
113
	
114
				<div id="anonyme" class="mb-3 hidden">
114
				<div id="anonyme" class="mb-3 hidden">
115
					<div id="zone-courriel" class="row">
115
					<div id="zone-courriel" class="row">
116
						<div class="control-group col-md-6">
116
						<div class="control-group col-md-6">
117
							<label for="courriel" class="col-sm-8 obligatoire" title="<?= $observateur['courriel-title']; ?>">
117
							<label for="courriel" class="col-sm-8 obligatoire" title="<?= $observateur['courriel-title']; ?>">
118
								<i class="fa fa-envelope" aria-hidden="true"></i>
118
								<i class="fa fa-envelope" aria-hidden="true"></i>
119
								<?= $observateur['courriel']; ?>
119
								<?= $observateur['courriel']; ?>
120
							</label>
120
							</label>
121
							<div class="col-sm-8 mb-3">
121
							<div class="col-sm-8 mb-3">
122
								<input id="courriel" name="courriel" class="form-control" type="email" title="<?= $observateur['courriel-title']; ?> ">
122
								<input id="courriel" name="courriel" class="form-control" type="email" title="<?= $observateur['courriel-title']; ?> ">
123
								<input id="id_utilisateur" name="id_utilisateur" type="hidden">
123
								<input id="id_utilisateur" name="id_utilisateur" type="hidden">
124
							</div>
124
							</div>
125
						</div>
125
						</div>
126
						
126
						
127
						<div id="zone-courriel-confirmation" class="control-group col-md-6 hidden">
127
						<div id="zone-courriel-confirmation" class="control-group col-md-6 hidden">
128
							<label for="courriel_confirmation" class="col-sm-8 obligatoire" title="Veuillez confirmer le courriel.">
128
							<label for="courriel_confirmation" class="col-sm-8 obligatoire" title="Veuillez confirmer le courriel.">
129
								<i class="fa fa-envelope" aria-hidden="true"></i>
129
								<i class="fa fa-envelope" aria-hidden="true"></i>
130
								<?= $observateur['courriel-confirmation']; ?>
130
								<?= $observateur['courriel-confirmation']; ?>
131
							</label>
131
							</label>
132
							<div class="col-sm-8">
132
							<div class="col-sm-8">
133
								<input id="courriel_confirmation" name="courriel_confirmation" class="form-control" type="email">
133
								<input id="courriel_confirmation" name="courriel_confirmation" class="form-control" type="email">
134
							</div>
134
							</div>
135
						</div>
135
						</div>
136
					</div>
136
					</div>
137
					
137
					
138
					<div id="zone-prenom-nom" class="row hidden">
138
					<div id="zone-prenom-nom" class="row hidden">
139
						<div class="control-group col-md-6">
139
						<div class="control-group col-md-6">
140
							<label for="prenom" class="col-sm-8">
140
							<label for="prenom" class="col-sm-8">
141
								<i class="fa fa-user" aria-hidden="true"></i>
141
								<i class="fa fa-user" aria-hidden="true"></i>
142
								<?= $observateur['prenom']; ?>
142
								<?= $observateur['prenom']; ?>
143
							</label>
143
							</label>
144
							<div class="input-group col-sm-8">
144
							<div class="input-group col-sm-8">
145
								<input id="prenom" name="prenom" class="form-control" type="text">
145
								<input id="prenom" name="prenom" class="form-control" type="text">
146
							</div>
146
							</div>
147
						</div>
147
						</div>
148
						<div class="control-group col-md-6">
148
						<div class="control-group col-md-6">
149
							<label for="nom" class="col-sm-8">
149
							<label for="nom" class="col-sm-8">
150
								<i class="fa fa-user" aria-hidden="true"></i>
150
								<i class="fa fa-user" aria-hidden="true"></i>
151
								<?= $observateur['nom']; ?>
151
								<?= $observateur['nom']; ?>
152
							</label>
152
							</label>
153
							<div class="input-group col-sm-8">
153
							<div class="input-group col-sm-8">
154
								<input id="nom" name="nom" class="form-control" type="text">
154
								<input id="nom" name="nom" class="form-control" type="text">
155
							</div>
155
							</div>
156
						</div>
156
						</div>
157
					</div>
157
					</div>
158
				</div>
158
				</div>
159
			</form>
159
			</form>
160
 
160
 
161
			<!-- Messages d'erreur du formulaire-->
161
			<!-- Messages d'erreur du formulaire-->
162
			<div class="row">
162
			<div class="row">
163
				<div class="zone-alerte">
163
				<div class="zone-alerte">
164
					<div id="dialogue-bloquer-copier-coller" class="alert alert-info alert-block hidden"">
164
					<div id="dialogue-bloquer-copier-coller" class="alert alert-info alert-block hidden"">
165
						<a class="close">×</a>
165
						<a class="close">×</a>
166
						<h4 class="alert-heading"><?= $observateur['alertcc-title']; ?></h4>
166
						<h4 class="alert-heading"><?= $observateur['alertcc-title']; ?></h4>
167
						<p><?= $observateur['alertcc']; ?></p>
167
						<p><?= $observateur['alertcc']; ?></p>
168
					</div>
168
					</div>
169
					<div id="dialogue-utilisateur-non-identifie" class="alert alert-warning alert-block hidden">
169
					<div id="dialogue-utilisateur-non-identifie" class="alert alert-warning alert-block hidden">
170
						<a class="close">×</a>
170
						<a class="close">×</a>
171
						<h4 class="alert-heading"><?= $observateur['alertni-title']; ?></h4>
171
						<h4 class="alert-heading"><?= $observateur['alertni-title']; ?></h4>
172
						<p><?= $observateur['alertni']; ?></p>
172
						<p><?= $observateur['alertni']; ?></p>
173
					</div>
173
					</div>
174
				</div>
174
				</div>
175
			</div>
175
			</div>
176
 
176
 
177
			<form id="form-observation" role="form" autocomplete="on" class="bloc-top">
177
			<form id="form-observation" role="form" autocomplete="on" class="bloc-top">
178
				<h2><?= $observation['titre']; ?></h2>
178
				<h2><?= $observation['titre']; ?></h2>
179
				<div id="zone-observation" class="row">
179
				<div id="zone-observation" class="row">
180
					<div class="col-md-6">
180
					<div class="col-md-6">
181
						<div class="control-group">
181
						<div class="control-group">
182
							<label for="geolocalisation" class="col-sm-8 obligatoire" title="<?= $observateur['courriel-title']; ?>">
182
							<label for="geolocalisation" class="col-sm-8 obligatoire" title="<?= $observateur['courriel-title']; ?>">
183
								<i class="fa fa-street-view" aria-hidden="true"></i>
183
								<i class="fa fa-street-view" aria-hidden="true"></i>
184
								<?= $observation['geolocalisation']; ?>
184
								<?= $observation['geolocalisation']; ?>
185
							</label>
185
							</label>
186
							<div class="col-sm-8 mb-3">
186
							<div class="col-sm-8 mb-3">
187
								<input id="geolocalisation" name="geolocalisation" type="hidden">
187
								<input id="geolocalisation" name="geolocalisation" type="hidden">
188
								<tb-geolocation-element id="tb-geolocation"></tb-geolocation-element>
188
								<tb-geolocation-element id="tb-geolocation"></tb-geolocation-element>
189
							</div>
189
							</div>
190
						</div>
190
						</div>
191
						<div class="control-group">
191
						<div class="control-group">
192
							<label for="milieu" class="col-sm-8">
192
							<label for="milieu" class="col-sm-8">
193
								<i class="fa fa-street-view" aria-hidden="true"></i>
193
								<i class="fa fa-street-view" aria-hidden="true"></i>
194
								<?= $observation['milieu']; ?>
194
								<?= $observation['milieu']; ?>
195
							</label>
195
							</label>
196
							<div class="col-sm-8 mb-3">
196
							<div class="col-sm-8 mb-3">
197
								<?php if ( 0 < count( (array) $widget['milieux'] ) ) :?>
197
								<?php if ( 0 < count( (array) $widget['milieux'] ) ) :?>
198
									<select id="milieu" class="form-control" >
198
									<select id="milieu" class="form-control" >
199
										<?php foreach ( $widget['milieux'] as $milieu ) :?>
199
										<?php foreach ( $widget['milieux'] as $milieu ) :?>
200
											<option value="<?= $milieu; ?>"><?= $milieu; ?></option>
200
											<option value="<?= $milieu; ?>"><?= $milieu; ?></option>
201
										<?php endforeach; ?>
201
										<?php endforeach; ?>
202
									</select>
202
									</select>
203
								<?php else : ?>
203
								<?php else : ?>
204
									<input id="milieu" name="milieu" class="form-control" type="text" placeholder="<?= $observation['milieu-ph']; ?>">
204
									<input id="milieu" name="milieu" class="form-control" type="text" placeholder="<?= $observation['milieu-ph']; ?>">
205
								<?php endif; ?>
205
								<?php endif; ?>
206
							</div>
206
							</div>
207
						</div>
207
						</div>
208
					</div>
208
					</div>
209
					
209
					
210
					<div class="col-md-6">
210
					<div class="col-md-6">
211
						<div class="control-group">
211
						<div class="control-group">
212
							<label for="date_releve" class="col-sm-8 obligatoire" title="">
212
							<label for="date_releve" class="col-sm-8 obligatoire" title="">
213
								<i class="fa fa-calendar" aria-hidden="true"></i>
213
								<i class="fa fa-calendar" aria-hidden="true"></i>
214
								<?= $observation['date']; ?>
214
								<?= $observation['date']; ?>
215
							</label>
215
							</label>
216
							<div class="col-sm-8 mb-3" id="datetimepicker">
216
							<div class="col-sm-8 mb-3" id="datetimepicker">
217
								<input type="text" id="date_releve" name="date_releve" class="form-control date" placeholder="jj/mm/aaaa"  pattern="(^(((0[1-9]|1[0-9]|2[0-8])[\/](0[1-9]|1[012]))|((29|30|31)[\/](0[13578]|1[02]))|((29|30)[\/](0[4,6,9]|11)))[\/](19|[2-9][0-9])\d\d$)|(^29[\/]02[\/](19|[2-9][0-9])(00|04|08|12|16|20|24|28|32|36|40|44|48|52|56|60|64|68|72|76|80|84|88|92|96)$)" title="jj/mm/aaaa">
217
								<input type="text" id="date_releve" name="date_releve" class="form-control date" placeholder="jj/mm/aaaa"  pattern="(^(((0[1-9]|1[0-9]|2[0-8])[\/](0[1-9]|1[012]))|((29|30|31)[\/](0[13578]|1[02]))|((29|30)[\/](0[4,6,9]|11)))[\/](19|[2-9][0-9])\d\d$)|(^29[\/]02[\/](19|[2-9][0-9])(00|04|08|12|16|20|24|28|32|36|40|44|48|52|56|60|64|68|72|76|80|84|88|92|96)$)" title="jj/mm/aaaa">
218
							</div>
218
							</div>
219
						</div>
219
						</div>
220
 
220
 
221
						<?php if(($widget['type_especes'] === 'referentiel' || $widget['type_especes'] == '') && $widget['referentiel'] == '' ) : ?>
221
						<?php if(($widget['type_especes'] === 'referentiel' || $widget['type_especes'] == '') && $widget['referentiel'] == '' ) : ?>
222
							<div class="control-group">
222
							<div class="control-group">
223
								<label for="referentiel" class="col-sm-8 obligatoire" title="">
223
								<label for="referentiel" class="col-sm-8 obligatoire" title="">
224
									<i class="fa fa-book" aria-hidden="true"></i>
224
									<i class="fa fa-book" aria-hidden="true"></i>
225
									<?= $observation['referentiel']; ?>
225
									<?= $observation['referentiel']; ?>
226
								</label>
226
								</label>
227
								<div class="col-sm-8 mb-3">
227
								<div class="col-sm-8 mb-3">
228
									<select id="referentiel" class="form-control" >
228
									<select id="referentiel" class="form-control" >
229
										<option value="bdtfxr" selected="selected" title="Trachéophytes de France métropolitaine">Métropole (index réduit)</option>
229
										<option value="bdtfxr" selected="selected" title="Trachéophytes de France métropolitaine">Métropole (index réduit)</option>
230
										<option value="bdtfx" title="Trachéophytes de France métropolitaine">Métropole (BDTFX)</option>
230
										<option value="bdtfx" title="Trachéophytes de France métropolitaine">Métropole (BDTFX)</option>
231
										<option value="bdtxa" title="Trachéophytes des Antilles">Antilles françaises (BDTXA)</option>
231
										<option value="bdtxa" title="Trachéophytes des Antilles">Antilles françaises (BDTXA)</option>
232
										<option value="bdtre" title="Trachéophytes de La Réunion">Réunion (BDTRE)</option>
232
										<option value="bdtre" title="Trachéophytes de La Réunion">Réunion (BDTRE)</option>
233
										<option value="aublet" title="Guyane">Guyane (AUBLET2)</option>
233
										<option value="aublet" title="Guyane">Guyane (AUBLET2)</option>
234
										<option value="florical" title="Nouvelle-Calédonie">Nouvelle-Calédonie (FLORICAL)</option>
234
										<option value="florical" title="Nouvelle-Calédonie">Nouvelle-Calédonie (FLORICAL)</option>
235
										<option value="isfan" title="Afrique du Nord">Afrique du Nord (ISFAN)</option>
235
										<option value="isfan" title="Afrique du Nord">Afrique du Nord (ISFAN)</option>
236
										<option value="apd" title="Afrique de l'Ouest et du Centre">Afrique de l'Ouest et du Centre (APD)</option>
236
										<option value="apd" title="Afrique de l'Ouest et du Centre">Afrique de l'Ouest et du Centre (APD)</option>
237
										<option value="lbf" title="Liban">Liban (LBF)</option>
237
										<option value="lbf" title="Liban">Liban (LBF)</option>
238
										<option value="autre" title="Autre/Inconnu">Autre/Inconnu</option>
238
										<option value="autre" title="Autre/Inconnu">Autre/Inconnu</option>
239
									</select>
239
									</select>
240
								</div>
240
								</div>
241
							</div>
241
							</div>
242
						<?php else : ?><?= $widget['referentiel']; ?>
242
						<?php else : ?><?= $widget['referentiel']; ?>
243
							<input id="referentiel" name="referentiel" value="<?= $widget['referentiel']; ?>" type="hidden">
243
							<input id="referentiel" name="referentiel" value="<?= $widget['referentiel']; ?>" type="hidden">
244
						<?php endif; ?>
244
						<?php endif; ?>
245
 
245
 
246
						<div class="control-group">
246
						<div class="control-group">
247
                  <label for="taxon" class="col-sm-8 obligatoire" title="">
247
                  <label for="taxon" class="col-sm-8 obligatoire" title="">
248
                    <i class="fa fa-leaf" aria-hidden="true"></i>
248
                    <i class="fa fa-leaf" aria-hidden="true"></i>
249
                    <?= $observation['espece']; ?>
249
                    <?= $observation['espece']; ?>
250
                  </label>
250
                  </label>
251
                  <div class="col-sm-8 mb-3">
251
                  <div class="col-sm-8 mb-3">
252
                    <input id="taxon" name="taxon" class="form-control" type="text">
252
                    <input id="taxon" name="taxon" class="form-control" type="text">
253
                  </div>
253
                  </div>
254
                </div>
254
                </div>
255
 
255
 
256
                <div class="control-group">
256
                <div class="control-group">
257
                  <label for="certitude" class="col-sm-8 obligatoire" title="">
257
                  <label for="certitude" class="col-sm-8 obligatoire" title="">
258
                    <i class="fa fa-question" aria-hidden="true"></i>
258
                    <i class="fa fa-question" aria-hidden="true"></i>
259
                    <?= $observation['certitude']; ?>
259
                    <?= $observation['certitude']; ?>
260
                  </label>
260
                  </label>
261
                  <div class="col-sm-8 mb-3">
261
                  <div class="col-sm-8 mb-3">
262
                    <select id="certitude" name="certitude" class="form-control">
262
                    <select id="certitude" name="certitude" class="form-control">
263
                      <option value="aDeterminer" ><?= $observation['certADet']; ?></option>
263
                      <option value="aDeterminer" ><?= $observation['certADet']; ?></option>
264
                      <option value="douteuse" ><?= $observation['certDout']; ?></option>
264
                      <option value="douteuse" ><?= $observation['certDout']; ?></option>
265
                      <option value="certaine" selected="selected" ><?= $observation['certCert']; ?></option>
265
                      <option value="certaine" selected="selected" ><?= $observation['certCert']; ?></option>
266
                    </select>
266
                    </select>
267
                  </div>
267
                  </div>
268
                </div>
268
                </div>
269
 
269
 
270
              </div>
270
              </div>
271
            </div>
271
            </div>
272
          </form>
272
          </form>
273
 
273
 
274
          <form id="form-upload" class="form-horizontal bloc-top" action="<?= $url_ws_upload ?>" method="post" enctype="multipart/form-data">
274
          <form id="form-upload" class="form-horizontal bloc-top" action="<?= $url_ws_upload ?>" method="post" enctype="multipart/form-data">
275
            <h2>Image(s) de cette plante</h2>
275
            <h2>Image(s) de cette plante</h2>
276
            <p class="miniature-info" class="discretion help-inline">
276
            <p class="miniature-info" class="discretion help-inline">
277
              Les photos doivent être au format JPEG et ne doivent pas excéder 5Mo chacunes.
277
              Les photos doivent être au format JPEG et ne doivent pas excéder 5Mo chacunes.
278
            </p>
278
            </p>
279
            <div id ="photos-conteneur" class="control-group">
279
            <div id ="photos-conteneur" class="control-group">
280
              <div>
280
              <div>
281
                <label for="fichier" class="label-file btn btn-large btn-info mb-3">
281
                <label for="fichier" class="label-file btn btn-large btn-info mb-3">
282
                  <span class="label-text"><i class="fas fa-download"></i> Ajouter une image</span>
282
                  <span class="label-text"><i class="fas fa-download"></i> Ajouter une image</span>
283
                  <input type="file" id="fichier" name="fichier" class="input-file" accept="image/jpeg" multiple>
283
                  <input type="file" id="fichier" name="fichier" class="input-file" accept="image/jpeg" multiple>
284
                  <input type="hidden" name="MAX_FILE_SIZE" value="5242880">
284
                  <input type="hidden" name="MAX_FILE_SIZE" value="5242880">
285
                </label>
285
                </label>
286
              </div>
286
              </div>
287
 
287
 
288
              <div id="miniatures"></div>
288
              <div id="miniatures"></div>
289
              <p class="miniature-msg" class="span12">&nbsp;</p>
289
              <p class="miniature-msg" class="span12">&nbsp;</p>
290
            </div>
290
            </div>
291
          </form>
291
          </form>
292
 
292
 
293
          <!-- Champs supplémentaires -->
293
          <!-- Champs supplémentaires -->
294
          <?php if ( isset($widget['chpSupp'] ) && 0 < count( (array) $widget['chpSupp'] ) ) : ?>
294
          <?php if ( isset($widget['chpSupp'] ) && 0 < count( (array) $widget['chpSupp'] ) ) : ?>
295
            <form id="form-supp" role="form" autocomplete="on">
295
            <form id="form-supp" role="form" autocomplete="on">
296
              <h2>Informations propres au projet</h2>
296
              <h2>Informations propres au projet</h2>
297
              <div id="zone-supp" class="row">
297
              <div id="zone-supp" class="row">
298
                <div class="col-md-6">
298
                <div class="col-md-6">
299
 
299
 
300
                  <?php foreach( $widget['chpSupp']['sauvagessupp']['champs-supp'] as $champ ) :?>
300
                  <?php foreach( $widget['chpSupp']['sauvagessupp']['champs-supp'] as $champ ) :?>
301
                    <?php
301
                    <?php
302
                      $min         = ( $champ['fieldValues']['min'] )? ' min="' . $champ['fieldValues']['min'] . '"':'';
302
                      $min         = ( $champ['fieldValues']['min'] )? ' min="' . $champ['fieldValues']['min'] . '"':'';
303
                      $max         = ( $champ['fieldValues']['max'] )? ' max="' . $champ['fieldValues']['max'] . '"':'';
303
                      $max         = ( $champ['fieldValues']['max'] )? ' max="' . $champ['fieldValues']['max'] . '"':'';
304
                      $step        = ( $champ['fieldValues']['step'] )? ' step="' . $champ['fieldValues']['step'] . '"':'';
304
                      $step        = ( $champ['fieldValues']['step'] )? ' step="' . $champ['fieldValues']['step'] . '"':'';
305
                      $default     = ( $champ['fieldValues']['default'] )? ' value="' . $champ['fieldValues']['default'] . '"':'';
305
                      $default     = ( $champ['fieldValues']['default'] )? ' value="' . $champ['fieldValues']['default'] . '"':'';
306
                      $description = ( $champ['description'] )? ' title="' . $champ['description'] . '"':'';
306
                      $description = ( $champ['description'] )? ' title="' . $champ['description'] . '"':'';
307
                      $placeholder = ( $champ['fieldValues']['placeholder'] )? ' placeholder="' . $champ['fieldValues']['placeholder'] . '"':'';
307
                      $placeholder = ( $champ['fieldValues']['placeholder'] )? ' placeholder="' . $champ['fieldValues']['placeholder'] . '"':'';
308
                      $required    = '';
308
                      $required    = '';
309
                      $mandatory   = '';
309
                      $mandatory   = '';
310
                      $datepicker  = '';
310
                      $datepicker  = '';
311
                      $pattern     = '';
311
                      $pattern     = '';
312
                      $obs_radio   = '';
312
                      $obs_radio   = '';
313
                      $help        = '';
313
                      $help        = '';
314
                      $help_button = '';
314
                      $help_button = '';
315
 
315
 
316
                      if( /*true*/$champ['help'] ) {
316
                      if( /*true*/$champ['help'] ) {
317
                        $help = ' and-help';
317
                        $help = ' and-help';
318
                        // TODO récupérer un $champ['help_mime_type']
318
                        // TODO récupérer un $champ['help_mime_type']
319
                        // $champ['help_mime_type'] = 'application/pdf';
319
                        // $champ['help_mime_type'] = 'application/pdf';
320
                        $champ['help_mime_type'] = 'image.*';
320
                        $champ['help_mime_type'] = 'image.*';
321
                        $help_button = ' <div class="help-button help-' . $champ['key'] . ' btn btn-outline-info btn-sm border-0" data-key="' . $champ['key'] . '" data-name="' . $champ['name'] . '" data-mime-type="' . $champ['help_mime_type'] . '"><i class="fas fa-info-circle"></i></div>';
321
                        $help_button = ' <div class="help-button help-' . $champ['key'] . ' btn btn-outline-info btn-sm border-0" data-key="' . $champ['key'] . '" data-name="' . $champ['name'] . '" data-mime-type="' . $champ['help_mime_type'] . '"><i class="fas fa-info-circle"></i></div>';
322
                      }
322
                      }
323
 
323
 
324
                      if( $champ['mandatory'] ) {
324
                      if( $champ['mandatory'] ) {
325
                        // Attr required
325
                        // Attr required
326
                        $required  = ' required';
326
                        $required  = ' required';
327
                        // class="obligatoire"
327
                        // class="obligatoire"
328
                        $mandatory = ' obligatoire';
328
                        $mandatory = ' obligatoire';
329
                      }
329
                      }
330
 
330
 
331
                      if( 'date' === $champ['element'] ) {
331
                      if( 'date' === $champ['element'] ) {
332
                        $datepicker = ' date';
332
                        $datepicker = ' date';
333
                        $pattern    = ' pattern="(^(((0[1-9]|1[0-9]|2[0-8])[\/](0[1-9]|1[012]))|((29|30|31)[\/](0[13578]|1[02]))|((29|30)[\/](0[4,6,9]|11)))[\/](19|[2-9][0-9])\d\d$)|(^29[\/]02[\/](19|[2-9][0-9])(00|04|08|12|16|20|24|28|32|36|40|44|48|52|56|60|64|68|72|76|80|84|88|92|96)$)"';
333
                        $pattern    = ' pattern="(^(((0[1-9]|1[0-9]|2[0-8])[\/](0[1-9]|1[012]))|((29|30|31)[\/](0[13578]|1[02]))|((29|30)[\/](0[4,6,9]|11)))[\/](19|[2-9][0-9])\d\d$)|(^29[\/]02[\/](19|[2-9][0-9])(00|04|08|12|16|20|24|28|32|36|40|44|48|52|56|60|64|68|72|76|80|84|88|92|96)$)"';
334
                      }
334
                      }
335
 
335
 
336
                      switch( $champ['element'] ) {
336
                      switch( $champ['element'] ) {
337
                        case 'radio':
337
                        case 'radio':
338
                        case 'checkbox': ?>
338
                        case 'checkbox': ?>
339
                          <div class="control-group <?= $champ['element']; ?> mb-3"<?php echo $description . $required; ?>>
339
                          <div class="control-group <?= $champ['element']; ?> mb-3"<?php echo $description . $required; ?>>
340
                            <div class="col-sm-8 list-label<?php echo $help . $mandatory; ?>">
340
                            <div class="col-sm-8 list-label<?php echo $help . $mandatory; ?>">
341
                              <?= $champ['name'] . $help_button; ?>
341
                              <?= $champ['name'] . $help_button; ?>
342
                            </div>
342
                            </div>
343
                            <div class="col-sm-8">
343
                            <div class="col-sm-8">
344
 
344
 
345
                              <?php foreach ( $champ['fieldValues']['listValue'] as $i => $list_value ) : ?>
345
                              <?php foreach ( $champ['fieldValues']['listValue'] as $i => $list_value ) : ?>
346
 
346
 
347
                                  <?php
347
                                  <?php
348
                                    $checked = '';
348
                                    $checked = '';
349
                                    if ( '#' === substr( $list_value, -1 ) ) :
349
                                    if ( '#' === substr( $list_value, -1 ) ) :
350
                                      $checked = ' checked';
350
                                      $checked = ' checked';
351
                                      $list_value = substr( $list_value, 0, -1 );
351
                                      $list_value = substr( $list_value, 0, -1 );
352
                                    endif;
352
                                    endif;
353
                                  ?>
353
                                  ?>
354
 
354
 
355
                                  <?php if( 'other' !== $list_value ) : ?>
355
                                  <?php if( 'other' !== $list_value ) : ?>
356
                                    <label for="<?php echo $champ['fieldValues']['cleanListValue'][$i]; ?>" class="<?php echo $champ['fieldValues']['cleanListValue'][$i]; ?>">
356
                                    <label for="<?php echo $champ['fieldValues']['cleanListValue'][$i]; ?>" class="<?php echo $champ['fieldValues']['cleanListValue'][$i]; ?>">
357
                                      <input type="<?= $champ['element']; ?>" id="<?php echo $champ['fieldValues']['cleanListValue'][$i]; ?>" name="<?= $champ['key']; ?>" value="<?= $list_value; ?>"<?= $checked; ?> class="<?php echo $champ['fieldValues']['cleanListValue'][$i]; ?>" data-label="<?= $champ['name']; ?>">
357
                                      <input type="<?= $champ['element']; ?>" id="<?php echo $champ['fieldValues']['cleanListValue'][$i]; ?>" name="<?= $champ['key']; ?>" value="<?= $list_value; ?>"<?= $checked; ?> class="<?php echo $champ['fieldValues']['cleanListValue'][$i]; ?>" data-label="<?= $champ['name']; ?>">
358
                                      <?= $list_value; ?>
358
                                      <?= $list_value; ?>
359
                                    </label>
359
                                    </label>
360
                                  <?php else : ?>
360
                                  <?php else : ?>
361
                                    <label for="other-<?= $champ['key']; ?>">
361
                                    <label for="other-<?= $champ['key']; ?>">
362
                                      <input type="<?= $champ['element']; ?>" id="other-<?= $champ['key']; ?>" name="<?= $champ['key']; ?>" value="other" class="other" data-label="<?= $champ['name']; ?>" data-element="<?= $champ['element']; ?>">
362
                                      <input type="<?= $champ['element']; ?>" id="other-<?= $champ['key']; ?>" name="<?= $champ['key']; ?>" value="other" class="other" data-label="<?= $champ['name']; ?>" data-element="<?= $champ['element']; ?>">
363
                                      Autre
363
                                      Autre
364
                                    </label>
364
                                    </label>
365
                                  <?php endif; ?>
365
                                  <?php endif; ?>
366
 
366
 
367
                              <?php endforeach; ?>
367
                              <?php endforeach; ?>
368
 
368
 
369
                            </div>
369
                            </div>
370
                          </div>
370
                          </div>
371
                        <?php break;
371
                        <?php break;
372
 
372
 
373
                        case 'list-checkbox': ?>
373
                        case 'list-checkbox': ?>
374
                          <div class="multiselect <?php echo $champ['element'] . $help; ?>">
374
                          <div class="multiselect <?php echo $champ['element'] . $help; ?>">
375
                            <label class="col-sm-8<?= $mandatory; ?>"><?= $champ['name'] . $help_button; ?></label>
375
                            <label class="col-sm-8<?= $mandatory; ?>"><?= $champ['name'] . $help_button; ?></label>
376
                            <div class="control-group col-sm-8 mb-3">
376
                            <div class="control-group col-sm-8 mb-3">
377
                              <div class="selectBox">
377
                              <div class="selectBox">
378
                                <select class="form-control" id="list-checkbox-<?= $champ['key']; ?>"<?php echo $description . $required; ?> class="form-control">
378
                                <select class="form-control" id="list-checkbox-<?= $champ['key']; ?>"<?php echo $description . $required; ?> class="form-control">
379
                                  <option>Plusieurs choix possibles</option>
379
                                  <option>Plusieurs choix possibles</option>
380
                                </select>
380
                                </select>
381
                                <div class="overSelect"></div>
381
                                <div class="overSelect"></div>
382
                              </div>
382
                              </div>
383
                              <div class="checkboxes hidden">
383
                              <div class="checkboxes hidden">
384
                                <?php foreach ( $champ['fieldValues']['listValue'] as $i => $list_value ) : ?>
384
                                <?php foreach ( $champ['fieldValues']['listValue'] as $i => $list_value ) : ?>
385
 
385
 
386
                                  <?php
386
                                  <?php
387
                                    $checked = '';
387
                                    $checked = '';
388
                                    if ( '#' === substr( $list_value, -1 ) ) :
388
                                    if ( '#' === substr( $list_value, -1 ) ) :
389
                                      $checked = ' checked';
389
                                      $checked = ' checked';
390
                                      $list_value = substr( $list_value, 0, -1 );
390
                                      $list_value = substr( $list_value, 0, -1 );
391
                                    endif;
391
                                    endif;
392
                                  ?>
392
                                  ?>
393
 
393
 
394
                                  <?php if( 'other' !== $list_value ) : ?>
394
                                  <?php if( 'other' !== $list_value ) : ?>
395
                                    <label for="<?php echo $champ['fieldValues']['cleanListValue'][$i]; ?>">
395
                                    <label for="<?php echo $champ['fieldValues']['cleanListValue'][$i]; ?>">
396
                                      <input type="checkbox" id="<?php echo $champ['fieldValues']['cleanListValue'][$i]; ?>" name="<?= $champ['key']; ?>" value="<?= $list_value; ?>"<?= $checked; ?> class="<?php echo $champ['fieldValues']['cleanListValue'][$i]; ?>" data-label="<?= $champ['name']; ?>">
396
                                      <input type="checkbox" id="<?php echo $champ['fieldValues']['cleanListValue'][$i]; ?>" name="<?= $champ['key']; ?>" value="<?= $list_value; ?>"<?= $checked; ?> class="<?php echo $champ['fieldValues']['cleanListValue'][$i]; ?>" data-label="<?= $champ['name']; ?>">
397
                                      <?= $list_value; ?>
397
                                      <?= $list_value; ?>
398
                                    </label>
398
                                    </label>
399
                                  <?php else : ?>
399
                                  <?php else : ?>
400
                                    <label for="other-<?= $champ['key']; ?>">
400
                                    <label for="other-<?= $champ['key']; ?>">
401
                                      <input type="checkbox" id="other-<?= $champ['key']; ?>" name="<?= $champ['key']; ?>" value="other" class="other" data-label="<?= $champ['name']; ?>" data-element="<?= $champ['element']; ?>">
401
                                      <input type="checkbox" id="other-<?= $champ['key']; ?>" name="<?= $champ['key']; ?>" value="other" class="other" data-label="<?= $champ['name']; ?>" data-element="<?= $champ['element']; ?>">
402
                                      Autre
402
                                      Autre
403
                                    </label>
403
                                    </label>
404
                                  <?php endif; ?>
404
                                  <?php endif; ?>
405
 
405
 
406
                                <?php endforeach; ?>
406
                                <?php endforeach; ?>
407
 
407
 
408
                              </div>
408
                              </div>
409
                            </div>
409
                            </div>
410
                          </div>
410
                          </div>
411
                        <?php break;
411
                        <?php break;
412
 
412
 
413
                        case 'select': ?>
413
                        case 'select': ?>
414
                          <label for="<?= $champ['key']; ?>" class="col-sm-8<?= $mandatory; ?>"<?= $description; ?>><?= $champ['name'] . $help_button; ?></label>
414
                          <label for="<?= $champ['key']; ?>" class="col-sm-8<?= $mandatory; ?>"<?= $description; ?>><?= $champ['name'] . $help_button; ?></label>
415
                          <div class="champ col-sm-8 mb-3">
415
                          <div class="champ col-sm-8 mb-3">
416
                            <div class="select-wrapper add-field-select <?php echo $champ['element'] . $help; ?>">
416
                            <div class="select-wrapper add-field-select <?php echo $champ['element'] . $help; ?>">
417
                              <select name="<?= $champ['key']; ?>" id="<?= $champ['key']; ?>" class="<?= $champ['key']; ?> form-control"<?= $required; ?> data-label="<?= $champ['name']; ?>">
417
                              <select name="<?= $champ['key']; ?>" id="<?= $champ['key']; ?>" class="<?= $champ['key']; ?> form-control"<?= $required; ?> data-label="<?= $champ['name']; ?>">
418
 
418
 
419
                                <?php foreach ( $champ['fieldValues']['listValue'] as $list_value ) : ?>
419
                                <?php foreach ( $champ['fieldValues']['listValue'] as $list_value ) : ?>
420
 
420
 
421
                                  <?php
421
                                  <?php
422
                                    $selected = '';
422
                                    $selected = '';
423
                                    if ( '#' === substr( $list_value, -1 ) ) :
423
                                    if ( '#' === substr( $list_value, -1 ) ) :
424
                                      $selected = ' selected="selected"';
424
                                      $selected = ' selected="selected"';
425
                                      $list_value = substr( $list_value, 0, -1 );
425
                                      $list_value = substr( $list_value, 0, -1 );
426
                                    endif;
426
                                    endif;
427
                                  ?>
427
                                  ?>
428
 
428
 
429
                                  <?php if( 'other' !== $list_value ) : ?>
429
                                  <?php if( 'other' !== $list_value ) : ?>
430
                                    <option value="<?= $list_value; ?>"<?= $selected; ?>>
430
                                    <option value="<?= $list_value; ?>"<?= $selected; ?>>
431
                                      <?php echo ucfirst( $list_value ); ?>
431
                                      <?php echo ucfirst( $list_value ); ?>
432
                                    </option>
432
                                    </option>
433
                                  <?php else : ?>
433
                                  <?php else : ?>
434
                                    <option class="other form-control is-select" value="other" data-element="<?= $champ['element']; ?>">Autre</option>
434
                                    <option class="other form-control is-select" value="other" data-element="<?= $champ['element']; ?>">Autre</option>
435
                                  <?php endif; ?>
435
                                  <?php endif; ?>
436
 
436
 
437
                                <?php endforeach; ?>
437
                                <?php endforeach; ?>
438
 
438
 
439
                              </select>
439
                              </select>
440
                            </div>
440
                            </div>
441
                          </div>
441
                          </div>
442
                        <?php break;
442
                        <?php break;
443
 
443
 
444
                        case 'file' : ?>
444
                        case 'file' : ?>
445
                          <div class="control-group col-sm-8 mb-3">
445
                          <div class="control-group col-sm-8 mb-3">
446
                            <div class="input-file-container<?= $help; ?>">
446
                            <div class="input-file-container<?= $help; ?>">
447
                              <input type="<?= $champ['element']; ?>" name="<?= $champ['key']; ?>" class="<?php echo $champ['key'] . ' input-file'; ?> form-control" <?php echo $description . $placeholder . $required; ?>  accept="application/pdf, image/*, video/*" data-label="<?= $champ['name']; ?>">
447
                              <input type="<?= $champ['element']; ?>" name="<?= $champ['key']; ?>" class="<?php echo $champ['key'] . ' input-file'; ?> form-control" <?php echo $description . $placeholder . $required; ?>  accept="application/pdf, image/*, video/*" data-label="<?= $champ['name']; ?>">
448
                              <label for="<?= $champ['key']; ?>" class="label-file<?= $mandatory; ?>" <?= $description; ?>><i class="fas fa-download" aria-hidden="true"></i> <?= $champ['name']; ?></label>
448
                              <label for="<?= $champ['key']; ?>" class="label-file<?= $mandatory; ?>" <?= $description; ?>><i class="fas fa-download" aria-hidden="true"></i> <?= $champ['name']; ?></label>
449
 
449
 
450
                              <?php if ( !$champ['mandatory'] ) : ?>
450
                              <?php if ( !$champ['mandatory'] ) : ?>
451
                                <div class="remove-file button" name="remove-file" title="Supprimer le fichier"><i class="fas fa-times" aria-hidden="true"></i></div>
451
                                <div class="remove-file button" name="remove-file" title="Supprimer le fichier"><i class="fas fa-times" aria-hidden="true"></i></div>
452
                              <?php endif; ?>
452
                              <?php endif; ?>
453
 
453
 
454
                            </div>
454
                            </div>
455
                          </div>
455
                          </div>
456
                        <?php break;
456
                        <?php break;
457
 
457
 
458
                        case 'textarea': ?>
458
                        case 'textarea': ?>
459
                          <div class="control-group">
459
                          <div class="control-group">
460
                            <label for="<?= $champ['key']; ?>" class="col-sm-8<?php echo $help . $mandatory; ?>" <?= $description; ?>><?= $champ['name'] . $help_button; ?></label>
460
                            <label for="<?= $champ['key']; ?>" class="col-sm-8<?php echo $help . $mandatory; ?>" <?= $description; ?>><?= $champ['name'] . $help_button; ?></label>
461
                            <div class="col-sm-8 mb-3">
461
                            <div class="col-sm-8 mb-3">
462
                              <textarea type="<?= $champ['element']; ?>" id="<?= $champ['key']; ?>" name="<?= $champ['key']; ?>" class="<?= $champ['key'] . $help; ?> form-control" <?php echo $description . $placeholder . $required; ?> data-label="<?= $champ['name']; ?>"></textarea>
462
                              <textarea type="<?= $champ['element']; ?>" id="<?= $champ['key']; ?>" name="<?= $champ['key']; ?>" class="<?= $champ['key'] . $help; ?> form-control" <?php echo $description . $placeholder . $required; ?> data-label="<?= $champ['name']; ?>"></textarea>
463
                            </div>
463
                            </div>
464
                          </div>
464
                          </div>
465
                        <?php break;
465
                        <?php break;
466
 
466
 
467
                        case 'range': ?>
467
                        case 'range': ?>
468
                          <div class="control-group">
468
                          <div class="control-group">
469
                            <label for="<?= $champ['key']; ?>" class="col-sm-8<?= $help . $mandatory; ?>" <?= $description; ?>><?= $champ['name'] . $help_button; ?></label>
469
                            <label for="<?= $champ['key']; ?>" class="col-sm-8<?= $help . $mandatory; ?>" <?= $description; ?>><?= $champ['name'] . $help_button; ?></label>
470
                            <div class="col-sm-8 mb-3">
470
                            <div class="col-sm-8 mb-3">
471
                              <input type="<?= $champ['element']; ?>" name="<?= $champ['key']; ?>" class="<?= $champ['key'] . $help; ?> form-control" <?php echo $description . $placeholder . $step . $default . $min . $max . $required; ?> data-label="<?= $champ['name']; ?>">
471
                              <input type="<?= $champ['element']; ?>" name="<?= $champ['key']; ?>" class="<?= $champ['key'] . $help; ?> form-control" <?php echo $description . $placeholder . $step . $default . $min . $max . $required; ?> data-label="<?= $champ['name']; ?>">
472
                            </div>
472
                            </div>
473
                          </div>
473
                          </div>
474
                          <?php break;
474
                          <?php break;
475
 
475
 
476
                        case 'number':
476
                        case 'number':
477
                        case 'date': ?>
477
                        case 'date': ?>
478
                          <div class="control-group">
478
                          <div class="control-group">
479
                            <label for="<?= $champ['key']; ?>" class="col-sm-8<?php echo $datepicker . $mandatory; ?>" <?= $description; ?>><?= $champ['name'] . $help_button; ?></label>
479
                            <label for="<?= $champ['key']; ?>" class="col-sm-8<?php echo $datepicker . $mandatory; ?>" <?= $description; ?>><?= $champ['name'] . $help_button; ?></label>
480
                            <div class="col-sm-8 mb-3">
480
                            <div class="col-sm-8 mb-3">
481
                              <input type="<?= $champ['element']; ?>" name="<?= $champ['key']; ?>" class="<?= $champ['key'] . $help . $datepicker; ?> form-control"<?php echo  $pattern . $description . $placeholder . $step . $default . $min . $max . $required; ?> data-label="<?= $champ['name']; ?>">
481
                              <input type="<?= $champ['element']; ?>" name="<?= $champ['key']; ?>" class="<?= $champ['key'] . $help . $datepicker; ?> form-control"<?php echo  $pattern . $description . $placeholder . $step . $default . $min . $max . $required; ?> data-label="<?= $champ['name']; ?>">
482
                            </div>
482
                            </div>
483
                          </div>
483
                          </div>
484
                          <?php break;
484
                          <?php break;
485
 
485
 
486
                        case 'text' :
486
                        case 'text' :
487
                        case 'email':
487
                        case 'email':
488
                        default: ?>
488
                        default: ?>
489
                          <div class="control-group">
489
                          <div class="control-group">
490
                            <label for="<?= $champ['key']; ?>" class="col-sm-8<?= $mandatory; ?>" <?= $description; ?>><?= $champ['name'] . $help_button; ?></label>
490
                            <label for="<?= $champ['key']; ?>" class="col-sm-8<?= $mandatory; ?>" <?= $description; ?>><?= $champ['name'] . $help_button; ?></label>
491
                            <div class="col-sm-8 mb-3">
491
                            <div class="col-sm-8 mb-3">
492
                              <input type="<?= $champ['element']; ?>" name="<?= $champ['key']; ?>" class="<?= $champ['key'] . $help; ?> form-control" <?php echo $description . $placeholder . $required; ?> data-label="<?= $champ['name']; ?>">
492
                              <input type="<?= $champ['element']; ?>" name="<?= $champ['key']; ?>" class="<?= $champ['key'] . $help; ?> form-control" <?php echo $description . $placeholder . $required; ?> data-label="<?= $champ['name']; ?>">
493
                            </div>
493
                            </div>
494
                          </div>
494
                          </div>
495
                        <?php break;
495
                        <?php break;
496
                      }
496
                      }
497
                    ?>
497
                    ?>
498
 
498
 
499
                  <?php endforeach; ?>
499
                  <?php endforeach; ?>
500
                </div>
500
                </div>
501
              </div>
501
              </div>
502
            </form>
502
            </form>
503
          <?php endif; ?><!-- Fin champs supplémentaires -->
503
          <?php endif; ?><!-- Fin champs supplémentaires -->
504
 
504
 
505
          <div id="image" class="row"></div>
505
          <div id="image" class="row"></div>
506
        </div>
506
        </div>
507
 
507
 
508
        <!-- Bouton cr&ation d'une obs -->
508
        <!-- Bouton cr&ation d'une obs -->
509
        <div class="row mb-3 bloc-bottom">
509
        <div class="row mb-3 bloc-bottom">
510
          <div class="centre" title="Une fois les champs remplis, vous pouvez cliquer sur ce bouton pour
510
          <div class="centre" title="Une fois les champs remplis, vous pouvez cliquer sur ce bouton pour
511
              ajouter votre observation à la liste à transmettre.">
511
              ajouter votre observation à la liste à transmettre.">
512
            <a id="ajouter-obs" class="btn btn-primary">
512
            <a id="ajouter-obs" class="btn btn-primary">
513
              <i class="fas fa-check-square"></i> Créer
513
              <i class="fas fa-check-square"></i> Créer
514
            </a>
514
            </a>
515
          </div>
515
          </div>
516
        </div>
516
        </div>
517
 
517
 
518
        <!-- Messages d'erreur du formulaire-->
518
        <!-- Messages d'erreur du formulaire-->
519
        <div class="row">
519
        <div class="row">
520
          <div class="zone-alerte">
520
          <div class="zone-alerte">
521
            <div id="dialogue-bloquer-creer-obs" class="alert alert-warning alert-block hidden">
521
            <div id="dialogue-bloquer-creer-obs" class="alert alert-warning alert-block hidden">
522
              <a class="close">×</a>
522
              <a class="close">×</a>
523
              <h4 class="alert-heading">Information : 10 observations maximum</h4>
523
              <h4 class="alert-heading">Information : 10 observations maximum</h4>
524
              <p>
524
              <p>
525
                Vous venez d'ajouter votre 10ème observation.<br/>
525
                Vous venez d'ajouter votre 10ème observation.<br/>
526
                Pour en ajouter de nouvelles, il est nécessaire de les transmettre en cliquant sur le bouton ci-dessous.
526
                Pour en ajouter de nouvelles, il est nécessaire de les transmettre en cliquant sur le bouton ci-dessous.
527
              </p>
527
              </p>
528
            </div>
528
            </div>
529
          </div>
529
          </div>
530
          <div class="zone-alerte">
530
          <div class="zone-alerte">
531
            <div id="dialogue-form-invalide" class="alert alert-warning alert-block hidden">
531
            <div id="dialogue-form-invalide" class="alert alert-warning alert-block hidden">
532
              <a class="close">×</a>
532
              <a class="close">×</a>
533
              <h4 class="alert-heading">Information : champs en erreur</h4>
533
              <h4 class="alert-heading">Information : champs en erreur</h4>
534
              <p>
534
              <p>
535
                Certains champs du formulaire sont mal remplis.<br/>
535
                Certains champs du formulaire sont mal remplis.<br/>
536
                Veuillez vérifier vos données.
536
                Veuillez vérifier vos données.
537
              </p>
537
              </p>
538
            </div>
538
            </div>
539
          </div>
539
          </div>
540
        </div>
540
        </div>
541
 
541
 
542
        <!-- Affiche le tableau récapitualif des observations ajoutées -->
542
        <!-- Affiche le tableau récapitualif des observations ajoutées -->
543
        <div id="zone-liste-obs" class="hidden">
543
        <div id="zone-liste-obs" class="hidden">
544
          <div class="alert alert-info">
544
          <div class="alert alert-info">
545
            <h2 class="transmission-title"><strong>Observations à transmettre : <span class="obs-nbre badge badge-info">0</span></strong></h2>
545
            <h2 class="transmission-title"><strong>Observations à transmettre : <span class="obs-nbre badge badge-info">0</span></strong></h2>
546
            <button id="transmettre-obs" class="btn btn-primary droite" disabled="disabled"
546
            <button id="transmettre-obs" class="btn btn-primary droite" disabled="disabled"
547
              title="Ajoute les observations ci-dessous à votre Carnet en Ligne et les rend publiques." type="button">
547
              title="Ajoute les observations ci-dessous à votre Carnet en Ligne et les rend publiques." type="button">
548
              Transmettre
548
              Transmettre
549
            </button>
549
            </button>
550
          </div>
550
          </div>
551
          <div id="liste-obs" ></div>
551
          <div id="liste-obs" ></div>
552
          <div class="row">
552
          <div class="row">
553
            <div class="zone-alerte">
553
            <div class="zone-alerte">
554
              <div id="dialogue-zero-obs" class="alert alert-block hidden">
554
              <div id="dialogue-zero-obs" class="alert alert-block hidden">
555
                <a class="close">×</a>
555
                <a class="close">×</a>
556
                <h4 class="alert-heading">Attention : aucune observation</h4>
556
                <h4 class="alert-heading">Attention : aucune observation</h4>
557
                <p>Veuillez saisir des observations pour les transmettre.</p>
557
                <p>Veuillez saisir des observations pour les transmettre.</p>
558
              </div>
558
              </div>
559
              <div id="dialogue-obs-transaction-ok" class="alert alert-success alert-block hidden">
559
              <div id="dialogue-obs-transaction-ok" class="alert alert-success alert-block hidden">
560
                <a class="close">×</a>
560
                <a class="close">×</a>
561
                <h4 class="alert-heading">Information : transmission des observations</h4>
561
                <h4 class="alert-heading">Information : transmission des observations</h4>
562
                <div class="alert-txt"></div>
562
                <div class="alert-txt"></div>
563
              </div>
563
              </div>
564
              <div id="dialogue-obs-transaction-ko" class="alert alert-error alert-block hidden">
564
              <div id="dialogue-obs-transaction-ko" class="alert alert-error alert-block hidden">
565
                <a class="close">×</a>
565
                <a class="close">×</a>
566
                <h4 class="alert-heading">Erreur : transmission des observations</h4>
566
                <h4 class="alert-heading">Erreur : transmission des observations</h4>
567
                <div class="alert-txt"></div>
567
                <div class="alert-txt"></div>
568
              </div>
568
              </div>
569
            </div>
569
            </div>
570
          </div>
570
          </div>
571
        </div>
571
        </div>
572
 
572
 
573
        <!-- Fenêtres modales -->
573
        <!-- Fenêtres modales -->
574
        <div id="chargement" class="modal-fenetre hidden">
574
        <div id="chargement" class="modal-fenetre hidden">
575
          <div id="chargement-centrage" class="modal-contenu">
575
          <div id="chargement-centrage" class="modal-contenu">
576
            <div class="progress progress-striped active">
576
            <div class="progress progress-striped active">
577
              <div id="barre-progression-upload" class="bar" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="10" style="">
577
              <div id="barre-progression-upload" class="bar" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="10" style="">
578
                  <span class="sr-only">0/10 observations transmises</span>
578
                  <span class="sr-only">0/10 observations transmises</span>
579
                </div>
579
                </div>
580
            </div>
580
            </div>
581
            <p id="chargement-txt" style="color:white;font-size:1.5em;">
581
            <p id="chargement-txt" style="color:white;font-size:1.5em;">
582
              Transfert des observations en cours...<br />
582
              Transfert des observations en cours...<br />
583
              Cela peut prendre plusieurs minutes en fonction de la taille des images et du nombre
583
              Cela peut prendre plusieurs minutes en fonction de la taille des images et du nombre
584
              d'observations à transférer.
584
              d'observations à transférer.
585
            </p>
585
            </p>
586
          </div>
586
          </div>
587
        </div>
587
        </div>
588
 
588
 
589
        <!-- Templates HTML -->
589
        <!-- Templates HTML -->
590
        <div id="tpl-transmission-ok" class="hidden">
590
        <div id="tpl-transmission-ok" class="hidden">
591
          <p class="msg">
591
          <p class="msg">
592
            Vos observations ont bien été transmises.<br />
592
            Vos observations ont bien été transmises.<br />
593
            Elles sont désormais consultables à travers les différents outils de visualisation
593
            Elles sont désormais consultables à travers les différents outils de visualisation
594
            du réseau (<a href="https://www.tela-botanica.org/site:botanique">eFlore</a>,
594
            du réseau (<a href="https://www.tela-botanica.org/site:botanique">eFlore</a>,
595
            <a href="https://www.tela-botanica.org/appli:pictoflora">galeries d'images</a>,
595
            <a href="https://www.tela-botanica.org/appli:pictoflora">galeries d'images</a>,
596
            <a href="https://www.tela-botanica.org/appli:identiplante">identiplante</a>,
596
            <a href="https://www.tela-botanica.org/appli:identiplante">identiplante</a>,
597
            <a href="https://www.tela-botanica.org/widget:cel:cartoPoint">cartographie (widget)</a>...)<br />
597
            <a href="https://www.tela-botanica.org/widget:cel:cartoPoint">cartographie (widget)</a>...)<br />
598
            Si vous souhaitez les modifier ou les supprimer, vous pouvez les retrouver en vous
598
            Si vous souhaitez les modifier ou les supprimer, vous pouvez les retrouver en vous
599
            connectant à votre <a href="https://www.tela-botanica.org/appli:cel">Carnet en ligne</a>.<br />
599
            connectant à votre <a href="https://www.tela-botanica.org/appli:cel">Carnet en ligne</a>.<br />
600
            N'oubliez pas qu'il est nécessaire de
600
            N'oubliez pas qu'il est nécessaire de
601
            <a href="https://beta.tela-botanica.org/test/page:inscription">s'inscrire à Tela Botanica</a>
601
            <a href="https://beta.tela-botanica.org/test/page:inscription">s'inscrire à Tela Botanica</a>
602
            au préalable, si ce n'est pas déjà fait.
602
            au préalable, si ce n'est pas déjà fait.
603
          </p>
603
          </p>
604
        </div>
604
        </div>
605
        <div id="tpl-transmission-ko" class="hidden">
605
        <div id="tpl-transmission-ko" class="hidden">
606
          <p class="msg">
606
          <p class="msg">
607
            Une erreur est survenue lors de la transmission d'une observation (indiquée en rouge).<br />
607
            Une erreur est survenue lors de la transmission d'une observation (indiquée en rouge).<br />
608
            Vous pouvez tenter de la retransmettre en cliquant à nouveau sur le bouton transmettre ou bien la supprimer
608
            Vous pouvez tenter de la retransmettre en cliquant à nouveau sur le bouton transmettre ou bien la supprimer
609
            et transmettre les suivantes.<br />
609
            et transmettre les suivantes.<br />
610
            Néanmoins, les observations n'apparaissant plus dans la liste "observations à transmettre", ont bien été transmises lors de votre précédente tentative. <br />
610
            Néanmoins, les observations n'apparaissant plus dans la liste "observations à transmettre", ont bien été transmises lors de votre précédente tentative. <br />
611
            Si le problème persiste, vous pouvez signaler le dysfonctionnement sur
611
            Si le problème persiste, vous pouvez signaler le dysfonctionnement sur
612
            <a href="<?= $url_remarques; ?>?service=cel&pageSource=<?php echo urlencode( 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'].'?'.$_SERVER['QUERY_STRING'] ); ?>" target="_blank"
612
            <a href="<?= $url_remarques; ?>?service=cel&pageSource=<?php echo urlencode( 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'].'?'.$_SERVER['QUERY_STRING'] ); ?>" target="_blank"
613
              onclick="
613
              onclick="
614
                javascript: window.open( this.getAttribute( 'href' ), 'Tela Botanica - Remarques', config = 'height=700, width=640, scrollbars=yes, resizable=yes' );
614
                javascript: window.open( this.getAttribute( 'href' ), 'Tela Botanica - Remarques', config = 'height=700, width=640, scrollbars=yes, resizable=yes' );
615
                return false;
615
                return false;
616
              "
616
              "
617
            >le formulaire de signalement d'erreurs</a>.
617
            >le formulaire de signalement d'erreurs</a>.
618
          </p>
618
          </p>
619
        </div>
619
        </div>
620
 
620
 
621
        <footer>
621
        <footer>
622
          <div class="row centre component-tools-item-link">
622
          <div class="row centre component-tools-item-link">
623
            <a href="https://www.tela-botanica.org/appli:cel" target="" class="mr-1" style="color: #e16e37">
623
            <a href="https://www.tela-botanica.org/appli:cel" target="" class="mr-1" style="color: #e16e37">
624
              <span>Gestion</span>
624
              <span>Gestion</span>
625
            </a>
625
            </a>
626
            <a href="https://www.tela-botanica.org/widget:cel:cartoPoint?projet=<?= $widget['projet']; ?>" target="" class="mr-2" style="color: #918a6f">
626
            <a href="https://www.tela-botanica.org/widget:cel:cartoPoint?projet=<?= $widget['projet']; ?>" target="" class="mr-2" style="color: #918a6f">
627
              <span>Carto</span>
627
              <span>Carto</span>
628
            </a>
628
            </a>
629
            <a href="https://www.tela-botanica.org/widget:cel:photo?projet=<?= $widget['projet']; ?>" target="" class="mr-2" style="color: #964e75">
629
            <a href="https://www.tela-botanica.org/widget:cel:photo?projet=<?= $widget['projet']; ?>" target="" class="mr-2" style="color: #964e75">
630
              <span>Photo</span>
630
              <span>Photo</span>
631
            </a>
631
            </a>
632
            <a href="https://www.tela-botanica.org/widget:cel:observation?projet=<?= $widget['projet']; ?>" target="" class="mr-2" style="color: #b2cb43">
632
            <a href="https://www.tela-botanica.org/widget:cel:observation?projet=<?= $widget['projet']; ?>" target="" class="mr-2" style="color: #b2cb43">
633
              <span>Observation</span>
633
              <span>Observation</span>
634
            </a>
634
            </a>
635
            <a href="https://www.tela-botanica.org/widget:cel:export?projet=<?= $widget['projet']; ?>" target="" class="mr-2" style="color: #009fb8">
635
            <a href="https://www.tela-botanica.org/widget:cel:export?projet=<?= $widget['projet']; ?>" target="" class="mr-2" style="color: #009fb8">
636
              <span>Export</span>
636
              <span>Export</span>
637
            </a>
637
            </a>
638
            <a href="https://www.tela-botanica.org/appli:pictoflora?projet=<?= $widget['projet']; ?>" target="" class="mr-2" style="color: #927fa2">
638
            <a href="https://www.tela-botanica.org/appli:pictoflora?projet=<?= $widget['projet']; ?>" target="" class="mr-2" style="color: #927fa2">
639
              <span>PictoFlora</span>
639
              <span>PictoFlora</span>
640
            </a>
640
            </a>
641
            <a href="https://www.tela-botanica.org/appli:identiplante?projet=<?= $widget['projet']; ?>" target="" style="color: #f25a52">
641
            <a href="https://www.tela-botanica.org/appli:identiplante?projet=<?= $widget['projet']; ?>" target="" style="color: #f25a52">
642
              <span>IdentiPlante</span>
642
              <span>IdentiPlante</span>
643
            </a>
643
            </a>
644
          </div>
644
          </div>
645
        </footer>
645
        </footer>
646
      </div>
646
      </div>
647
    </div>
647
    </div>
648
    <div id="help-modal" class="modal fade" tabindex="-1" role="dialog" aria-labelledby="help-modal-label" style="display: none;" aria-hidden="true">
648
    <div id="help-modal" class="modal fade" tabindex="-1" role="dialog" aria-labelledby="help-modal-label" style="display: none;" aria-hidden="true">
649
      <div class="modal-dialog modal-dialog-centered" role="document">
649
      <div class="modal-dialog modal-dialog-centered" role="document">
650
        <div class="modal-content">
650
        <div class="modal-content">
651
          <div class="modal-header">
651
          <div class="modal-header">
652
            <h5 class="modal-title" id="help-modal-label"></h5>
652
            <h5 class="modal-title" id="help-modal-label"></h5>
653
            <button type="button" class="close" data-dismiss="modal" aria-label="Close">
653
            <button type="button" class="close" data-dismiss="modal" aria-label="Close">
654
              <span aria-hidden="true">&times;</span>
654
              <span aria-hidden="true">&times;</span>
655
            </button>
655
            </button>
656
          </div>
656
          </div>
657
          <div class="modal-body" id="print_content"></div>
657
          <div class="modal-body" id="print_content"></div>
658
          <div class="modal-footer">
658
          <div class="modal-footer">
659
            <button type="button" class="btn btn-secondary" data-dismiss="modal">Fermer</button>
659
            <button type="button" class="btn btn-secondary" data-dismiss="modal">Fermer</button>
660
          </div>
660
          </div>
661
        </div>
661
        </div>
662
      </div>
662
      </div>
663
    </div>
663
    </div>
664
    <!-- carto -->
664
    <!-- carto -->
665
     <script type="text/javascript" src="<?= $url_base; ?>modules/saisie2/squelettes/js/tb-geoloc/tb-geoloc-custom-element.js"></script>
665
     <script type="text/javascript" src="<?= $url_base; ?>modules/saisie2/squelettes/js/tb-geoloc/tb-geoloc-custom-element.js"></script>
666
     <script>
666
     <script>
667
	    var tbGeolocation = document.getElementById('tb-geolocation');
667
	    var tbGeolocation = document.getElementById('tb-geolocation');
668
	    tbGeolocation.addEventListener("location", function(location) {
668
	    tbGeolocation.addEventListener("location", function(location) {
669
	  		console.log(location.detail);
669
	  		console.log(location.detail);
670
	    });
670
	    });
671
	</script>
671
	</script>
672
    
672
    
673
    <!-- Jquery -->
673
    <!-- Jquery -->
674
    <script type="text/javascript" src="https://resources.tela-botanica.org/jquery/1.11.1/jquery-1.11.1.min.js"></script>
674
    <script type="text/javascript" src="https://resources.tela-botanica.org/jquery/1.11.1/jquery-1.11.1.min.js"></script>
675
 
675
 
676
    <!-- Jquery UI : nécessaire pour le minicalendrier et l'auto-complétion -->
676
    <!-- Jquery UI : nécessaire pour le minicalendrier et l'auto-complétion -->
677
    <script type="text/javascript" src="https://resources.tela-botanica.org/jquery/jquery-ui/1.11.0/js/jquery-ui.min.js"></script>
677
    <script type="text/javascript" src="https://resources.tela-botanica.org/jquery/jquery-ui/1.11.0/js/jquery-ui.min.js"></script>
678
    <script type="text/javascript" src="https://resources.tela-botanica.org/jquery/jquery-ui/1.11.0/js/datepicker-fr.js"></script>
678
    <script type="text/javascript" src="https://resources.tela-botanica.org/jquery/jquery-ui/1.11.0/js/datepicker-fr.js"></script>
679
    <!-- Jquery Plugins -->
679
    <!-- Jquery Plugins -->
680
    <!-- Jquery Validate : nécessaire pour la validation des formulaires -->
680
    <!-- Jquery Validate : nécessaire pour la validation des formulaires -->
681
    <script type="text/javascript" src="https://resources.tela-botanica.org/jquery/validate/1.11.1/jquery.validate.min.js"></script>
681
    <script type="text/javascript" src="https://resources.tela-botanica.org/jquery/validate/1.11.1/jquery.validate.min.js"></script>
682
    <script type="text/javascript" src="https://resources.tela-botanica.org/jquery/validate/1.11.1/additional-methods.min.js"></script>
682
    <script type="text/javascript" src="https://resources.tela-botanica.org/jquery/validate/1.11.1/additional-methods.min.js"></script>
683
    <script type="text/javascript" src="https://resources.tela-botanica.org/jquery/validate/1.11.1/messages_fr.js"></script>
683
    <script type="text/javascript" src="https://resources.tela-botanica.org/jquery/validate/1.11.1/messages_fr.js"></script>
684
    <!-- Jquery Form :nécessaire pour l'upload des images -->
684
    <!-- Jquery Form :nécessaire pour l'upload des images -->
685
    <script type="text/javascript" src="https://resources.tela-botanica.org/jquery/form/3.51/jquery.form.min.js"></script>
685
    <script type="text/javascript" src="https://resources.tela-botanica.org/jquery/form/3.51/jquery.form.min.js"></script>
686
    <!-- Bootstrap -->
686
    <!-- Bootstrap -->
687
    <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js" integrity="sha384-ChfqqxuZUCnJSK3+MXmPNIyE6ZbWh2IMqE241rYiqJxyMiZ6OW/JmZQ5stwEULTy" crossorigin="anonymous"></script>
687
    <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js" integrity="sha384-ChfqqxuZUCnJSK3+MXmPNIyE6ZbWh2IMqE241rYiqJxyMiZ6OW/JmZQ5stwEULTy" crossorigin="anonymous"></script>
688
    <!-- Authentification -->
688
    <!-- Authentification -->
689
    <script type="text/javascript" src="<?= $url_base; ?>modules/saisie2/squelettes/js/auth.js"></script>
689
    <script type="text/javascript" src="<?= $url_base; ?>modules/saisie2/squelettes/js/auth.js"></script>
690
    <!-- Connexion, bloc de prévisualisation, date -->
690
    <!-- Connexion, bloc de prévisualisation, date -->
691
    <script type="text/javascript" src="<?= $url_base; ?>modules/saisie2/squelettes/js/WidgetSaisie.js"></script>
691
    <script type="text/javascript" src="<?= $url_base; ?>modules/saisie2/squelettes/js/WidgetSaisie.js"></script>
692
    <script type="text/javascript" src="<?= $url_base; ?>modules/saisie2/squelettes/js/champs-supp.js"></script>
692
    <script type="text/javascript" src="<?= $url_base; ?>modules/saisie2/squelettes/js/champs-supp.js"></script>
693
    <script type="text/javascript">
693
    <script type="text/javascript">
694
      //<![CDATA[
694
      //<![CDATA[
695
        $( document ).ready( function() {
695
        $( document ).ready( function() {
696
 
696
 
697
          // OMG un modèle objet !!
697
          // OMG un modèle objet !!
698
          var widget = new WidgetSaisie();
698
          var widget = new WidgetSaisie();
699
 
699
 
700
          //
700
          //
701
          //
701
          //
702
          //
702
          //
703
          // La présence du parametre 'debug' dans l'URL enclenche le débogage
703
          // La présence du parametre 'debug' dans l'URL enclenche le débogage
704
          widget.debug = <?= isset( $_GET['debug'] ) ? 'true' : 'false'; ?>;
704
          widget.debug = <?= isset( $_GET['debug'] ) ? 'true' : 'false'; ?>;
705
          // La présence du parametre 'html5' dans l'URL enclenche les fonctions avancées HTML5
705
          // La présence du parametre 'html5' dans l'URL enclenche les fonctions avancées HTML5
706
          widget.html5 = <?= isset($_GET['html5']) ? 'true' : 'false'; ?>;
706
          widget.html5 = <?= isset($_GET['html5']) ? 'true' : 'false'; ?>;
707
          // Mot-clé du widget/projet
707
          // Mot-clé du widget/projet
708
          widget.tagProjet = "WidgetSaisie";
708
          widget.tagProjet = "WidgetSaisie";
709
          // Mots-clés à ajouter aux images
709
          // Mots-clés à ajouter aux images
710
          widget.tagImg = "<?= isset($_GET['tag-img']) ? $_GET['tag-img'] : ''; ?>";
710
          widget.tagImg = "<?= isset($_GET['tag-img']) ? $_GET['tag-img'] : ''; ?>";
711
          widget.separationTagImg = "<?= isset($_GET['motcle']) && isset($_GET['tag-img']) ? ',' : ''; ?>";
711
          widget.separationTagImg = "<?= isset($_GET['motcle']) && isset($_GET['tag-img']) ? ',' : ''; ?>";
712
          widget.tagImg = <?= isset($_GET['motcle']) ? "'".$_GET['motcle']."' + widget.separationTagImg + widget.tagImg" : 'widget.tagImg'; ?>;
712
          widget.tagImg = <?= isset($_GET['motcle']) ? "'".$_GET['motcle']."' + widget.separationTagImg + widget.tagImg" : 'widget.tagImg'; ?>;
713
          // Mots-clés à ajouter aux observations
713
          // Mots-clés à ajouter aux observations
714
          widget.tagObs = "<?= isset($_GET['tag-obs']) ? $_GET['tag-obs'] : ''; ?>";
714
          widget.tagObs = "<?= isset($_GET['tag-obs']) ? $_GET['tag-obs'] : ''; ?>";
715
          widget.separationTagObs = "<?= isset($_GET['projet']) && isset($_GET['tag-obs']) ? ',' : ''; ?>";
715
          widget.separationTagObs = "<?= isset($_GET['projet']) && isset($_GET['tag-obs']) ? ',' : ''; ?>";
716
          widget.tagObs = <?= isset($_GET['projet']) ? "'".$_GET['projet']."' + widget.separationTagObs + widget.tagObs" : 'widget.tagObs'; ?>;
716
          widget.tagObs = <?= isset($_GET['projet']) ? "'".$_GET['projet']."' + widget.separationTagObs + widget.tagObs" : 'widget.tagObs'; ?>;
717
          // Précharger le formulaire avec les infos d'une observation
717
          // Précharger le formulaire avec les infos d'une observation
718
          widget.obsId = "<?=isset($_GET['id-obs']) ? $_GET['id-obs'] : ''?>";
718
          widget.obsId = "<?=isset($_GET['id-obs']) ? $_GET['id-obs'] : ''?>";
719
          // URL du web service réalisant l'insertion des données dans la base du CEL.
719
          // URL du web service réalisant l'insertion des données dans la base du CEL.
720
          widget.serviceSaisieUrl = "<?=$url_ws_saisie?>";
720
          widget.serviceSaisieUrl = "<?=$url_ws_saisie?>";
721
          // URL du web service permettant de récupérer les infos d'une observation du CEL.
721
          // URL du web service permettant de récupérer les infos d'une observation du CEL.
722
          widget.serviceObsUrl = "<?=$url_ws_obs?>";
722
          widget.serviceObsUrl = "<?=$url_ws_obs?>";
723
          //
723
          //
724
          //
724
          //
725
          //
725
          //
726
 
726
 
727
          // langue
727
          // langue
728
          widget.langue = "<?= $widget['langue']; ?>";
728
          widget.langue = "<?= $widget['langue']; ?>";
729
          // Squelette d'URL du web service de l'annuaire.
729
          // Squelette d'URL du web service de l'annuaire.
730
          widget.serviceAnnuaireIdUrl = "<?= $url_ws_annuaire; ?>";
730
          widget.serviceAnnuaireIdUrl = "<?= $url_ws_annuaire; ?>";
731
          // URL de l'icône du chargement en cours
731
          // URL de l'icône du chargement en cours
732
          widget.chargementIconeUrl = "<?= $url_base?>modules/saisie/squelettes/defaut/img/icones/chargement.gif";
732
          widget.chargementIconeUrl = "<?= $url_base?>modules/saisie/squelettes/defaut/img/icones/chargement.gif";
733
          // URL de l'icône du chargement en cours d'une image
733
          // URL de l'icône du chargement en cours d'une image
734
          widget.chargementImageIconeUrl = "<?= $url_base?>modules/saisie/squelettes/defaut/img/icones/chargement-image.gif";
734
          widget.chargementImageIconeUrl = "<?= $url_base?>modules/saisie/squelettes/defaut/img/icones/chargement-image.gif";
735
          // URL de l'icône du calendrier
735
          // URL de l'icône du calendrier
736
          widget.calendrierIconeUrl = "<?= $url_base?>modules/saisie/squelettes/defaut/img/icones/calendrier.png";
736
          widget.calendrierIconeUrl = "<?= $url_base?>modules/saisie/squelettes/defaut/img/icones/calendrier.png";
737
          // URL de l'icône pour une photo manquante
737
          // URL de l'icône pour une photo manquante
738
          widget.pasDePhotoIconeUrl = "<?= $url_base?>modules/saisie/squelettes/defaut/img/icones/pasdephoto.png";
738
          widget.pasDePhotoIconeUrl = "<?= $url_base?>modules/saisie/squelettes/defaut/img/icones/pasdephoto.png";
739
 
739
 
740
          // Code du référentiel utilisé pour les nom scientifiques.
740
          // Code du référentiel utilisé pour les nom scientifiques.
741
          widget.nomSciReferentiel = "<?= strtolower( $widget['referentiel'] ); ?>";
741
          widget.nomSciReferentiel = "<?= strtolower( $widget['referentiel'] ); ?>";
742
          // Indication de la présence d'une espèce imposée
742
          // Indication de la présence d'une espèce imposée
743
          widget.especeImposee = "<?= $espece_imposee; ?>";
743
          widget.especeImposee = "<?= $espece_imposee; ?>";
744
          // Tableau d'informations sur l'espèce imposée
744
          // Tableau d'informations sur l'espèce imposée
745
          widget.infosEspeceImposee = "<?= $infos_espece; ?>";
745
          widget.infosEspeceImposee = "<?= $infos_espece; ?>";
746
          // Nombre d'élément dans les listes d'auto-complétion
746
          // Nombre d'élément dans les listes d'auto-complétion
747
          widget.autocompletionElementsNbre = 20;
747
          widget.autocompletionElementsNbre = 20;
748
          // Indication de la présence d'un référentiel imposé
748
          // Indication de la présence d'un référentiel imposé
749
          widget.referentielImpose = "<?= $referentiel_impose; ?>";
749
          widget.referentielImpose = "<?= $referentiel_impose; ?>";
750
 
750
 
751
          // URL du web service permettant l'auto-complétion des noms scientifiques
751
          // URL du web service permettant l'auto-complétion des noms scientifiques
752
          widget.serviceAutocompletionNomSciUrl = "<?= $widget['especes']['url_ws_autocompletion_ns']; ?>?"+
752
          widget.serviceAutocompletionNomSciUrl = "<?= $widget['especes']['url_ws_autocompletion_ns']; ?>?"+
753
            "masque={masque}&"+
753
            "masque={masque}&"+
754
            "recherche=etendue&"+
754
            "recherche=etendue&"+
755
            "retour.champs=famille,nom_retenu,nom_retenu_complet,num_taxonomique,nom_retenu.id&"+
755
            "retour.champs=famille,nom_retenu,nom_retenu_complet,num_taxonomique,nom_retenu.id&"+
756
            "ns.structure=au&"+
756
            "ns.structure=au&"+
757
            "navigation.limite=" + widget.autocompletionElementsNbre;
757
            "navigation.limite=" + widget.autocompletionElementsNbre;
758
          // Squelette d'URL du web service permettant l'auto-complétion des noms scientifiques
758
          // Squelette d'URL du web service permettant l'auto-complétion des noms scientifiques
759
          widget.serviceAutocompletionNomSciUrlTpl = "<?= $widget['especes']['url_ws_autocompletion_ns_tpl']; ?>?"+
759
          widget.serviceAutocompletionNomSciUrlTpl = "<?= $widget['especes']['url_ws_autocompletion_ns_tpl']; ?>?"+
760
            "masque={masque}&"+
760
            "masque={masque}&"+
761
            "recherche=etendue&"+
761
            "recherche=etendue&"+
762
            "retour.champs=famille,nom_retenu,nom_retenu_complet,num_taxonomique,nom_retenu.id&"+
762
            "retour.champs=famille,nom_retenu,nom_retenu_complet,num_taxonomique,nom_retenu.id&"+
763
            "retour.tri=alpharet&"+ // tri "à la CeL"
763
            "retour.tri=alpharet&"+ // tri "à la CeL"
764
            "ns.structure=au&"+
764
            "ns.structure=au&"+
765
            "navigation.limite=" + widget.autocompletionElementsNbre;
765
            "navigation.limite=" + widget.autocompletionElementsNbre;
766
          // Nombre d'observations max autorisé avant transmission
766
          // Nombre d'observations max autorisé avant transmission
767
          widget.obsMaxNbre = 10;
767
          widget.obsMaxNbre = 10;
768
          // Durée d'affichage en milliseconde des messages d'informations
768
          // Durée d'affichage en milliseconde des messages d'informations
769
          widget.dureeMessage = 30000;
769
          widget.dureeMessage = 30000;
770
          //
770
          //
771
          //
771
          //
772
          //
772
          //
773
          // Squelette d'URL du web service d'eFlore fournissant les noms de communes.
773
          // Squelette d'URL du web service d'eFlore fournissant les noms de communes.
774
          widget.serviceNomCommuneUrl = "https://api.tela-botanica.org/service:eflore:0.1/osm/nom-commune?lon={lon}&lat={lat}";
774
          widget.serviceNomCommuneUrl = "https://api.tela-botanica.org/service:eflore:0.1/osm/nom-commune?lon={lon}&lat={lat}";
775
          // Squelette d'URL du web service d'eFlore fournissant les noms de communes hors de France (localisation approximative).
775
          // Squelette d'URL du web service d'eFlore fournissant les noms de communes hors de France (localisation approximative).
776
          widget.serviceNomCommuneUrlAlt = "https://api.tela-botanica.org/service:eflore:0.1/wikipedia/nom-commune?lon={lon}&lat={lat}&nbre=1";
776
          widget.serviceNomCommuneUrlAlt = "https://api.tela-botanica.org/service:eflore:0.1/wikipedia/nom-commune?lon={lon}&lat={lat}&nbre=1";
777
          // URL du marqueur à utiliser dans la carte Google Map
777
          // URL du marqueur à utiliser dans la carte Google Map
778
          widget.googleMapMarqueurUrl = "<?=$url_base?>modules/saisie/squelettes/defaut/img/marqueurs/epingle.png";
778
          widget.googleMapMarqueurUrl = "<?=$url_base?>modules/saisie/squelettes/defaut/img/marqueurs/epingle.png";
779
          //
779
          //
780
          //
780
          //
781
          //
781
          //
782
 
782
 
783
          // Initialisation du bousin
783
          // Initialisation du bousin
784
          widget.init();
784
          widget.init();
785
        });
785
        });
786
      //]]>
786
      //]]>
787
    </script>
787
    </script>
788
 
788
 
789
    <!-- Barre de navigation -->
789
    <!-- Barre de navigation -->
790
    <?php if ( $bar ): ?>
790
    <?php if ( $bar ): ?>
791
      <script src="<?= $url_script_navigation; ?>"></script>
791
      <script src="<?= $url_script_navigation; ?>"></script>
792
    <?php endif; ?>
792
    <?php endif; ?>
793
  </body>
793
  </body>
794
</html>
794
</html>