Subversion Repositories eFlore/Applications.cel

Rev

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

Rev Author Line No. Line
3120 delphine 1
<!DOCTYPE html>
3208 idir 2
<html xmlns="https://www.w3.org/1999/xhtml">
3120 delphine 3
  <head>
3208 idir 4
    <title><?= $widget['titre']; ?></title>
5
 
6
    <meta 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" />
9
    <meta http-equiv="Content-script-type" content="text/javascript" />
10
    <meta http-equiv="Content-language" content="fr" />
11
 
12
    <meta name="revisit-after" content="15 days" />
3120 delphine 13
    <meta name="robots" content="index,follow" />
14
    <meta name="author" content="Tela Botanica" />
15
    <meta name="keywords" content="Tela Botanica, CEL" />
16
    <meta name="description" content="Gestion des widgets de saisie du carnet en ligne" />
3208 idir 17
    <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no, user-scalable=no" />
3120 delphine 18
 
3208 idir 19
    <!-- OpenGraph pour Facebook, Pinterest, Google+ -->
20
    <meta property="og:type" content="website" />
21
    <meta property="og:title" content="Widgets de saisie du CeL" />
22
    <meta property="og:site_name" content="Tela Botanica" />
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" />
25
    <meta property="og:image:type" content="image/png" />
26
    <meta property="og:image:width" content="256" />
27
    <meta property="og:image:height" content="256" />
28
    <meta property="og:locale" content="fr_FR" />
3120 delphine 29
 
3208 idir 30
    <!-- Favicones -->
31
    <link rel="shortcut icon" type="image/x-icon" href="https://resources.tela-botanica.org/tb/img/16x16/favicon.ico" />
3120 delphine 32
 
3208 idir 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" />
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 -->
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"> -->
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"> -->
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" />
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" />
3120 delphine 45
 
3208 idir 46
    <!--  Google Analytics -->
47
    <?php if( $prod ): ?>
48
      <?php include "analytics.html"; ?>
49
    <?php endif; ?>
50
    <link rel="icon" type="image/x-icon" href="favicon.ico" />
51
    <link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet" />
3120 delphine 52
  </head>
53
 
54
  <body>
3208 idir 55
    <!-- <?php //var_dump($widget['especes']['url_ws_autocompletion_ns']); ?> -->
56
    <div id="zone-appli" class="container">
57
<!-- la barre de navigation est plus bas -->
58
    <!-- <?php //if ( $bar ): ?>
59
        <div id="tb-navigation" data-courant="widget-cel-saisie2" data-squelette="saisie" data-mode="test"></div>
60
        <br/>
61
      <?php //endif; ?> -->
62
      <div class="layout-wrapper page">
63
 
64
        <div class="media">
65
          <img class="d-flex mr-3" src="<?= $widget['logo']; ?>" alt="<?= $widget['projet']; ?>" />
66
          <div class="media-body">
67
            <h1 class="mt-0"><?= $widget['titre']; ?></h1>
68
          </div>
69
        </div>
70
 
71
        <div class="row">
72
          <div class="col-md-6">
73
            <div id="description"><?= $widget['description']; ?></div>
74
          </div>
75
          <div class="col-md-6">
76
            <div id="aide" class="well well-lg hidden-sm-down">
77
              <h3><?= $aide['titre']; ?></h3>
78
              <div id="aide-txt" class="hiden-sm-down">
79
                <p>
80
                  <?= $aide['description']; ?>
81
                </p>
82
                <p class="discretion">
83
                  <?= $aide['contact']; ?>
84
                  <a href="<?= $url_remarques; ?>?service=cel&pageSource=<?php echo urlencode( 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'].'?'.$_SERVER['QUERY_STRING'] ); ?>"
85
                    target="_blank"
86
                    onclick="
87
                      javascript:window.open(
88
                        this.getAttribute( 'href' ),
89
                        'Tela Botanica - Remarques',
90
                        config = 'height=700, width=640, scrollbars=yes, resizable=yes'
91
                      );
92
                      return false;
93
                    ">
94
                    <?= $aide['contact2']; ?></a>
95
                </p>
96
              </div>
97
            </div>
98
          </div>
99
        </div>
100
 
101
        <div id="formulaire" class="row mb-3 bloc-top">
102
          <form id="form-observateur" role="form" autocomplete="on">
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
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
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
            <!-- <div id="tb-navigation" data-courant="widget-cel-saisie2" data-squelette="navigation" data-mode="test"> -->
