Subversion Repositories eFlore/Applications.cel

Rev

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

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