1
0
mirror of https://github.com/vrana/adminer.git synced 2025-08-06 14:46:36 +02:00

Move $VERSION and version() to VERSION

This commit is contained in:
Jakub Vrana
2025-03-28 17:52:49 +01:00
parent 06f0a926dd
commit f0920af6b7
10 changed files with 16 additions and 22 deletions

View File

@@ -16,7 +16,7 @@ if ($_POST && !$error) {
$is_sql = preg_match('~sql~', $_POST["format"]); $is_sql = preg_match('~sql~', $_POST["format"]);
if ($is_sql) { if ($is_sql) {
echo "-- Adminer $VERSION " . $drivers[DRIVER] . " " . str_replace("\n", " ", $connection->server_info) . " dump\n\n"; echo "-- Adminer " . VERSION . " " . $drivers[DRIVER] . " " . str_replace("\n", " ", $connection->server_info) . " dump\n\n";
if (JUSH == "sql") { if (JUSH == "sql") {
echo "SET NAMES utf8; echo "SET NAMES utf8;
SET time_zone = '+00:00'; SET time_zone = '+00:00';

View File

@@ -1,7 +1,7 @@
<?php <?php
namespace Adminer; namespace Adminer;
if (substr($VERSION, -4) != '-dev') { if (substr(VERSION, -4) != '-dev') {
if ($_SERVER["HTTP_IF_MODIFIED_SINCE"]) { if ($_SERVER["HTTP_IF_MODIFIED_SINCE"]) {
header("HTTP/1.1 304 Not Modified"); header("HTTP/1.1 304 Not Modified");
exit; exit;

View File

@@ -946,10 +946,10 @@ class Adminer {
* @param string $missing can be "auth" if there is no database connection, "db" if there is no database selected, "ns" with invalid schema * @param string $missing can be "auth" if there is no database connection, "db" if there is no database selected, "ns" with invalid schema
*/ */
function navigation(string $missing): void { function navigation(string $missing): void {
global $VERSION, $drivers, $connection, $adminer; global $drivers, $connection, $adminer;
echo "<h1>" . $adminer->name() . " <span class='version'>$VERSION"; echo "<h1>" . $adminer->name() . " <span class='version'>" . VERSION;
$new_version = $_COOKIE["adminer_version"]; $new_version = $_COOKIE["adminer_version"];
echo " <a href='https://www.adminer.org/#download'" . target_blank() . " id='version'>" . (version_compare($VERSION, $new_version) < 0 ? h($new_version) : "") . "</a>"; echo " <a href='https://www.adminer.org/#download'" . target_blank() . " id='version'>" . (version_compare(VERSION, $new_version) < 0 ? h($new_version) : "") . "</a>";
echo "</span></h1>\n"; echo "</span></h1>\n";
// this is matched by compile.php // this is matched by compile.php
switch_lang(); switch_lang();

View File

@@ -39,7 +39,7 @@ if ($_GET["script"] == "version") {
exit; exit;
} }
global $adminer, $connection, $driver, $drivers, $error, $HTTPS, $LANG, $langs, $permanent, $has_token, $token, $translations, $VERSION; // allows including Adminer inside a function global $adminer, $connection, $driver, $drivers, $error, $HTTPS, $LANG, $langs, $permanent, $has_token, $token, $translations; // allows including Adminer inside a function
if (!$_SERVER["REQUEST_URI"]) { // IIS 5 compatibility if (!$_SERVER["REQUEST_URI"]) { // IIS 5 compatibility
$_SERVER["REQUEST_URI"] = $_SERVER["ORIG_PATH_INFO"]; $_SERVER["REQUEST_URI"] = $_SERVER["ORIG_PATH_INFO"];

View File

@@ -7,7 +7,7 @@ namespace Adminer;
* @param string $title2 used after colon in title and heading, should be HTML escaped * @param string $title2 used after colon in title and heading, should be HTML escaped
*/ */
function page_header(string $title, string $error = "", $breadcrumb = array(), string $title2 = ""): void { function page_header(string $title, string $error = "", $breadcrumb = array(), string $title2 = ""): void {
global $LANG, $VERSION, $adminer, $drivers; global $LANG, $adminer, $drivers;
page_headers(); page_headers();
if (is_ajax() && $error) { if (is_ajax() && $error) {
page_messages($error); page_messages($error);
@@ -77,7 +77,7 @@ fQIDAQAB
} }
} }
echo script("mixin(document.body, {onkeydown: bodyKeydown, onclick: bodyClick" echo script("mixin(document.body, {onkeydown: bodyKeydown, onclick: bodyClick"
. (isset($_COOKIE["adminer_version"]) ? "" : ", onload: partial(verifyVersion, '$VERSION', '" . js_escape(ME) . "', '" . get_token() . "')") // $token may be empty in auth.inc.php . (isset($_COOKIE["adminer_version"]) ? "" : ", onload: partial(verifyVersion, '" . VERSION . "', '" . js_escape(ME) . "', '" . get_token() . "')") // $token may be empty in auth.inc.php
. "}); . "});
document.body.classList.replace('nojs', 'js'); document.body.classList.replace('nojs', 'js');
const offlineMessage = '" . js_escape(lang('You are offline.')) . "'; const offlineMessage = '" . js_escape(lang('You are offline.')) . "';

View File

@@ -26,12 +26,6 @@ function driver() {
return $driver; return $driver;
} }
/** Get Adminer version */
function version(): string {
global $VERSION;
return $VERSION;
}
/** Unescape database identifier /** Unescape database identifier
* @param string $idf text inside `` * @param string $idf text inside ``
*/ */

View File

@@ -1,4 +1,4 @@
<?php <?php
namespace Adminer; namespace Adminer;
$VERSION = "5.1.1-dev"; const VERSION = "5.1.1-dev";

View File

@@ -288,7 +288,7 @@ $connection = (object) array('flavor' => ''); // used in support()
$features = array("check", "call" => "routine", "dump", "event", "privileges", "procedure" => "routine", "processlist", "routine", "scheme", "sequence", "sql", "status", "trigger", "type", "user" => "privileges", "variables", "view"); $features = array("check", "call" => "routine", "dump", "event", "privileges", "procedure" => "routine", "processlist", "routine", "scheme", "sequence", "sql", "status", "trigger", "type", "user" => "privileges", "variables", "view");
$lang_ids = array(); // global variable simplifies usage in a callback function $lang_ids = array(); // global variable simplifies usage in a callback function
$file = file_get_contents(__DIR__ . "/$project/index.php"); $file = file_get_contents(__DIR__ . "/$project/index.php");
$file = preg_replace('~\*/~', "* @version $VERSION\n*/", $file, 1); $file = preg_replace('~\*/~', "* @version " . Adminer\VERSION . "\n*/", $file, 1);
if ($vendor) { if ($vendor) {
$_GET[$vendor] = true; // to load the driver $_GET[$vendor] = true; // to load the driver
include_once __DIR__ . $driver_path; include_once __DIR__ . $driver_path;
@@ -357,7 +357,7 @@ if (function_exists('stripTypes')) {
$file = stripTypes($file); $file = stripTypes($file);
} }
$file = preg_replace_callback("~compile_file\\('([^']+)'(?:, '([^']*)')?\\)~", 'compile_file', $file); // integrate static files $file = preg_replace_callback("~compile_file\\('([^']+)'(?:, '([^']*)')?\\)~", 'compile_file', $file); // integrate static files
$replace = 'preg_replace("~\\\\\\\\?.*~", "", ME) . "?file=\1&version=' . $VERSION . '"'; $replace = 'preg_replace("~\\\\\\\\?.*~", "", ME) . "?file=\1&version=' . Adminer\VERSION . '"';
$file = preg_replace('~\.\./adminer/static/(default\.css)~', '<?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/(functions\.js)"~', $replace, $file);
$file = preg_replace('~\.\./adminer/static/([^\'"]*)~', '" . h(' . $replace . ') . "', $file); $file = preg_replace('~\.\./adminer/static/([^\'"]*)~', '" . h(' . $replace . ') . "', $file);
@@ -366,6 +366,6 @@ if (function_exists('phpShrink')) {
$file = phpShrink($file); $file = phpShrink($file);
} }
$filename = $project . (preg_match('~-dev$~', $VERSION) ? "" : "-$VERSION") . ($vendor ? "-$vendor" : "") . ($_SESSION["lang"] ? "-$_SESSION[lang]" : "") . ".php"; $filename = $project . (preg_match('~-dev$~', Adminer\VERSION) ? "" : "-" . Adminer\VERSION) . ($vendor ? "-$vendor" : "") . ($_SESSION["lang"] ? "-$_SESSION[lang]" : "") . ".php";
file_put_contents($filename, $file); file_put_contents($filename, $file);
echo "$filename created (" . strlen($file) . " B).\n"; echo "$filename created (" . strlen($file) . " B).\n";

View File

@@ -596,10 +596,10 @@ ORDER BY ORDINAL_POSITION", null, "") as $row
} }
function navigation($missing) { function navigation($missing) {
global $VERSION, $adminer; global $adminer;
echo "<h1>" . $adminer->name() . " <span class='version'>$VERSION"; echo "<h1>" . $adminer->name() . " <span class='version'>" . VERSION;
$new_version = $_COOKIE["adminer_version"]; $new_version = $_COOKIE["adminer_version"];
echo " <a href='https://www.adminer.org/editor/#download'" . target_blank() . " id='version'>" . (version_compare($VERSION, $new_version) < 0 ? h($new_version) : "") . "</a>"; echo " <a href='https://www.adminer.org/editor/#download'" . target_blank() . " id='version'>" . (version_compare(VERSION, $new_version) < 0 ? h($new_version) : "") . "</a>";
echo "</span></h1>\n"; echo "</span></h1>\n";
switch_lang(); switch_lang();
if ($missing == "auth") { if ($missing == "auth") {

View File

@@ -12,7 +12,7 @@ parameters:
- identifier: includeOnce.fileNotFound # ./adminer-plugins.php - identifier: includeOnce.fileNotFound # ./adminer-plugins.php
- "~^Function (set_magic_quotes_runtime|mysql_)~" # PHP < 7 functions - "~^Function (set_magic_quotes_runtime|mysql_)~" # PHP < 7 functions
- "~an unknown class OCI-?Lob~" # this looks like PHPStan bug - "~an unknown class OCI-?Lob~" # this looks like PHPStan bug
- "~^Variable \\$(adminer|connection|driver|drivers|error|HTTPS|LANG|langs|permanent|has_token|token|translations|VERSION) might not be defined~" # declared in bootstrap.inc.php - "~^Variable \\$(adminer|connection|driver|drivers|error|HTTPS|LANG|langs|permanent|has_token|token|translations) might not be defined~" # declared in bootstrap.inc.php
- "~expects int, float given~" # this will work - "~expects int, float given~" # this will work
- "~expects bool~" # truthy values - "~expects bool~" # truthy values
- "~fread expects int<1, max>, 100000~" # 1e6 - "~fread expects int<1, max>, 100000~" # 1e6