109
            <!-- En prod décommenter la div ci-dessous et commenter celle ci-dessus" -->
110
            <div id="tb-navigation" data-courant="widget-cel-saisie2" data-squelette="navigation" data-mode="prod">
111
              <div class="navbar-default mb-3" id="tb-navbar">
112
                <div class="nav navbar-nav navbar-right row">
113
                  <div id="bouton-connexion" class="dropdown col-md-6 col-sm-12">
114
                    <label for="bouton-connexion">Je me connecte à mon compte : </label>
115
                    <a id="connexion" href="<?= $authTpl; ?>" class="btn btn-success  mr-1 mb-1">Connexion</a>
116
                    <a id="bouton-inscription" href="https://www.tela-botanica.org/inscription" class="btn btn-primary mr-1 mb-1" taget="_blank">Inscription</a>
117
                  </div>
118
                  <div id="creation-compte" class="dropdown col-md-6 col-sm-12">
119
                    <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>
121
                  </div>
122
                  <div id="utilisateur-connecte" class="dropdown hidden">
123
                    <label for="utilisateur-connecte">Bienvenue : </label>
124
                    <a href="#" class="list-tool btn btn-largee btn-primary dropdown-toggle" data-toggle="dropdown">
125
                      <span id="nom-complet"></span>
126
                    </a>
127
                    <div class="dropdown-menu">
128
                      <div id="profil-utilisateur"><a href="https://www.tela-botanica.org/inscription">Mon profil</a></div>
129
                      <div id="deconnexion"><a href="https://www.tela-botanica.org/widget:reseau:auth?action=deconnexion&origine=">Déconnexion</a></div>
130
                    </div>
131
                  </div>
132
                </div>
133
              </div>
134
            </div>
135
 
136
            <div id="anonyme" class="mb-3 hidden">
137
              <label for="anonyme">Informations sur l'observateur : </label>
138
              <div id="zone-courriel" class="row">
139
                <div class="control-group col-md-6">
140
 
141
                  <label for="courriel" class="col-sm-12 obligatoire" title="<?= $observateur['courriel-title']; ?>">
142
                    <i class="fa fa-envelope" aria-hidden="true"></i>
143
                    <?= $observateur['courriel']; ?>
144
                  </label>
145
                  <div class="col-sm-8 mb-3">
146
                    <input id="courriel" name="courriel" class="form-control" type="email" title="<?= $observateur['courriel-title']; ?> ">
147
                    <input id="id_utilisateur" name="id_utilisateur" type="hidden">
148
                  </div>
149
 
150
                </div>
151
                <div id="zone-courriel-confirmation" class="control-group col-md-6 hidden">
152
 
153
                  <label for="courriel_confirmation" class="col-sm-12 obligatoire" title="Veuillez confirmer le courriel.">
154
                    <i class="fa fa-envelope" aria-hidden="true"></i>
155
                    Courriel (confirmation)
156
                  </label>
157
                  <div class="col-sm-8">
158
                    <input id="courriel_confirmation" name="courriel_confirmation" class="form-control" type="email">
159
                  </div>
160
 
161
                </div>
162
              </div>
163
              <div id="zone-prenom-nom" class="row hidden">
164
                <div class="control-group col-md-6">
165
 
166
                  <label for="prenom" class="col-sm-12">
167
                    <i class="fa fa-user" aria-hidden="true"></i>
168
                    <?= $observateur['prenom']; ?>
169
                  </label>
170
                  <div class="input-group col-sm-8">
171
                    <input id="prenom" name="prenom" class="form-control" type="text">
172
                  </div>
173
 
174
                </div>
175
                <div class="control-group col-md-6">
176
 
177
                  <label for="nom" class="col-sm-12">
178
                    <i class="fa fa-user" aria-hidden="true"></i>
179
                    <?= $observateur['nom']; ?>
180
                  </label>
181
                  <div class="input-group col-sm-8">
182
                    <input id="nom" name="nom" class="form-control" type="text">
183
                  </div>
184
 
185
                </div>
186
              </div>
187
            </div>
188
          </form>
189
          <!-- Messages d'erreur du formulaire-->
190
          <div class="row">
191
            <div class="zone-alerte">
192
              <div id="dialogue-bloquer-copier-coller" class="alert alert-info alert-block hidden"">
193
                <a class="close">×</a>
194
                <h4 class="alert-heading">Information : copier/coller</h4>
