Commit Graph

32 Commits

Author SHA1 Message Date
Maurício Meneghini Fauth
38f1e46d68
Extract ResponseRenderer dependency from Navigation classes
Signed-off-by: Maurício Meneghini Fauth <mauricio@mfauth.net>
2026-02-13 21:22:16 -03:00
Liviu-Mihail Concioiu
d8de539c61 Show stylesheets only if CodeMirror is enabled
Signed-off-by: Liviu-Mihail Concioiu <liviu.concioiu@gmail.com>
2026-02-07 15:21:20 +01:00
Kamil Tekiela
cc6c910d9b
Remove setGlobalConfig()
Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>
2026-02-03 09:59:08 -03:00
Maurício Meneghini Fauth
0386b1a0f9
Replace time() with ClockInterface in UserPreferences class
Signed-off-by: Maurício Meneghini Fauth <mauricio@mfauth.net>
2026-01-19 19:22:54 -03:00
Maurício Meneghini Fauth
efa8ce431b
Introduce support for PSR-20 ClockInterface
Related to https://github.com/phpmyadmin/phpmyadmin/pull/20030

Signed-off-by: Maurício Meneghini Fauth <mauricio@mfauth.net>
2026-01-19 19:22:53 -03:00
Maurício Meneghini Fauth
d152e71161
Test Core::getNoCacheHeaders() with a frozen clock
This avoids the tests randomly failing when current time differs.

Also changes the format from RFC 1123 to RFC 7231.

Signed-off-by: Maurício Meneghini Fauth <mauricio@mfauth.net>
2026-01-18 22:16:52 -03:00
Maurício Meneghini Fauth
4eecb4d7ae
Extract Config dependency from UserPreferences class
Signed-off-by: Maurício Meneghini Fauth <mauricio@mfauth.net>
2026-01-09 11:45:49 -03:00
Maurício Meneghini Fauth
a7d53fa76d
Extract dependencies from UserPreferencesHandler class
Uses DI instead.

Signed-off-by: Maurício Meneghini Fauth <mauricio@mfauth.net>
2026-01-09 11:39:34 -03:00
Maurício Meneghini Fauth
cad4c6fc1e
Extract user preferences handling from Config class
This removes the Config's circular dependency on DatabaseInterface
class.

Signed-off-by: Maurício Meneghini Fauth <mauricio@mfauth.net>
2026-01-09 11:27:47 -03:00
Maurício Meneghini Fauth
520cd8ef8b
Move UserPreferences class to Config namespace
Signed-off-by: Maurício Meneghini Fauth <mauricio@mfauth.net>
2026-01-09 11:13:26 -03:00
Kamil Tekiela
c7fc7441b0 Convert settings to config
Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>
2026-01-09 00:16:37 +00:00
Maurício Meneghini Fauth
6db52b05b1
Extract dependencies from Header
Uses DI instead.

Signed-off-by: Maurício Meneghini Fauth <mauricio@mfauth.net>
2026-01-04 15:09:30 -03:00
Liviu-Mihail Concioiu
26ea24414e Use jquery-ui-timepicker-addon.min.js (41 KB) instead of jquery-ui-timepicker-addon.js (78 KB)
Signed-off-by: Liviu-Mihail Concioiu <liviu.concioiu@gmail.com>
2025-07-30 19:20:46 +02:00
Liviu-Mihail Concioiu
4bbe89a74c Fix unrecognized feature: 'oversized-images'
Signed-off-by: Liviu-Mihail Concioiu <liviu.concioiu@gmail.com>
2025-07-28 23:52:15 +02:00
Maurício Meneghini Fauth
120f5ae847
Remove PMA_PATH_TO_BASEDIR constant
It's always an empty string.

