]> git.joonet.de Git - adminer.git/commitdiff
New plugin: Set up driver, server and database in Adminer Editor
authorJakub Vrana <jakub@vrana.cz>
Thu, 3 Apr 2025 13:45:37 +0000 (15:45 +0200)
committerJakub Vrana <jakub@vrana.cz>
Thu, 3 Apr 2025 13:50:30 +0000 (15:50 +0200)
CHANGELOG.md
README.md
editor/sqlite.php
plugins/editor-setup.php [new file with mode: 0644]

index 70b494986ca34cf37748e6e683e02e66cb112795..3ef269e574624a9379dfa0fa5be9a392b0179098 100644 (file)
@@ -4,6 +4,7 @@
 - PostgreSQL: Support COPY FROM stdin in SQL query (bug #942)
 - MySQL: Display number of found rows in group queries (regression from 5.1.1)
 - non-MySQL: Parse '--' without trailing space as comment in SQL command (bug SF-842)
+- New plugin: Set up driver, server and database in Adminer Editor
 
 ## Adminer 5.1.1 (released 2025-04-02)
 - Export: Fix tar (regression from 5.0.3)
index 23b607491fd9dfdc252310c747920affea574371..856aab0184fd51f91b62bf3600c661f45f96820b 100644 (file)
--- a/README.md
+++ b/README.md
@@ -18,9 +18,6 @@ If downloaded from Git then run: `git submodule update --init`
 - `adminer/index.php` - Run development version of Adminer
 - `editor/index.php` - Run development version of Adminer Editor
 - `editor/example.php` - Example customization
-- `adminer/sqlite.php` - Development version of Adminer with SQLite allowed
-- `editor/sqlite.php` - Development version of Editor with SQLite allowed
-- `adminer/designs.php` - Development version of Adminer with `adminer.css` switcher
 - `compile.php` - Create a single file version
 - `lang.php` - Update translations
 - `tests/*.html` - Katalon Recorder test suites
index e6854cb3b98ddecc3e928d4cb7cf58c14f684c18..c9e588914e94d463c052ad9b00e7d5f0f01bb5e2 100644 (file)
@@ -1,4 +1,6 @@
 <?php
+// see ../plugins/editor-setup.php for an easier solution
+
 function adminer_object() {
        include_once "../plugins/login-password-less.php";
 
diff --git a/plugins/editor-setup.php b/plugins/editor-setup.php
new file mode 100644 (file)
index 0000000..6191e97
--- /dev/null
@@ -0,0 +1,40 @@
+<?php
+
+/** Set up driver, server and database to use with Adminer Editor
+* @link https://www.adminer.org/plugins/#use
+* @author Jakub Vrana, https://www.vrana.cz/
+* @license https://www.apache.org/licenses/LICENSE-2.0 Apache License, Version 2.0
+* @license https://www.gnu.org/licenses/gpl-2.0.html GNU General Public License, version 2 (one or other)
+*/
+class AdminerEditorSetup {
+       private $driver;
+       private $server;
+       private $database;
+
+       /**
+       * @param string $driver 'server' is MySQL, 'pgsql' is PostgreSQL, ...
+       * @param string $server null means the default host, usually localhost
+       * @param string $database null is the first available database
+       */
+       function __construct($driver = 'server', $server = null, $database = null) {
+               $this->driver = $driver;
+               $this->server = $server;
+               $this->database = $database;
+       }
+
+       function loginFormField($name, $heading, $value) {
+               if ($name == 'username') {
+                       return $heading . str_replace("value='server'", "value='$this->driver'", $value) . "\n";
+               }
+       }
+
+       function credentials() {
+               return array($this->server, $_GET["username"], Adminer\get_password());
+       }
+
+       function database() {
+               if ($this->database) {
+                       return $this->database;
+               }
+       }
+}