195
                <p>
196
                  Merci de ne pas copier/coller votre courriel.<br/>
197
                  La double saisie permet de vérifier l'absence d'erreurs.
198
                </p>
199
              </div>
200
              <div id="dialogue-utilisateur-non-identifie" class="alert alert-warning alert-block hidden">
201
                <a class="close">×</a>
202
                <h4 class="alert-heading">Information : observateur non identifié</h4>
203
                <p>
204
                  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/>
206
                  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>.
208
                </p>
209
              </div>
210
              <!-- <div id="dialogue-google-map" class="alert alert-info alert-block hidden">
211
                <a class="close">×</a>
212
                <h4 class="alert-heading">Information sur Google Maps</h4>
213
                <div class="contenu"></div>
214
              </div> -->
215
            </div>
216
          </div>
217
 
218
          <form id="form-observation" role="form" autocomplete="on">
219
            <h2><?= $observation['titre']; ?></h2>
220
            <div id="zone-observation" class="row">
221
              <div class="col-md-6">
222
                <div class="control-group">
223
                  <label for="geolocalisation" class="col-sm-12 obligatoire" title="<?= $observateur['courriel-title']; ?>">
224
                    <i class="fa fa-street-view" aria-hidden="true"></i>
225
                    <?= $observation['geolocalisation']; ?>
226
                  </label>
227
                  <div class="col-sm-12 mb-3">
228
                    <input id="geolocalisation" name="geolocalisation" type="hidden">
229
                    <!-- 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 -->
231
                    <!-- <app-root></app-root>
232
                    <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>
234
                    <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>
236
                    <script type="text/javascript" src="modules/saisie2/squelettes/js/main.js"></script> -->
237
                  </div>
238
                </div>
239
                <div class="control-group">
240
                  <label for="milieu" class="col-sm-12">
241
                    <i class="fa fa-street-view" aria-hidden="true"></i>
242
                    <?= $observation['milieu']; ?>
243
                  </label>
244
                  <div class="col-sm-8 mb-3">
245
                    <?php if ( 0 < count( (array) $widget['milieux'] ) ) :?>
246
                      <select id="milieu" class="form-control" >
247
                      <?php foreach ( $widget['milieux'] as $milieu ) :?>
248
                        <option value="<?= $milieu; ?>"><?= $milieu; ?></option>
249
                      <?php endforeach; ?>
250
                      </select>
251
                    <?php else : ?>
252
                      <input id="milieu" name="milieu" class="form-control" type="text" placeholder="bois, champ, falaise, ...">
253
                    <?php endif; ?>
254
                  </div>
255
                </div>
256
              </div>
257
              <div class="col-md-6">
258
 
259
                <div class="control-group">
260
                  <label for="date_releve" class="col-sm-12 obligatoire" title="">
261
                    <i class="fa fa-calendar" aria-hidden="true"></i>
262
                    <?= $observation['date']; ?>
263
                  </label>
264
                  <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">
266
                  </div>
267
                </div>
268
 
269
                <?php if( 'referentiel' === $widget['type_especes'] && '' === $widget['referentiel'] ) : ?>
270
                  <div class="control-group">
271
                    <label for="referentiel" class="col-sm-12 obligatoire" title="">
272
                      <i class="fa fa-book" aria-hidden="true"></i>
273
                      <?= $observation['referentiel']; ?>
274
                    </label>
275
                    <div class="col-sm-8 mb-3">
276
                      <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>
278
                        <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>
280
                        <option value="bdtre" title="Trachéophytes de La Réunion">Réunion (BDTRE)</option>
281
                        <option value="aublet" title="Guyane">Guyane (AUBLET2)</option>
282
                        <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>
284
                        <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>
286
                        <option value="autre" title="Autre/Inconnu">Autre/Inconnu</option>
287
                      </select>
288
                    </div>
289
                  </div>
290
                <?php else : ?>
291
                  <input id="referentiel" name="referentiel" value="<?= $widget['referentiel']; ?>" type="hidden">
292
                <?php endif; ?>
293
 
294
                <div class="control-group">
295
                  <label for="taxon" class="col-sm-12 obligatoire" title="">
296
                    <i class="fa fa-leaf" aria-hidden="true"></i>
297
                    <?= $observation['espece']; ?>
298
                  </label>
299
                  <div class="col-sm-8 mb-3">
300
                    <input id="taxon" name="taxon" class="form-control" type="text">
301
                  </div>
