1
0
mirror of https://github.com/phpmyadmin/phpmyadmin.git synced 2026-10-28 07:41:55 +03:00
Commit Graph

69 Commits

Author SHA1 Message Date
Maximilian Krög
76be859196 Restrict map tile url to https protocol
Signed-off-by: Maximilian Krög <maxi_kroeg@web.de>
2026-03-08 03:23:08 +01:00
Maximilian Krög
e781d75a1e Remove X-Frame-Options header in favor of CSP frame-ancestors
Signed-off-by: Maximilian Krög <maxi_kroeg@web.de>
2026-03-08 03:18:39 +01:00
Maximilian Krög
8f15b3f4a4 Make CSP header code more readable
Signed-off-by: Maximilian Krög <maxi_kroeg@web.de>
2026-03-08 02:09:45 +01:00
Maximilian Krög
2522b3610e Remove obsolete alternative CSP headers
Signed-off-by: Maximilian Krög <maxi_kroeg@web.de>
2026-03-08 02:00:51 +01:00
William Desportes
015d75c0d1 Merge branch 'QA_5_2'
Signed-off-by: William Desportes <williamdes@wdes.fr>
2026-02-24 15:36:06 +01:00
Kamil Tekiela
520c016720 Session::getToken()
Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>
2026-02-19 21:13:00 +00:00
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
Maurício Meneghini Fauth
eb3debf24c Remove side effects from Header constructor
Lazy load Scripts class and Menu class in Header class.

Signed-off-by: Maurício Meneghini Fauth <mauricio@mfauth.net>
2026-02-13 10:01:39 -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
Maurício Meneghini Fauth
21ae1694a6 Extract dependencies from Util::expandUserString()
Uses DI instead.

Signed-off-by: Maurício Meneghini Fauth <mauricio@mfauth.net>
2026-01-30 15:21:07 -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
Kamil Tekiela
a1f1cedff5 Remove bool comparison
Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>
2026-01-14 14:24:16 +00: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
Kamil Tekiela
829f0f2140 Convert settings to config
Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>
2026-01-09 00:16:37 +00:00
Kamil Tekiela
f698a9f7c5 Remove all redundant null-coalesce
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
Maurício Meneghini Fauth
34a4e668e0 Add method Header::isMenuEnabled()
The property Header::$isMenuEnabled shouldn't be set in constructor
as this does not allow instanciating Header before connecting to the
database server.

Signed-off-by: Maurício Meneghini Fauth <mauricio@mfauth.net>
2025-12-24 16:43:23 -03:00
Kamil Tekiela
9aaf51a1a7 DocblockReturnArrayFromDirectArrayInstanceRector
Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>
2025-10-12 20:06:05 -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
a82b8e22a8 Add static analysis stub for PSR ContainerInterface
Signed-off-by: Maurício Meneghini Fauth <mauricio@mfauth.net>
2025-07-15 18:37:24 -03: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
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
Kamil Tekiela
0c7529fa54 Create userPreferences property
This is not part of the config.

Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>
2025-01-24 17:12:23 +00:00
Kamil Tekiela
aadd4a2d9a Move renderFooter & renderHeader to more appropriate classes
Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>
2025-01-24 17:12:23 +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
Kamil Tekiela
b62ffe17c7 Merge the logic into Settings
Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>
2025-01-16 19:31:50 +00:00
Maurício Meneghini Fauth
c2cdfd7fb3 Remove the buffer_message global variable
Signed-off-by: Maurício Meneghini Fauth <mauricio@mfauth.net>
2025-01-10 17:57:39 -03:00
Maurício Meneghini Fauth
5548f8fe5b Replace lang global var with Current::$lang prop
Signed-off-by: Maurício Meneghini Fauth <mauricio@mfauth.net>
2024-12-24 12:01:03 -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
258057a69c Add I18n\TextDirection enum
Signed-off-by: Maurício Meneghini Fauth <mauricio@mfauth.net>
2024-10-31 19:34:36 -03:00
Maurício Meneghini Fauth
c2b1e312b7 Move Language and LanguageManager into I18n namespace
Signed-off-by: Maurício Meneghini Fauth <mauricio@mfauth.net>
2024-10-31 18:52:01 -03: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
ebf0f11d2d Refactor ResponseRenderer::response()
Adds HTTP headers to the Response object instead of using the header()
function directly.

Signed-off-by: Maurício Meneghini Fauth <mauricio@fauth.dev>
2024-05-25 14:16:11 -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
Maurício Meneghini Fauth
9b25d12e01 Extract recent table handling from Header into a middleware
This removes the recent visited table handling from the Header class and
moves it to a new middleware.

This also removes a duplicated update via front-end.

Signed-off-by: Maurício Meneghini Fauth <mauricio@fauth.dev>
2024-04-14 17:19:26 -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
Kamil Tekiela
8e4443b17b Applying suggestions from static analysis tools (#19013)
* Drop array keys from lists

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

* Import UrlTest

When it doesn't exist in Prod, the code will still work the same.
Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>

* Drop redundant return [];

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

* Fix object access checks

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

* Use strict comparison

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

* Int keys should be specified as integers

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

* Use empty string check instead of strlen

Potential null deprecations are replaced with loose condition.

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

* Use stripos instead of *substr

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

* Simplify substr's 3rd param

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

* Remove unnecessary defaults

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

* Replace isZeroBasedArray with array_is_list

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

* Simplify texEscape()

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

* Simplify exportZeroBasedArray()

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

* Replace for loop with array_diff

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

* Replace for with foreach

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

* Remove nullable param in backquoteCompat

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

* Use null-coalescing operator

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

* Inline $result variable

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

* Turn $event into a constant

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

* Move selectDb outside the loop

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

* Fix code style order of operation

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

* Remove unnecessary isset argument

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

* Remove line break

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

* Use foreach instead of for

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

---------

Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>
2024-02-27 12:29:02 -03:00
Maurício Meneghini Fauth
d07fa7e5f4 Extract Config from Navigation class
Signed-off-by: Maurício Meneghini Fauth <mauricio@fauth.dev>
2024-02-12 19:31:08 -03:00
Maurício Meneghini Fauth
59e6feef12 Extract Config from Header class
Signed-off-by: Maurício Meneghini Fauth <mauricio@fauth.dev>
2024-02-12 19:09:32 -03:00