Skip to content

Commit 2e001c1

Browse files
committed
Remove PageSettings from the window object
Imports PageSettings in the main.js file instead of relying on the global window object. Signed-off-by: Maurício Meneghini Fauth <mauricio@fauth.dev>
1 parent 363a353 commit 2e001c1

5 files changed

Lines changed: 29 additions & 18 deletions

File tree

js/src/main.js

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ import $ from 'jquery';
22
import { AJAX } from './ajax.js';
33
import { Functions } from './functions.js';
44
import { Navigation } from './navigation.js';
5+
import { PageSettings } from './page_settings.js';
56

67
/* global Indexes */
78

@@ -41,5 +42,10 @@ AJAX.registerOnload('indexes.js', Indexes.on());
4142

4243
$(() => Functions.checkNumberOfFields());
4344

44-
AJAX.registerTeardown('page_settings.js', window.PageSettings.off());
45-
AJAX.registerOnload('page_settings.js', window.PageSettings.on());
45+
AJAX.registerTeardown('main.js', () => {
46+
PageSettings.off();
47+
});
48+
49+
AJAX.registerOnload('main.js', () => {
50+
PageSettings.on();
51+
});

js/src/page_settings.js

Lines changed: 21 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -33,18 +33,26 @@ function showNaviSettings () {
3333
showSettings('#pma_navigation_settings');
3434
}
3535

36-
window.PageSettings = {};
37-
38-
window.PageSettings.off = () => function () {
39-
$('#page_settings_icon').css('display', 'none');
40-
$('#page_settings_icon').off('click');
41-
$('#pma_navigation_settings_icon').off('click');
36+
const PageSettings = {
37+
/**
38+
* @return {void}
39+
*/
40+
off: () => {
41+
$('#page_settings_icon').css('display', 'none');
42+
$('#page_settings_icon').off('click');
43+
$('#pma_navigation_settings_icon').off('click');
44+
},
45+
46+
/**
47+
* @return {void}
48+
*/
49+
on: () => {
50+
if ($('#page_settings_modal').length) {
51+
$('#page_settings_icon').css('display', 'inline');
52+
$('#page_settings_icon').on('click', showPageSettings);
53+
}
54+
$('#pma_navigation_settings_icon').on('click', showNaviSettings);
55+
},
4256
};
4357

44-
window.PageSettings.on = () => function () {
45-
if ($('#page_settings_modal').length) {
46-
$('#page_settings_icon').css('display', 'inline');
47-
$('#page_settings_icon').on('click', showPageSettings);
48-
}
49-
$('#pma_navigation_settings_icon').on('click', showNaviSettings);
50-
};
58+
export { PageSettings };

libraries/classes/Header.php

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -147,7 +147,6 @@ private function addDefaultScripts(): void
147147
$this->scripts->addFile('navigation.js');
148148
$this->scripts->addFile('indexes.js');
149149
$this->scripts->addFile('common.js');
150-
$this->scripts->addFile('page_settings.js');
151150
$this->scripts->addFile('main.js');
152151

153152
$this->scripts->addCode($this->getJsParamsCode());

test/classes/HeaderTest.php

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -269,7 +269,6 @@ public function testAddedDefaultScripts(): void
269269
['name' => 'navigation.js', 'fire' => 1],
270270
['name' => 'indexes.js', 'fire' => 1],
271271
['name' => 'common.js', 'fire' => 1],
272-
['name' => 'page_settings.js', 'fire' => 1],
273272
['name' => 'main.js', 'fire' => 1],
274273
];
275274
$this->assertSame($expected, $scripts->getFiles());

webpack.config.cjs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,6 @@ module.exports = [
5353
'name-conflict-fixes': './js/src/name-conflict-fixes.js',
5454
'navigation': './js/src/navigation.js',
5555
'normalization': './js/src/normalization.js',
56-
'page_settings': './js/src/page_settings.js',
5756
'replication': './js/src/replication.js',
5857
'server/databases': './js/src/server/databases.js',
5958
'server/plugins': './js/src/server/plugins.js',

0 commit comments

Comments
 (0)