302
                </div>
303
 
304
                <div class="control-group">
305
                  <label for="certitude" class="col-sm-12 obligatoire" title="">
306
                    <i class="fa fa-question" aria-hidden="true"></i>
307
                    <?= $observation['certitude']; ?>
308
                  </label>
309
                  <div class="col-sm-8 mb-3">
310
                    <select id="certitude" name="certitude" class="form-control">
311
                      <option value="aDeterminer" ><?= $observation['certADet']; ?></option>
312
                      <option value="douteuse" ><?= $observation['certDout']; ?></option>
313
                      <option value="certaine" selected="selected" ><?= $observation['certCert']; ?></option>
314
                    </select>
315
                  </div>
316
                </div>
317
 
318
              </div>
319
            </div>
320
          </form>
321
 
322
          <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>
324
            <p class="miniature-info" class="discretion help-inline">
325
              Les photos doivent être au format JPEG et ne doivent pas excéder 5Mo chacunes.
326
            </p>
327
            <div id ="photos-conteneur" class="control-group">
328
              <div>
329
                <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>
331
                  <input type="file" id="fichier" name="fichier" class="input-file" accept="image/jpeg" multiple>
332
                  <input type="hidden" name="MAX_FILE_SIZE" value="5242880">
333
                </label>
334
              </div>
335
 
336
              <div id="miniatures"></div>
337
              <p class="miniature-msg" class="span12">&nbsp;</p>
338
            </div>
339
          </form>
340
 
341
          <!-- Champs supplémentaires -->
342
          <?php if ( isset($widget['chpSupp'] ) && 0 < count( (array) $widget['chpSupp'] ) ) : ?>
343
            <form id="form-supp" role="form" autocomplete="on">
344
              <h2>Informations propres au projet</h2>
345
              <div id="zone-supp" class="row">
346
                <div class="col-md-6">
347
 
348
                  <?php foreach( $widget['chpSupp']['sauvagessupp']['champs-supp'] as $champ ) :?>
349
                    <?php
350
                      $min         = ( $champ['fieldValues']['min'] )? ' min="' . $champ['fieldValues']['min'] . '"':'';
351
                      $max         = ( $champ['fieldValues']['max'] )? ' max="' . $champ['fieldValues']['max'] . '"':'';
352
                      $step        = ( $champ['fieldValues']['step'] )? ' step="' . $champ['fieldValues']['step'] . '"':'';
353
                      $default     = ( $champ['fieldValues']['default'] )? ' value="' . $champ['fieldValues']['default'] . '"':'';
354
                      $description = ( $champ['description'] )? ' title="' . $champ['description'] . '"':'';
355
                      $placeholder = ( $champ['fieldValues']['placeholder'] )? ' placeholder="' . $champ['fieldValues']['placeholder'] . '"':'';
356
                      $help        = ( $champ['help'] )? ' and-help':'';
357
                      $required    = '';
358
                      $mandatory   = '';
359
                      $datepicker  = '';
360
                      $pattern     = '';
361
                      $obs_radio   = '';
362
 
363
                      if( $champ['mandatory'] ) {
364
                        // Attr required
365
                        $required  = ' required';
366
                        // class="obligatoire"
367
                        $mandatory = ' obligatoire';
368
                      }
369
 
370
                      if( 'date' === $champ['element'] ) {
371
                        $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)$)"';
373
                      }
374
 
