From 04d6d5ca99ebfd1cebb8ce06618fb3811fc1a8aa Mon Sep 17 00:00:00 2001 From: Charles Date: Thu, 9 Jan 2020 10:55:03 +0100 Subject: phpmyadmin working --- srcs/phpmyadmin/js/database/tracking.js | 93 +++++++++++++++++++++++++++++++++ 1 file changed, 93 insertions(+) create mode 100644 srcs/phpmyadmin/js/database/tracking.js (limited to 'srcs/phpmyadmin/js/database/tracking.js') diff --git a/srcs/phpmyadmin/js/database/tracking.js b/srcs/phpmyadmin/js/database/tracking.js new file mode 100644 index 0000000..2976323 --- /dev/null +++ b/srcs/phpmyadmin/js/database/tracking.js @@ -0,0 +1,93 @@ +/** + * Unbind all event handlers before tearing down the page + */ +AJAX.registerTeardown('database/tracking.js', function () { + $('body').off('click', '#trackedForm.ajax button[name="submit_mult"], #trackedForm.ajax input[name="submit_mult"]'); + $('body').off('click', '#untrackedForm.ajax button[name="submit_mult"], #untrackedForm.ajax input[name="submit_mult"]'); + $('body').off('click', 'a.delete_tracking_anchor.ajax'); +}); + +/** + * Bind event handlers + */ +AJAX.registerOnload('database/tracking.js', function () { + var $versions = $('#versions'); + $versions.find('tr:first th').append($('
')); + $versions.tablesorter({ + sortList: [[1, 0]], + headers: { + 0: { sorter: false }, + 2: { sorter: 'integer' }, + 5: { sorter: false }, + 6: { sorter: false }, + 7: { sorter: false } + } + }); + + var $noVersions = $('#noversions'); + $noVersions.find('tr:first th').append($('
')); + $noVersions.tablesorter({ + sortList: [[1, 0]], + headers: { + 0: { sorter: false }, + 2: { sorter: false } + } + }); + + var $body = $('body'); + + /** + * Handles multi submit for tracked tables + */ + $body.on('click', '#trackedForm.ajax button[name="submit_mult"], #trackedForm.ajax input[name="submit_mult"]', function (e) { + e.preventDefault(); + var $button = $(this); + var $form = $button.parent('form'); + var argsep = CommonParams.get('arg_separator'); + var submitData = $form.serialize() + argsep + 'ajax_request=true' + argsep + 'ajax_page_request=true' + argsep + 'submit_mult=' + $button.val(); + + if ($button.val() === 'delete_tracking') { + var question = Messages.strDeleteTrackingDataMultiple; + $button.confirm(question, $form.attr('action'), function (url) { + Functions.ajaxShowMessage(Messages.strDeletingTrackingData); + AJAX.source = $form; + $.post(url, submitData, AJAX.responseHandler); + }); + } else { + Functions.ajaxShowMessage(); + AJAX.source = $form; + $.post($form.attr('action'), submitData, AJAX.responseHandler); + } + }); + + /** + * Handles multi submit for untracked tables + */ + $body.on('click', '#untrackedForm.ajax button[name="submit_mult"], #untrackedForm.ajax input[name="submit_mult"]', function (e) { + e.preventDefault(); + var $button = $(this); + var $form = $button.parent('form'); + var argsep = CommonParams.get('arg_separator'); + var submitData = $form.serialize() + argsep + 'ajax_request=true' + argsep + 'ajax_page_request=true' + argsep + 'submit_mult=' + $button.val(); + Functions.ajaxShowMessage(); + AJAX.source = $form; + $.post($form.attr('action'), submitData, AJAX.responseHandler); + }); + + /** + * Ajax Event handler for 'Delete tracking' + */ + $body.on('click', 'a.delete_tracking_anchor.ajax', function (e) { + e.preventDefault(); + var $anchor = $(this); + var question = Messages.strDeleteTrackingData; + $anchor.confirm(question, $anchor.attr('href'), function (url) { + Functions.ajaxShowMessage(Messages.strDeletingTrackingData); + AJAX.source = $anchor; + var argSep = CommonParams.get('arg_separator'); + var params = Functions.getJsConfirmCommonParam(this, $anchor.getPostData()); + params += argSep + 'ajax_page_request=1'; + $.post(url, params, AJAX.responseHandler); + }); + }); +}); -- cgit