mirror of
https://github.com/vrana/adminer.git
synced 2025-08-09 08:06:59 +02:00
Delete incorporated plugin
This commit is contained in:
@@ -771,6 +771,7 @@ AND typelem = 0"
|
|||||||
}
|
}
|
||||||
|
|
||||||
function type_values($id) {
|
function type_values($id) {
|
||||||
|
// to get values from type string: unnest(enum_range(NULL::"$type"))
|
||||||
$enums = get_vals("SELECT enumlabel FROM pg_enum WHERE enumtypid = $id ORDER BY enumsortorder");
|
$enums = get_vals("SELECT enumlabel FROM pg_enum WHERE enumtypid = $id ORDER BY enumsortorder");
|
||||||
return ($enums ? "'" . implode("', '", array_map('addslashes', $enums)) . "'" : "");
|
return ($enums ? "'" . implode("', '", array_map('addslashes', $enums)) . "'" : "");
|
||||||
}
|
}
|
||||||
|
@@ -1,49 +0,0 @@
|
|||||||
<?php
|
|
||||||
|
|
||||||
/** Use <select><option> for enum edit instead of regular input text on enum type in PostgreSQL
|
|
||||||
* @link https://www.adminer.org/plugins/#use
|
|
||||||
* @author Adam Kuśmierz, http://kusmierz.be/
|
|
||||||
* @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 AdminerEnumTypes {
|
|
||||||
var $_types = null;
|
|
||||||
|
|
||||||
function editInput($table, $field, $attrs, $value) {
|
|
||||||
// PostgreSQL only
|
|
||||||
if (!in_array(strtolower(Adminer\connection()->extension), array('pgsql', 'pdo_pgsql'))) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
// read types and "cache" it
|
|
||||||
if (is_null($this->_types)) {
|
|
||||||
$types = Adminer\types();
|
|
||||||
$this->_types = array();
|
|
||||||
|
|
||||||
foreach ($types as $type) {
|
|
||||||
$values = Adminer\get_vals("SELECT unnest(enum_range(NULL::$type))::text AS value");
|
|
||||||
if (!empty($values) && is_array($values)) {
|
|
||||||
$this->_types[$type] = $values;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (array_key_exists($field["type"], $this->_types)) {
|
|
||||||
$options = $this->_types[$field["type"]];
|
|
||||||
$options = array_combine($options, $options);
|
|
||||||
$selected = $value;
|
|
||||||
|
|
||||||
if ($field["null"]) {
|
|
||||||
$options = array("" => array("" => "NULL")) + $options;
|
|
||||||
if ($value === null && !isset($_GET["select"])) {
|
|
||||||
$selected = "";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (isset($_GET["select"])) {
|
|
||||||
$options = array("" => array(-1 => Adminer\lang('original'))) + $options;
|
|
||||||
}
|
|
||||||
|
|
||||||
return "<select$attrs>" . Adminer\optionlist($options, (string) $selected, 1) . "</select>";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
Reference in New Issue
Block a user