375
                      switch( $champ['element'] ) {
376
                        case 'radio':
377
                        case 'checkbox': ?>
378
                          <div class="control-group <?= $champ['element']; ?> mb-3"<?php echo $description . $required; ?>>
379
                            <div class="col-sm-12 list-label<?php echo $help . $mandatory; ?>">
380
                              <?= $champ['name']; ?>
381
                            </div>
382
                            <div class="col-sm-8">
383
 
384
                              <?php foreach ( $champ['fieldValues']['listValue'] as $i => $list_value ) : ?>
385
 
386
                                  <?php
387
                                    $checked = '';
388
                                    if ( '#' === substr( $list_value, -1 ) ) :
389
                                      $checked = ' checked';
390
                                      $list_value = substr( $list_value, 0, -1 );
391
                                    endif;
392
                                  ?>
393
 
394
                                  <?php if( 'other' !== $list_value ) : ?>
395
                                    <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']; ?>">
397
                                      <?= $list_value; ?>
398
                                    </label>
399
                                  <?php else : ?>
400
                                    <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']; ?>">
402
                                      Autre
403
                                    </label>
404
                                  <?php endif; ?>
405
 
406
                              <?php endforeach; ?>
407
 
408
                            </div>
409
                          </div>
410
                        <?php break;
411
 
412
                        case 'list-checkbox': ?>
413
                          <div class="multiselect <?php echo $champ['element'] . $help; ?>">
414
                            <label class="col-sm-12<?= $mandatory; ?>"><?= $champ['name']; ?></label>
415
                            <div class="control-group col-sm-8 mb-3">
416
                              <div class="selectBox">
417
                                <select class="form-control" id="list-checkbox-<?= $champ['key']; ?>"<?php echo $description . $required; ?> class="form-control">
418
                                  <option>Plusieurs choix possibles</option>
419
                                </select>
420
                                <div class="overSelect"></div>
421
                              </div>
422
                              <div class="checkboxes hidden">
423
                                <?php foreach ( $champ['fieldValues']['listValue'] as $i => $list_value ) : ?>
424
 
425
                                  <?php
426
                                    $checked = '';
427
                                    if ( '#' === substr( $list_value, -1 ) ) :
428
                                      $checked = ' checked';
429
                                      $list_value = substr( $list_value, 0, -1 );
430
                                    endif;
431
                                  ?>
432
 
433
                                  <?php if( 'other' !== $list_value ) : ?>
434
                                    <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']; ?>">
436
                                      <?= $list_value; ?>
437
                                    </label>
438
                                  <?php else : ?>
439
                                    <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']; ?>">
441
                                      Autre
442
                                    </label>
443
                                  <?php endif; ?>
444
 
445
                                <?php endforeach; ?>
446
 
447
                              </div>
448
                            </div>
449
                          </div>
450
                        <?php break;
451
 
452
                        case 'select': ?>
453
                          <label for="<?= $champ['key']; ?>" class="col-sm-12<?= $mandatory; ?>"<?= $description; ?>><?= $champ['name']; ?></label>
454
                          <div class="champ col-sm-8 mb-3">
455
                            <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']; ?>">
457
 
458
                                <?php foreach ( $champ['fieldValues']['listValue'] as $list_value ) : ?>
459
 
460
                                  <?php
461
                                    $selected = '';
462
                                    if ( '#' === substr( $list_value, -1 ) ) :
463
                                      $selected = ' selected="selected"';
464
                                      $list_value = substr( $list_value, 0, -1 );
465
                                    endif;
466
                                  ?>
467
 
468
                                  <?php if( 'other' !== $list_value ) : ?>
469
                                    <option value="<?= $list_value; ?>"<?= $selected; ?>>
470
                                      <?php echo ucfirst( $list_value ); ?>
471
                                    </option>
472
                                  <?php else : ?>
473
                                    <option class="other form-control is-select" value="other" data-element="<?= $champ['element']; ?>">Autre</option>
474
                                  <?php endif; ?>
475
 
476
                                <?php endforeach; ?>
477
 
478
                              </select>
479
                            </div>
480
                          </div>
481
                        <?php break;
482
 
483
                        case 'file' : ?>
484
                          <div class="control-group col-sm-12 mb-3">
485
                            <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']; ?>">
487
                              <label for="<?= $champ['key']; ?>" class="label-file<?= $mandatory; ?>" <?= $description; ?>><i class="fas fa-download" aria-hidden="true"></i> <?= $champ['name']; ?></label>
488
 
489
                              <?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>
491
                              <?php endif; ?>
492
 
493
                            </div>
494
                          </div>
495
                        <?php break;
496
 
497
                        case 'textarea': ?>
498
                          <div class="control-group">
499
                            <label for="<?= $champ['key']; ?>" class="col-sm-12<?php echo $help . $mandatory; ?>" <?= $description; ?>><?= $champ['name']; ?></label>
500
                            <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>
502
                            </div>
503
                          </div>
504
                        <?php break;
505
 
506
                        case 'range': ?>
507
                          <div class="control-group">
508
                            <label for="<?= $champ['key']; ?>" class="col-sm-12<?= $help . $mandatory; ?>" <?= $description; ?>><?= $champ['name']; ?></label>
509
                            <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']; ?>">
511
                            </div>
512
                          </div>
513
                          <?php break;
514
 
515
                        case 'number':
516
                        case 'date': ?>
517
                          <div class="control-group">
518
                            <label for="<?= $champ['key']; ?>" class="col-sm-12<?php echo $datepicker . $mandatory; ?>" <?= $description; ?>><?= $champ['name']; ?></label>
519
                            <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']; ?>">
521
                            </div>
522
                          </div>
523
                          <?php break;
524
 
525
                        case 'text' :
526
                        case 'email':
527
                        default: ?>
528
                          <div class="control-group">
529
                            <label for="<?= $champ['key']; ?>" class="col-sm-12<?= $mandatory; ?>" <?= $description; ?>><?= $champ['name']; ?></label>
530
                            <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']; ?>">
532
                            </div>
533
                          </div>
534
                        <?php break;
535
                      }
