Subversion Repositories eFlore/Applications.cel

Rev

Rev 3208 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 3208 Rev 3217
Line 4... Line 4...
4
 *  Fonctions de Style et Affichage  *
4
 *  Fonctions de Style et Affichage  *
5
 *      des éléments "spéciaux"      *
5
 *      des éléments "spéciaux"      *
6
 *************************************/
6
 *************************************/
Line 7... Line 7...
7
 
7
 
8
// Logique d'affichage pour le input type=file
8
// Logique d'affichage pour le input type=file
9
function inputFile( countFiles ) {
9
function inputFile() {
10
  // Initialisation des variables
10
  // Initialisation des variables
11
  var $fileInput  = $( '.input-file' ),
11
  var $fileInput  = $( '.input-file' ),
12
      $button     = $( '.label-file' );
12
      $button     = $( '.label-file' );
13
  // Action lorsque la "barre d'espace" ou "Entrée" est pressée
13
  // Action lorsque la "barre d'espace" ou "Entrée" est pressée
Line 102... Line 102...
102
  });
102
  });
103
}
103
}
Line 104... Line 104...
104
 
104
 
105
// Style et affichage des input type="range"
105
// Style et affichage des input type="range"
106
function inputRangeDisplayNumber() {
106
function inputRangeDisplayNumber() {
107
  $( '#zone-supp' ).on( 'input' , '.range input[type="range"]' , function () {
107
  $( '#zone-appli' ).on( 'input' , '.range input[type="range"]' , function () {
108
    $( this ).next( 'input[type="number"]' ).val ( $( this ).val() );
108
    $( this ).next( 'input[type="number"]' ).val ( $( this ).val() );
109
  });
109
  });
110
  $( '#zone-supp' ).on( 'input' , '.range input[type="number"]' , function () {
110
  $( '#zone-appli' ).on( 'input' , '.range input[type="number"]' , function () {
111
    $( this ).prev( 'input[type="range"]' ).val ( $( this ).val() );
111
    $( this ).prev( 'input[type="range"]' ).val ( $( this ).val() );
112
  });
112
  });
Line 113... Line 113...
113
}
113
}
114
 
114
 
115
// Activation/Desactivation et contenu de la modale Bootstrap
115
// Activation/Desactivation et contenu de la modale Bootstrap
116
// https://getbootstrap.com/docs/3.3/javascript/#modals
116
// https://getbootstrap.com/docs/3.3/javascript/#modals
117
function previewFieldHelpModal() {
117
function previewFieldHelpModal() {
118
  $( '#zone-supp' ).on( 'click' , '.help-button' , function ( event ) {
118
  $( '#zone-appli' ).on( 'click' , '.help-button' , function ( event ) {
119
    var index = $( this ).closest( '.preview-fields' ).attr( 'data-id' ),
119
    var thisFieldKey = $( this ).data( 'key' ),
120
        thisFieldset = $( '.new-field[data-id="' + index + '"]' ),
120
        // filePath ci dessous est un test, obtenir une vraie url une fois les fichiers d'aide accessibles
-
 
121
        filePath = 'https://beta.tela-botanica.org/tmp/eflore_v5_cache/pdf/Fabaceae-3497041375.pdf',
121
        file = $( '.field-help' , thisFieldset )[0].files[0],
122
        fileMimeType = $( this ).data( 'mime-type' );
122
        tmppath = URL.createObjectURL( file );
123
 
123
    // Titre
124
    // Titre
124
    $( '#help-modal-label' ).text( 'Aide pour : ' +  $( '.field-name' , thisFieldset ).val() );
125
    $( '#help-modal-label' ).text( 'Aide pour : ' +  $( this ).data( 'name' ) );
125
    // Contenu
126
 
126
    if( file.type.match( 'image' ) ) {
127
    if( fileMimeType.match( 'image' ) ) {
127
        $( '#print_content' ).append( '<img src="' + tmppath + '" style="max-width:100%">' );
128
      $( '#print_content' ).append( '<img src="' + filePath + '" style="max-width:100%">' );
128
    } else if( file.type.match( 'pdf' ) ) {
129
    } else if( fileMimeType.match( 'pdf' ) ) {
-
 
130
      $( '#print_content' ).append( '<iframe src="' + filePath + '" width="100%" height="650" align="middle" scrolling="no" frameborder="0"></iframe>' );
129
        $( '#print_content' ).append( '<iframe src="' + tmppath + '" width="100%" height="650" align="middle" scrolling="no" frameborder="0"></iframe>' );
131
    }
130
    }
132
 
131
    // Sortie avec la touche escape
133
    // Sortie avec la touche escape
132
    $( '#help-modal' ).modal( { keyboard : true } );
134
    $( '#help-modal' ).modal( { keyboard : true } );
133
    // Affichage
135
    // Affichage
134
    $( '#help-modal' ).modal( 'show' );
136
    $( '#help-modal' ).modal({ show: true });
135
    // Remplacer l'autofocus qui ne fonctionne plus en HTML5
137
    // Remplacer l'autofocus qui ne fonctionne plus en HTML5
136
    // Message dans la doc de bootstrap :
138
    // Message dans la doc de bootstrap :
137
    // Due to how HTML5 defines its semantics,
139
    // Due to how HTML5 defines its semantics,
Line 250... Line 252...
250
 
252
 
251
/***************************
253
/***************************
252
 *  Lancement des scripts  *
254
 *  Lancement des scripts  *
253
 ***************************/
255
 ***************************/
254
jQuery( document ).ready( function() {
-
 
255
  // var countFiles = 2;
256
jQuery( document ).ready( function() {
256
  // // Affichage des images ou nom des documents importés
257
  // Affichage des images ou nom des documents importés
257
  // inputFile( countFiles );
258
  inputFile();
258
  // // Affichage des List-checkbox
259
  // Affichage des List-checkbox
-
 
260
  inputListCheckbox();
259
  inputListCheckbox();
261
 
260
  // // Affichage des Range
262
  // // Affichage des Range
-
 
263
  // inputRangeDisplayNumber()
261
  // inputRangeDisplayNumber()
264
 
262
  // // Modale "aide"
265
  // Modale "aide"
263
  // previewFieldHelpModal();
266
  previewFieldHelpModal();
264
  // // Ajout/suppression d'un champ texte "Autre"
-
 
265
  // if( $( '.option-other-value' , thisFieldset ).is( ':checked' ) ) {
267
  // Ajout/suppression d'un champ texte "Autre"
266
  onOtherOption();
268
  onOtherOption();
267
  collectOtherOption();
-
 
268
  // }
269
  collectOtherOption();