Signed-off-by: Maurício Meneghini Fauth <mauricio@mfauth.net>
2025-07-07 19:40:41 -03:00
Maurício Meneghini Fauth
166b7a18ea
Merge pull request #19712 from MauricioFauth/js-vendor-bundle
Import OpenLayers and Bootstrap directly using Webpack
2025-05-24 19:43:06 -03:00
Kamil Tekiela
ef85fd44b2 Move Console class to Console NS
Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>
2025-05-23 00:27:17 +01:00
Kamil Tekiela
52b8a6a831 Move History methods to a new class
Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>
2025-05-23 00:27:15 +01:00
Maurício Meneghini Fauth
3eb9ac92a3
Import Bootstrap directly using Webpack
Signed-off-by: Maurício Meneghini Fauth <mauricio@mfauth.net>
2025-05-22 18:09:06 -03:00
Kamil Tekiela
ac20c0fb1e Convert DisableShortcutKeys to $config
Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>
2025-01-24 17:13:53 +00:00
Kamil Tekiela
0d8ed00cc2 Convert SendErrorReports to use $config
Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>
2025-01-24 17:13:53 +00:00
Maurício Meneghini Fauth
887cd542b9
Remove jQuery UI's tooltip and name-conflict-fixes file
Signed-off-by: Maurício Meneghini Fauth <mauricio@mfauth.net>
2025-01-23 17:50:45 -03:00
Maurício Meneghini Fauth
03d9afc33f
Replace message global with Current::$message prop
Signed-off-by: Maurício Meneghini Fauth <mauricio@mfauth.net>
2024-12-23 19:09:46 -03:00
Kamil Tekiela
8015e4de72 Move DatabaseInterface to Dbal
Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>
2024-12-22 18:34:53 +00:00
Maurício Meneghini Fauth
90ee00efd5
Create the 'pma' global variable for Twig templates
Creates the Twig\PmaGlobalVariable class to handle the 'pma' Twig global
variable.

The idea of this global variable is to automatically inject in all
templates some useful information.

For now it only includes `pma.version` to get the phpMyAdmin version
and `pma.text_dir` to get the text direction ('ltr' or 'rtl').

Adding new variables to the `pma` global variable should be done with
caution.

- https://twig.symfony.com/doc/3.x/advanced.html#globals

Signed-off-by: Maurício Meneghini Fauth <mauricio@fauth.dev>
2024-07-09 20:30:48 -03:00
Maurício Meneghini Fauth
e4375c250d
Merge header.twig and footer.twig into base.twig
Signed-off-by: Maurício Meneghini Fauth <mauricio@fauth.dev>
2024-05-23 00:32:18 -03:00
Maurício Meneghini Fauth
4adf5a4cad
Remove isAjax from Header and Footer classes
The header and footer will always be empty when the request is ajax, so
only the content part is necessary.

Signed-off-by: Maurício Meneghini Fauth <mauricio@fauth.dev>
2024-05-22 20:42:52 -03:00
Maurício Meneghini Fauth
578ed90b8f
Remove the ResponseRenderer::disable() method
Signed-off-by: Maurício Meneghini Fauth <mauricio@fauth.dev>
2024-05-13 18:13:27 -03:00
Kamil Tekiela
82c85d26c0
Clean up of tests (#19067)
* Fix wrong type hint

Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>

* Use $this instead of parent

Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>

* setUp should be a protected method

Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>

* onNotSuccessfulTest should be protected

Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>

* $command doesn't need to be a property

Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>

* Give alertText() proper return type

Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>

* Use null-safe operator

Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>

* Call Message static constructors statically

Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>

* Call StorageEngine methods statically

Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>

* Add better type hints in PrivilegesController

Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>

* Use packed (without keys) arrays in tests

Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>

* Use type casts instead of function casts

Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>

* Use const instead of private property

Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>

* Use const instead of private property

Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>

* Fix testAuthFailsTooLongPass()

Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>

* Replace loop with array_shift

Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>

* Use ob_get_clean

Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>

* Remove duplicated code

Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>

* Use assert instead of phpdoc

Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>

---------

Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>
2024-03-20 13:34:55 -03:00
Kamil Tekiela
8754b9b0c5
Fix PHPUnit 11 deprecations (#19057)
* Metadata in doc-comments is deprecated

Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>

* Fix deprecated Group('medium') on classes

Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>

* Fix #[Group('large')]

Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>

* Fix some #[Group('medium')]

Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>

* Replace getMockForAbstractClass in NodeDatabaseChildTest

Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>

* Replace getMockForAbstractClass in PropertyItemTest

Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>

* Replace getMockForAbstractClass in OptionsPropertyGroupTest

Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>

* Replace getMockForAbstractClass in PluginPropertyItemTest

Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>

* Replace getMockForAbstractClass in GisGeometryTest

Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>

* Remove getMockForAbstractClass from StorageEngineTest

Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>

* Replace getMockForAbstractClass in OptionsPropertyOneItemTest

Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>

* Replace getMockForAbstractClass in OptionsPropertyItemTest

Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>

* Update psalm-baseline.xml

Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>

---------

Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>
2024-03-17 13:35:28 -03:00
Maurício Meneghini Fauth
104487b253
Merge branch 'QA_5_2'
Signed-off-by: Maurício Meneghini Fauth <mauricio@fauth.dev>
2024-03-13 21:03:42 -03:00
Maurício Meneghini Fauth
606f66b5df
Rename tests/classes to tests/unit
This directory is for unit tests only, so let's rename it to unit to be
more clear.

Signed-off-by: Maurício Meneghini Fauth <mauricio@fauth.dev>
2024-02-23 13:29:07 -03:00