536
                    ?>
537
 
538
                  <?php endforeach; ?>
539
                </div>
540
              </div>
541
            </form>
542
          <?php endif; ?><!-- Fin champs supplémentaires -->
543
 
544
          <div id="image" class="row"></div>
545
        </div>
546
 
547
        <!-- Bouton cr&ation d'une obs -->
548
        <div class="row mb-3 bloc-bottom">
549
          <div class="centre" title="Une fois les champs remplis, vous pouvez cliquer sur ce bouton pour
550
              ajouter votre observation à la liste à transmettre.">
551
            <a id="ajouter-obs" class="btn btn-primary">
552
              <i class="fas fa-check-square"></i> Créer
553
            </a>
554
          </div>
555
        </div>
556
 
557
        <!-- Messages d'erreur du formulaire-->
558
        <div class="row">
559
          <div class="zone-alerte">
560
            <div id="dialogue-bloquer-creer-obs" class="alert alert-warning alert-block hidden">
561
              <a class="close">×</a>
562
              <h4 class="alert-heading">Information : 10 observations maximum</h4>
563
              <p>
564
                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.
566
              </p>
567
            </div>
568
          </div>
569
          <div class="zone-alerte">
570
            <div id="dialogue-form-invalide" class="alert alert-warning alert-block hidden">
571
              <a class="close">×</a>
572
              <h4 class="alert-heading">Information : champs en erreur</h4>
573
              <p>
574
                Certains champs du formulaire sont mal remplis.<br/>
575
                Veuillez vérifier vos données.
576
              </p>
577
            </div>
578
          </div>
579
        </div>
580
 
581
        <!-- Affiche le tableau récapitualif des observations ajoutées -->
582
        <div id="zone-liste-obs" class="hidden">
583
          <div class="alert alert-info">
584
            <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"
586
              title="Ajoute les observations ci-dessous à votre Carnet en Ligne et les rend publiques." type="button">
587
              Transmettre
588
            </button>
589
          </div>
590
          <div id="liste-obs" ></div>
591
          <div class="row">
592
            <div class="zone-alerte">
593
              <div id="dialogue-zero-obs" class="alert alert-block hidden">
594
                <a class="close">×</a>
595
                <h4 class="alert-heading">Attention : aucune observation</h4>
596
                <p>Veuillez saisir des observations pour les transmettre.</p>
597
              </div>
598
              <div id="dialogue-obs-transaction-ok" class="alert alert-success alert-block hidden">
599
                <a class="close">×</a>
600
                <h4 class="alert-heading">Information : transmission des observations</h4>
601
                <div class="alert-txt"></div>
602
              </div>
603
              <div id="dialogue-obs-transaction-ko" class="alert alert-error alert-block hidden">
604
                <a class="close">×</a>
605
                <h4 class="alert-heading">Erreur : transmission des observations</h4>
606
                <div class="alert-txt"></div>
607
              </div>
608
            </div>
609
          </div>
610
        </div>
611
 
612
        <!-- Fenêtres modales -->
613
        <div id="chargement" class="modal-fenetre hidden">
614
          <div id="chargement-centrage" class="modal-contenu">
615
            <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="">
617
                  <span class="sr-only">0/10 observations transmises</span>
618
                </div>
619
            </div>
620
            <p id="chargement-txt" style="color:white;font-size:1.5em;">
621
              Transfert des observations en cours...<br />
622
              Cela peut prendre plusieurs minutes en fonction de la taille des images et du nombre
623
              d'observations à transférer.
624
            </p>
625
          </div>
626
        </div>
627
 
628
        <!-- Templates HTML -->
629
        <div id="tpl-transmission-ok" class="hidden">
630
          <p class="msg">
631
            Vos observations ont bien été transmises.<br />
632
            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>,
634
            <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>,
636
            <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
638
            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
640
            <a href="https://www.tela-botanica.org/page:inscription">s'inscrire à Tela Botanica</a>
641
            au préalable, si ce n'est pas déjà fait.
642
          </p>
643
        </div>
644
        <div id="tpl-transmission-ko" class="hidden">
645
          <p class="msg">
646
            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
648
            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 />
650
            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"
652
              onclick="
653
                javascript: window.open( this.getAttribute( 'href' ), 'Tela Botanica - Remarques', config = 'height=700, width=640, scrollbars=yes, resizable=yes' );
654
                return false;
655
              "
656
            >le formulaire de signalement d'erreurs</a>.
657
          </p>
658
        </div>
659
 
660
        <footer>
661
          <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">
663
              <span>Gestion</span>
664
            </a>
665
            <a href="https://www.tela-botanica.org/widget:cel:cartoPoint?projet=<?= $widget['projet']; ?>" target="" class="mr-2" style="color: #918a6f">
666
              <span>Carto</span>
667
            </a>
668
            <a href="https://www.tela-botanica.org/widget:cel:photo?projet=<?= $widget['projet']; ?>" target="" class="mr-2" style="color: #964e75">
669
              <span>Photo</span>
670
            </a>
671
            <a href="https://www.tela-botanica.org/widget:cel:observation?projet=<?= $widget['projet']; ?>" target="" class="mr-2" style="color: #b2cb43">
672
              <span>Observation</span>
673
            </a>
674
            <a href="https://www.tela-botanica.org/widget:cel:export?projet=<?= $widget['projet']; ?>" target="" class="mr-2" style="color: #009fb8">
675
              <span>Export</span>
676
            </a>
677
            <a href="https://www.tela-botanica.org/appli:pictoflora?projet=<?= $widget['projet']; ?>" target="" class="mr-2" style="color: #927fa2">
678
              <span>PictoFlora</span>
679
            </a>
680
            <a href="https://www.tela-botanica.org/appli:identiplante?projet=<?= $widget['projet']; ?>" target="" style="color: #f25a52">
681
              <span>IdentiPlante</span>
682
            </a>
683
          </div>
684
        </footer>
685
      </div>
686
    </div>
687
    <!-- Jquery -->
688
    <script type="text/javascript" src="https://code.jquery.com/jquery-1.12.1.js"></script>
689
 
690
    <!-- 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>
692
    <script type="text/javascript" src="https://resources.tela-botanica.org/jquery/jquery-ui/1.11.0/js/datepicker-fr.js"></script>
693
    <!-- Jquery Plugins -->
694
    <!-- 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>
696
    <!-- <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>
698
    <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 -->
700
    <script type="text/javascript" src="https://resources.tela-botanica.org/jquery/form/3.51/jquery.form.min.js"></script>
701
    <!-- 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> -->
703
    <!-- <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>
705
    <!-- Authentification -->
706
    <script type="text/javascript" src="<?= $url_base; ?>modules/saisie2/squelettes/js/auth.js"></script>
707
    <!-- Connexion, bloc de prévisualisation, date -->
708
    <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>
710
    <script type="text/javascript">
711
      //<![CDATA[
