Projet

Général

Profil

Paste
Télécharger (1,19 ko) Statistiques
| Branche: | Révision:

root / drupal7 / sites / all / modules / ctools / page_manager / js / page-list.js @ 6e3ce7c2

1

    
2
/**
3
 * Provide some extra responses for the page list so we can have automatic
4
 * on change.
5
 */
6

    
7
Drupal.behaviors.PageManagerList = function() {
8
  var timeoutID = 0;
9
  $('form#page-manager-list-pages-form select:not(.pm-processed)')
10
    .addClass('pm-processed')
11
    .change(function() {
12
      $('#edit-pages-apply').click();
13
    });
14
  $('form#page-manager-list-pages-form input[type=text]:not(.pm-processed)')
15
    .addClass('pm-processed')
16
    .keyup(function(e) {
17
      switch (e.keyCode) {
18
        case 16: // shift
19
        case 17: // ctrl
20
        case 18: // alt
21
        case 20: // caps lock
22
        case 33: // page up
23
        case 34: // page down
24
        case 35: // end
25
        case 36: // home
26
        case 37: // left arrow
27
        case 38: // up arrow
28
        case 39: // right arrow
29
        case 40: // down arrow
30
        case 9:  // tab
31
        case 13: // enter
32
        case 27: // esc
33
          return false;
34
        default:
35
          if (!$('#edit-pages-apply').hasClass('ctools-ajaxing')) {
36
            if ((timeoutID)) {
37
              clearTimeout(timeoutID);
38
            }
39

    
40
            timeoutID = setTimeout(function() { $('#edit-pages-apply').click(); }, 300);
41
        }
42
      }
43
    });
44
}