Subversion Repositories eFlore/Applications.cel

Rev

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

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