712
        $( document ).ready( function() {
713
 
714
          // OMG un modèle objet !!
715
          var widget = new WidgetSaisie();
716
 
717
          //
718
          //
719
          //
720
          // La présence du parametre 'debug' dans l'URL enclenche le débogage
721
          widget.debug = <?= isset( $_GET['debug'] ) ? 'true' : 'false'; ?>;
722
          // La présence du parametre 'html5' dans l'URL enclenche les fonctions avancées HTML5
723
          widget.html5 = <?= isset($_GET['html5']) ? 'true' : 'false'; ?>;
724
          // Mot-clé du widget/projet
725
          widget.tagProjet = "WidgetSaisie";
726
          // Mots-clés à ajouter aux images
727
          widget.tagImg = "<?= isset($_GET['tag-img']) ? $_GET['tag-img'] : ''; ?>";
728
          widget.separationTagImg = "<?= isset($_GET['motcle']) && isset($_GET['tag-img']) ? ',' : ''; ?>";
729
          widget.tagImg = <?= isset($_GET['motcle']) ? "'".$_GET['motcle']."' + widget.separationTagImg + widget.tagImg" : 'widget.tagImg'; ?>;
730
          // Mots-clés à ajouter aux observations
731
          widget.tagObs = "<?= isset($_GET['tag-obs']) ? $_GET['tag-obs'] : ''; ?>";
732
          widget.separationTagObs = "<?= isset($_GET['projet']) && isset($_GET['tag-obs']) ? ',' : ''; ?>";
733
          widget.tagObs = <?= isset($_GET['projet']) ? "'".$_GET['projet']."' + widget.separationTagObs + widget.tagObs" : 'widget.tagObs'; ?>;
734
          // Précharger le formulaire avec les infos d'une observation
735
          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.
737
          widget.serviceSaisieUrl = "<?=$url_ws_saisie?>";
738
          // URL du web service permettant de récupérer les infos d'une observation du CEL.
739
          widget.serviceObsUrl = "<?=$url_ws_obs?>";
740
          //
741
          //
742
          //
743
 
744
          // langue
745
          widget.langue = "<?= $widget['langue']; ?>";
746
          // Squelette d'URL du web service de l'annuaire.
747
          widget.serviceAnnuaireIdUrl = "<?= $url_ws_annuaire; ?>";
748
          // URL de l'icône du chargement en cours
749
          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
751
          widget.chargementImageIconeUrl = "<?= $url_base?>modules/saisie/squelettes/defaut/img/icones/chargement-image.gif";
752
          // URL de l'icône du calendrier
753
          widget.calendrierIconeUrl = "<?= $url_base?>modules/saisie/squelettes/defaut/img/icones/calendrier.png";
754
          // URL de l'icône pour une photo manquante
755
          widget.pasDePhotoIconeUrl = "<?= $url_base?>modules/saisie/squelettes/defaut/img/icones/pasdephoto.png";
756
 
757
          // Code du référentiel utilisé pour les nom scientifiques.
758
          widget.nomSciReferentiel = "<?= strtolower( $widget['referentiel'] ); ?>";
759
          // Indication de la présence d'une espèce imposée
760
          widget.especeImposee = "<?= $espece_imposee; ?>";
761
          // Tableau d'informations sur l'espèce imposée
762
          widget.infosEspeceImposee = "<?= $infos_espece; ?>";
763
          // Nombre d'élément dans les listes d'auto-complétion
764
          widget.autocompletionElementsNbre = 20;
765
          // Indication de la présence d'un référentiel imposé
766
          widget.referentielImpose = "<?= $referentiel_impose; ?>";
767
 
768
          // URL du web service permettant l'auto-complétion des noms scientifiques
769
          widget.serviceAutocompletionNomSciUrl = "<?= $widget['especes']['url_ws_autocompletion_ns']; ?>?"+
770
            "masque={masque}&"+
771
            "recherche=etendue&"+
772
            "retour.champs=famille,nom_retenu,nom_retenu_complet,num_taxonomique,nom_retenu.id&"+
773
            "ns.structure=au&"+
774
            "navigation.limite=" + widget.autocompletionElementsNbre;
775
          // Squelette d'URL du web service permettant l'auto-complétion des noms scientifiques
776
          widget.serviceAutocompletionNomSciUrlTpl = "<?= $widget['especes']['url_ws_autocompletion_ns_tpl']; ?>?"+
777
            "masque={masque}&"+
778
            "recherche=etendue&"+
779
            "retour.champs=famille,nom_retenu,nom_retenu_complet,num_taxonomique,nom_retenu.id&"+
780
            "retour.tri=alpharet&"+ // tri "à la CeL"
781
            "ns.structure=au&"+
782
            "navigation.limite=" + widget.autocompletionElementsNbre;
783
          // Nombre d'observations max autorisé avant transmission
784
          widget.obsMaxNbre = 10;
785
          // Durée d'affichage en milliseconde des messages d'informations
786
          widget.dureeMessage = 30000;
787
          //
788
          //
789
          //
790
          // 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}";
792
          // 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";
794
          // URL du marqueur à utiliser dans la carte Google Map
795
          widget.googleMapMarqueurUrl = "<?=$url_base?>modules/saisie/squelettes/defaut/img/marqueurs/epingle.png";
796
          //
797
          //
798
          //
799
 
800
          // Initialisation du bousin
801
          widget.init();
802
        });
803
      //]]>
804
    </script>
805
 
806
    <!-- Barre de navigation -->
807
    <?php if ( $bar ): ?>
808
      <script src="<?= $url_script_navigation; ?>"></script>
809
    <?php endif; ?>
3120 delphine 810
  </body>
3208 idir 811
</html>