Compare commits
2 commits
main
...
feature/se
Author | SHA1 | Date | |
---|---|---|---|
![]() |
7fb66e94ab | ||
![]() |
08c06b3a73 |
4 changed files with 63 additions and 9 deletions
|
@ -723,10 +723,30 @@ class Adminer {
|
|||
*/
|
||||
function editInput($table, $field, $attrs, $value) {
|
||||
if ($field["type"] == "enum") {
|
||||
return (isset($_GET["select"]) ? "<label><input type='radio'$attrs value='-1' checked><i>" . lang('original') . "</i></label> " : "")
|
||||
. ($field["null"] ? "<label><input type='radio'$attrs value=''" . ($value !== null || isset($_GET["select"]) ? "" : " checked") . "><i>NULL</i></label> " : "")
|
||||
. enum_input("radio", $attrs, $field, $value, 0) // 0 - empty
|
||||
;
|
||||
$options = array();
|
||||
$selected = $value;
|
||||
if (isset($_GET["select"])) {
|
||||
$options[-1] = lang('original');
|
||||
if ($selected === null) {
|
||||
$selected = -1;
|
||||
}
|
||||
}
|
||||
if ($field["null"]) {
|
||||
$options[""] = "NULL";
|
||||
if ($value === null && !isset($_GET["select"])) {
|
||||
$selected = "";
|
||||
}
|
||||
}
|
||||
$options[0] = lang('empty');
|
||||
preg_match_all("~'((?:[^']|'')*)'~", $field["length"], $matches);
|
||||
foreach ($matches[1] as $i => $val) {
|
||||
$val = stripcslashes(str_replace("''", "'", $val));
|
||||
$options[$i + 1] = $val;
|
||||
if ($value === $val) {
|
||||
$selected = $i + 1;
|
||||
}
|
||||
}
|
||||
return "<select$attrs>" . optionlist($options, (string) $selected, 1) . "</select>"; // 1 - use keys
|
||||
}
|
||||
return "";
|
||||
}
|
||||
|
|
|
@ -3,8 +3,20 @@ function adminer_errors($errno, $errstr) {
|
|||
return !!preg_match('~^(Trying to access array offset on( value of type)? null|Undefined array key)~', $errstr);
|
||||
}
|
||||
|
||||
error_reporting(6135); // errors and warnings
|
||||
set_error_handler('adminer_errors', E_WARNING);
|
||||
if (is_dir('sentry')) {
|
||||
error_reporting(E_ERROR | E_PARSE);
|
||||
require_once('sentry/vendor/autoload.php');
|
||||
\Sentry\init([
|
||||
'dsn' => 'https://a08396e6a19cf4de14e1818ffca9d088@o4506874261340160.ingest.us.sentry.io/4506887610105856',
|
||||
// Specify a fixed sample rate
|
||||
'traces_sample_rate' => 1.0,
|
||||
// Set a sampling rate for profiling - this is relative to traces_sample_rate
|
||||
'profiles_sample_rate' => 1.0,
|
||||
]);
|
||||
} else {
|
||||
error_reporting(6135); // errors and warnings
|
||||
set_error_handler('adminer_errors', E_WARNING);
|
||||
}
|
||||
|
||||
include "../adminer/include/coverage.inc.php";
|
||||
|
||||
|
|
|
@ -478,9 +478,30 @@ ORDER BY ORDINAL_POSITION", null, "") as $row) { //! requires MySQL 5
|
|||
|
||||
function editInput($table, $field, $attrs, $value) {
|
||||
if ($field["type"] == "enum") {
|
||||
return (isset($_GET["select"]) ? "<label><input type='radio'$attrs value='-1' checked><i>" . lang('original') . "</i></label> " : "")
|
||||
. enum_input("radio", $attrs, $field, ($value || isset($_GET["select"]) ? $value : 0), ($field["null"] ? "" : null))
|
||||
;
|
||||
$options = array();
|
||||
$selected = $value;
|
||||
if (isset($_GET["select"])) {
|
||||
$options[-1] = lang('original');
|
||||
if ($selected === null) {
|
||||
$selected = -1;
|
||||
}
|
||||
}
|
||||
if ($field["null"]) {
|
||||
$options[""] = "NULL";
|
||||
if ($value === null && !isset($_GET["select"])) {
|
||||
$selected = "";
|
||||
}
|
||||
}
|
||||
$options[0] = lang('empty');
|
||||
preg_match_all("~'((?:[^']|'')*)'~", $field["length"], $matches);
|
||||
foreach ($matches[1] as $i => $val) {
|
||||
$val = stripcslashes(str_replace("''", "'", $val));
|
||||
$options[$i + 1] = $val;
|
||||
if ($value === $val) {
|
||||
$selected = $i + 1;
|
||||
}
|
||||
}
|
||||
return "<select$attrs>" . optionlist($options, (string) $selected, 1) . "</select>"; // 1 - use keys
|
||||
}
|
||||
$options = $this->_foreignKeyOptions($table, $field["field"], $value);
|
||||
if ($options !== null) {
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
* @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)
|
||||
* @depreacted 4.8.4 is now default behavior
|
||||
*/
|
||||
class AdminerEnumOption {
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue