diff options
Diffstat (limited to 'srcs/phpmyadmin/js/page_settings.js')
| -rw-r--r-- | srcs/phpmyadmin/js/page_settings.js | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/srcs/phpmyadmin/js/page_settings.js b/srcs/phpmyadmin/js/page_settings.js new file mode 100644 index 0000000..49b0aee --- /dev/null +++ b/srcs/phpmyadmin/js/page_settings.js @@ -0,0 +1,59 @@ +/* vim: set expandtab sw=4 ts=4 sts=4: */ +/** + * @fileoverview function used for page-related settings + * @name Page-related settings + * + * @requires jQuery + * @requires jQueryUI + * @required js/functions.js + */ + +function showSettings (selector) { + var buttons = {}; + buttons[Messages.strApply] = function () { + $('.config-form').trigger('submit'); + }; + + buttons[Messages.strCancel] = function () { + $(this).dialog('close'); + }; + + // Keeping a clone to restore in case the user cancels the operation + var $clone = $(selector + ' .page_settings').clone(true); + $(selector) + .dialog({ + title: Messages.strPageSettings, + width: 700, + minHeight: 250, + modal: true, + open: function () { + $(this).dialog('option', 'maxHeight', $(window).height() - $(this).offset().top); + }, + close: function () { + $(selector + ' .page_settings').replaceWith($clone); + }, + buttons: buttons + }); +} + +function showPageSettings () { + showSettings('#page_settings_modal'); +} + +function showNaviSettings () { + showSettings('#pma_navigation_settings'); +} + +AJAX.registerTeardown('page_settings.js', function () { + $('#page_settings_icon').css('display', 'none'); + $('#page_settings_icon').off('click'); + $('#pma_navigation_settings_icon').off('click'); +}); + +AJAX.registerOnload('page_settings.js', function () { + if ($('#page_settings_modal').length) { + $('#page_settings_icon').css('display', 'inline'); + $('#page_settings_icon').on('click', showPageSettings); + } + $('#pma_navigation_settings_icon').on('click', showNaviSettings); +}); |
