Translated using Weblate (Belarusian)
[phpmyadmin.git] / js / shortcuts_handler.js
blob530a1bd9ee1701f363b4daa3929bd7f86628f31e
1 /* vim: set expandtab sw=4 ts=4 sts=4: */
2 /**
3  * @fileoverview    Handle shortcuts in various pages
4  * @name            Shortcuts handler
5  *
6  * @requires    jQuery
7  * @requires    jQueryUI
8  */
10 /**
11  * Register key events on load
12  */
13 $(document).ready(function() {
14     var databaseOp = false;
15     var tableOp = false;
16     var keyD = 68;
17     var keyT = 84;
18     var keyK = 75;
19     var keyS = 83;
20     var keyF = 70;
21     var keyE = 69;
22     var keyH = 72;
23     var keyC = 67;
24     var keyBackSpace = 8;
25     $(document).keyup(function(e) {
26         if( e.target.nodeName === 'INPUT' || e.target.nodeName === 'TEXTAREA' || e.target.nodeName === 'SELECT' ) {
27             return;
28         }
30         if(e.keyCode === keyD) {
31             setTimeout(function() {
32                 databaseOp = false;
33             }, 2000);
34         }
35         else if(e.keyCode === keyT) {
36             setTimeout(function() {
37                 tableOp = false;
38             }, 2000);
39         }
40     });
41     $(document).keydown(function(e) {
42         if ( e.ctrlKey && e.altKey && e.keyCode === keyC ) {
43             PMA_console.toggle();
44         }
46         if( e.ctrlKey && e.keyCode == keyK ) {
47             e.preventDefault();
48             PMA_console.toggle();
49         }
51         if( e.target.nodeName === 'INPUT' || e.target.nodeName === 'TEXTAREA' || e.target.nodeName === 'SELECT' ) {
52             return;
53         }
55         var isTable;
56         var isDb;
57         if(e.keyCode === keyD) {
58             databaseOp = true;
59         }
60         else if(e.keyCode === keyK) {
61             e.preventDefault();
62             PMA_console.toggle();
63         }
64         else if(e.keyCode === keyS) {
65             if(databaseOp === true) {
66                 isTable = PMA_commonParams.get('table');
67                 isDb = PMA_commonParams.get('db');
68                 if(isDb && ! isTable) {
69                     $('.tab .ic_b_props').first().trigger('click');
70                 }
71             }
72             else if(tableOp === true) {
73                 isTable = PMA_commonParams.get('table');
74                 isDb = PMA_commonParams.get('db');
75                 if(isDb && isTable) {
76                     $('.tab .ic_b_props').first().trigger('click');
77                 }
78             }
79             else{
80                 $('#pma_navigation_settings_icon').trigger('click');
81             }
82         }
83         else if(e.keyCode === keyF) {
84             if(databaseOp === true) {
85                 isTable = PMA_commonParams.get('table');
86                 isDb = PMA_commonParams.get('db');
87                 if(isDb && ! isTable) {
88                     $('.tab .ic_b_search').first().trigger('click');
89                 }
90             }
91             else if(tableOp === true) {
92                 isTable = PMA_commonParams.get('table');
93                 isDb = PMA_commonParams.get('db');
94                 if(isDb && isTable) {
95                     $('.tab .ic_b_search').first().trigger('click');
96                 }
97             }
98         }
99         else if(e.keyCode === keyT) {
100             tableOp = true;
101         }
102         else if(e.keyCode === keyE) {
103             $('.ic_b_export').first().trigger('click');
104         }
105         else if(e.keyCode === keyBackSpace) {
106             window.history.back();
107         }
108         else if(e.keyCode === keyH) {
109             $('.ic_b_home').first().trigger('click');
110         }
111     });