replication.js 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. /* vim: set expandtab sw=4 ts=4 sts=4: */
  2. /**
  3. * for server_replication.php
  4. *
  5. */
  6. var random_server_id = Math.floor(Math.random() * 10000000);
  7. var conf_prefix = "server-id=" + random_server_id + "\nlog_bin=mysql-bin\nlog_error=mysql-bin.err\n";
  8. function update_config()
  9. {
  10. var conf_ignore = "binlog_ignore_db=";
  11. var conf_do = "binlog_do_db=";
  12. var database_list = '';
  13. if ($('#db_select option:selected').size() === 0) {
  14. $('#rep').text(conf_prefix);
  15. } else if ($('#db_type option:selected').val() == 'all') {
  16. $('#db_select option:selected').each(function () {
  17. database_list += conf_ignore + $(this).val() + "\n";
  18. });
  19. $('#rep').text(conf_prefix + database_list);
  20. } else {
  21. $('#db_select option:selected').each(function () {
  22. database_list += conf_do + $(this).val() + "\n";
  23. });
  24. $('#rep').text(conf_prefix + database_list);
  25. }
  26. }
  27. /**
  28. * Unbind all event handlers before tearing down a page
  29. */
  30. AJAX.registerTeardown('replication.js', function () {
  31. $('#db_type').unbind('change');
  32. $('#db_select').unbind('change');
  33. $('#master_status_href').unbind('click');
  34. $('#master_slaves_href').unbind('click');
  35. $('#slave_status_href').unbind('click');
  36. $('#slave_control_href').unbind('click');
  37. $('#slave_errormanagement_href').unbind('click');
  38. $('#slave_synchronization_href').unbind('click');
  39. $('#db_reset_href').unbind('click');
  40. });
  41. AJAX.registerOnload('replication.js', function () {
  42. $('#rep').text(conf_prefix);
  43. $('#db_type').change(update_config);
  44. $('#db_select').change(update_config);
  45. $('#master_status_href').click(function () {
  46. $('#replication_master_section').toggle();
  47. });
  48. $('#master_slaves_href').click(function () {
  49. $('#replication_slaves_section').toggle();
  50. });
  51. $('#slave_status_href').click(function () {
  52. $('#replication_slave_section').toggle();
  53. });
  54. $('#slave_control_href').click(function () {
  55. $('#slave_control_gui').toggle();
  56. });
  57. $('#slave_errormanagement_href').click(function () {
  58. $('#slave_errormanagement_gui').toggle();
  59. });
  60. $('#slave_synchronization_href').click(function () {
  61. $('#slave_synchronization_gui').toggle();
  62. });
  63. $('#db_reset_href').click(function () {
  64. $('#db_select option:selected').prop('selected', false);
  65. });
  66. });