Proyectos de Subversion Moodle

Rev

| Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
1 efrain 1
/**
2
 * Utility that makes it possible to hide fields when a checkbox is unchecked
3
 */
4
(function ($) {
5
  function setupHiding() {
6
    var $toggler = $(this);
7
 
8
    // Getting the field which should be hidden:
9
    var $subject = $($toggler.data('h5p-visibility-subject-selector'));
10
 
11
    var toggle = function () {
12
      $subject.toggle($toggler.is(':checked'));
13
    };
14
 
15
    $toggler.change(toggle);
16
    toggle();
17
  }
18
 
19
  function setupRevealing() {
20
    var $button = $(this);
21
 
22
    // Getting the field which should have the value:
23
    var $input = $('#' + $button.data('control'));
24
 
25
    if (!$input.data('value')) {
26
      $button.remove();
27
      return;
28
    }
29
 
30
    // Setup button action
31
    var revealed = false;
32
    var text = $button.html();
33
    $button.click(function () {
34
      if (revealed) {
35
        $input.val('');
36
        $button.html(text);
37
        revealed = false;
38
      }
39
      else {
40
        $input.val($input.data('value'));
41
        $button.html($button.data('hide'));
42
        revealed = true;
43
      }
44
    });
45
  }
46
 
47
  $(document).ready(function () {
48
    // Get the checkboxes making other fields being hidden:
49
    $('.h5p-visibility-toggler').each(setupHiding);
50
 
51
    // Get the buttons making other fields have hidden values:
52
    $('.h5p-reveal-value').each(setupRevealing);
53
  });
54
})(H5P.jQuery);