123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100 |
- /* vim: set expandtab sw=4 ts=4 sts=4: */
- /**
- *
- *
- * @package PhpMyAdmin
- */
- /**
- * Unbind all event handlers before tearing down a page
- */
- AJAX.registerTeardown('server_status_variables.js', function () {
- $('#filterAlert').off('change');
- $('#filterText').off('keyup');
- $('#filterCategory').off('change');
- $('#dontFormat').off('change');
- });
- AJAX.registerOnload('server_status_variables.js', function () {
- // Filters for status variables
- var textFilter = null;
- var alertFilter = $('#filterAlert').prop('checked');
- var categoryFilter = $('#filterCategory').find(':selected').val();
- var text = ''; // Holds filter text
- /* 3 Filtering functions */
- $('#filterAlert').change(function () {
- alertFilter = this.checked;
- filterVariables();
- });
- $('#filterCategory').change(function () {
- categoryFilter = $(this).val();
- filterVariables();
- });
- $('#dontFormat').change(function () {
- // Hiding the table while changing values speeds up the process a lot
- $('#serverstatusvariables').hide();
- $('#serverstatusvariables').find('td.value span.original').toggle(this.checked);
- $('#serverstatusvariables').find('td.value span.formatted').toggle(! this.checked);
- $('#serverstatusvariables').show();
- }).trigger('change');
- $('#filterText').keyup(function (e) {
- var word = $(this).val().replace(/_/g, ' ');
- if (word.length === 0) {
- textFilter = null;
- } else {
- try {
- textFilter = new RegExp('(^| )' + word, 'i');
- $(this).removeClass('error');
- } catch (e) {
- if (e instanceof SyntaxError) {
- $(this).addClass('error');
- textFilter = null;
- }
- }
- }
- text = word;
- filterVariables();
- }).trigger('keyup');
- /* Filters the status variables by name/category/alert in the variables tab */
- function filterVariables () {
- var useful_links = 0;
- var section = text;
- if (categoryFilter.length > 0) {
- section = categoryFilter;
- }
- if (section.length > 1) {
- $('#linkSuggestions').find('span').each(function () {
- if ($(this).attr('class').indexOf('status_' + section) !== -1) {
- useful_links++;
- $(this).css('display', '');
- } else {
- $(this).css('display', 'none');
- }
- });
- }
- if (useful_links > 0) {
- $('#linkSuggestions').css('display', '');
- } else {
- $('#linkSuggestions').css('display', 'none');
- }
- $('#serverstatusvariables').find('th.name').each(function () {
- if ((textFilter === null || textFilter.exec($(this).text())) &&
- (! alertFilter || $(this).next().find('span.attention').length > 0) &&
- (categoryFilter.length === 0 || $(this).parent().hasClass('s_' + categoryFilter))
- ) {
- $(this).parent().css('display', '');
- } else {
- $(this).parent().css('display', 'none');
- }
- });
- }
- });
|