1
0
mirror of https://github.com/vrana/adminer.git synced 2025-08-05 22:27:24 +02:00

Support adminer.css + adminer-dark.css together

This commit is contained in:
Jakub Vrana
2025-03-15 08:51:51 +01:00
parent a72e053520
commit e0283543f3
3 changed files with 12 additions and 14 deletions

View File

@@ -31,23 +31,21 @@ function page_header($title, $error = "", $breadcrumb = array(), $title2 = "") {
<link rel="stylesheet" href="../adminer/static/default.css">
<?php
$css = $adminer->css();
$dark = ($css == array_filter($css, function ($filename) {
return preg_match('~-dark~', $filename);
}));
if ($dark) { // we need to load this before user styles
echo "<link rel='stylesheet' media='(prefers-color-scheme: dark)' href='../adminer/static/dark.css'>\n";
}
foreach ($css as $val) {
echo "<link rel='stylesheet' href='" . h($val) . "'>\n";
$dark = (count($css) == 1 ? !!preg_match('~-dark~', $css[0]) : null);
if ($dark !== false) {
echo "<link rel='stylesheet'" . ($dark ? "" : " media='(prefers-color-scheme: dark)'") . " href='../adminer/static/dark.css'>\n";
}
// this is matched by compile.php
echo script_src("../adminer/static/functions.js");
echo script_src("static/editing.js");
if ($adminer->head($dark)) {
echo "<link rel='shortcut icon' type='image/x-icon' href='../adminer/static/favicon.ico'>\n";
echo "<link rel='apple-touch-icon' href='../adminer/static/favicon.ico'>\n";
}
foreach ($css as $val) {
echo "<link rel='stylesheet'" . (preg_match('~-dark~', $val) && !$dark ? " media='(prefers-color-scheme: dark)'" : "") . " href='" . h($val) . "'>\n";
}
?>
<?php if ($adminer->head($css ? $dark : null)) { ?>
<link rel="shortcut icon" type="image/x-icon" href="../adminer/static/favicon.ico">
<link rel="apple-touch-icon" href="../adminer/static/favicon.ico">
<?php } ?>
<body class="<?php echo lang('ltr'); ?> nojs">
<?php

View File

@@ -1,7 +1,7 @@
Adminer dev:
CSS: Dark mode syntax highlighting
SQL textarea: Open help on Ctrl+click
Designs named adminer-dark.css use dark syntax highlighting
Designs named adminer-dark.css use dark basic style
Adminer 5.0.5 (released 2025-03-13):
MySQL: Display converting function for binary, bit or geometry fields

View File

@@ -346,7 +346,7 @@ $file = preg_replace('~\s+echo script_src\("\.\./externals/jush/modules/jush-(te
$file = preg_replace('~echo .*/jush(-dark)?.css\'>.*~', '', $file); // merged into default.css or dark.css
$file = preg_replace_callback("~compile_file\\('([^']+)'(?:, '([^']*)')?\\)~", 'compile_file', $file); // integrate static files
$replace = 'preg_replace("~\\\\\\\\?.*~", "", ME) . "?file=\1&version=' . $VERSION . '"';
$file = preg_replace('~\.\./adminer/static/(default\.css|favicon\.ico)~', '<?php echo h(' . $replace . '); ?>', $file);
$file = preg_replace('~\.\./adminer/static/(default\.css)~', '<?php echo h(' . $replace . '); ?>', $file);
$file = preg_replace('~"\.\./adminer/static/(functions\.js)"~', $replace, $file);
$file = preg_replace('~\.\./adminer/static/([^\'"]*)~', '" . h(' . $replace . ') . "', $file);
$file = preg_replace('~"\.\./externals/jush/modules/(jush\.js)"~', $replace, $file);