Translated using Weblate (Bulgarian)
[phpmyadmin.git] / js / replication.js
blobbe25b570aaf1b6cd42c4df7d98f61da324ca23a7
1 /* vim: set expandtab sw=4 ts=4 sts=4: */
2 /**
3  * @fileoverview    Javascript functions used in server replication page
4  * @name            Server Replication
5  *
6  * @requires    jQuery
7  * @requires    jQueryUI
8  * @requires    js/functions.js
9  */
11 var randomServerId = Math.floor(Math.random() * 10000000);
12 var confPrefix = 'server-id=' + randomServerId + '\nlog_bin=mysql-bin\nlog_error=mysql-bin.err\n';
14 function updateConfig () {
15     var confIgnore = 'binlog_ignore_db=';
16     var confDo = 'binlog_do_db=';
17     var databaseList = '';
19     if ($('#db_select option:selected').length === 0) {
20         $('#rep').text(confPrefix);
21     } else if ($('#db_type option:selected').val() === 'all') {
22         $('#db_select option:selected').each(function () {
23             databaseList += confIgnore + $(this).val() + '\n';
24         });
25         $('#rep').text(confPrefix + databaseList);
26     } else {
27         $('#db_select option:selected').each(function () {
28             databaseList += confDo + $(this).val() + '\n';
29         });
30         $('#rep').text(confPrefix + databaseList);
31     }
34 /**
35  * Unbind all event handlers before tearing down a page
36  */
37 AJAX.registerTeardown('replication.js', function () {
38     $('#db_type').off('change');
39     $('#db_select').off('change');
40     $('#master_status_href').off('click');
41     $('#master_slaves_href').off('click');
42     $('#slave_status_href').off('click');
43     $('#slave_control_href').off('click');
44     $('#slave_errormanagement_href').off('click');
45     $('#slave_synchronization_href').off('click');
46     $('#db_reset_href').off('click');
47     $('#db_select_href').off('click');
48     $('#reset_slave').off('click');
49 });
51 AJAX.registerOnload('replication.js', function () {
52     $('#rep').text(confPrefix);
53     $('#db_type').on('change', updateConfig);
54     $('#db_select').on('change', updateConfig);
56     $('#master_status_href').on('click', function () {
57         $('#replication_master_section').toggle();
58     });
59     $('#master_slaves_href').on('click', function () {
60         $('#replication_slaves_section').toggle();
61     });
62     $('#slave_status_href').on('click', function () {
63         $('#replication_slave_section').toggle();
64     });
65     $('#slave_control_href').on('click', function () {
66         $('#slave_control_gui').toggle();
67     });
68     $('#slave_errormanagement_href').on('click', function () {
69         $('#slave_errormanagement_gui').toggle();
70     });
71     $('#slave_synchronization_href').on('click', function () {
72         $('#slave_synchronization_gui').toggle();
73     });
74     $('#db_reset_href').on('click', function () {
75         $('#db_select option:selected').prop('selected', false);
76         $('#db_select').trigger('change');
77     });
78     $('#db_select_href').on('click', function () {
79         $('#db_select option').prop('selected', true);
80         $('#db_select').trigger('change');
81     });
82     $('#reset_slave').on('click', function (e) {
83         e.preventDefault();
84         var $anchor = $(this);
85         var question = Messages.strResetSlaveWarning;
86         $anchor.confirm(question, $anchor.attr('href'), function (url) {
87             Functions.ajaxShowMessage();
88             AJAX.source = $anchor;
89             var params = Functions.getJsConfirmCommonParam({
90                 'ajax_page_request': true,
91                 'ajax_request': true
92             }, $anchor.getPostData());
93             $.post(url, params, AJAX.responseHandler);
94         });
95     });
96 });