Skip to content

Commit

Permalink
PostgreSQL bool in Editor
Browse files Browse the repository at this point in the history
  • Loading branch information
vrana committed Mar 24, 2011
1 parent ebc0c52 commit 2dbc738
Show file tree
Hide file tree
Showing 3 changed files with 13 additions and 6 deletions.
10 changes: 5 additions & 5 deletions editor/include/adminer.inc.php
Original file line number Diff line number Diff line change
Expand Up @@ -170,13 +170,13 @@ function selectVal($val, $link, $field) {
$return = "<img src='$link' alt='$return'>";
}
}
if (ereg("(tinyint|bit)\\(1\\)", $field["full_type"]) && $return != "&nbsp;") { // bool
if (like_bool($field) && $return != "&nbsp;") { // bool
$return = '<img src="' . ($val ? "../adminer/static/plus.gif" : "../adminer/static/cross.gif") . '" alt="' . h($val) . '">';
}
if ($link) {
$return = "<a href='$link'>$return</a>";
}
if (!$link && !ereg("(tinyint|bit)\\(1\\)", $field["full_type"]) && ereg('int|float|double|decimal', $field["type"])) {
if (!$link && !like_bool($field) && ereg('int|float|double|decimal', $field["type"])) {
$return = "<div class='number'>$return</div>"; // Firefox doesn't support <colgroup>
} elseif (ereg('date', $field["type"])) {
$return = "<div class='datetime'>$return</div>";
Expand Down Expand Up @@ -411,7 +411,7 @@ function editFunctions($field) {
if ($field["null"] && ereg('blob', $field["type"])) {
$return["NULL"] = lang('empty');
}
$return[""] = ($field["null"] || $field["auto_increment"] || ereg("(tinyint|bit)\\(1\\)", $field["full_type"]) ? "" : "*");
$return[""] = ($field["null"] || $field["auto_increment"] || like_bool($field) ? "" : "*");
//! respect driver
if (ereg('date|time', $field["type"])) {
$return["now"] = lang('now');
Expand All @@ -432,7 +432,7 @@ function editInput($table, $field, $attrs, $value) {
if ($options) {
return "<select$attrs>" . optionlist($options, $value, true) . "</select>";
}
if (ereg("(tinyint|bit)\\(1\\)", $field["full_type"])) { // bool
if (like_bool($field)) {
return '<input type="checkbox" value="' . h($value ? $value : 1) . '"' . ($value ? ' checked' : '') . "$attrs>";
}
$hint = "";
Expand Down Expand Up @@ -460,7 +460,7 @@ function processInput($field, $value, $function = "") {
$return = ($match["p1"] != "" ? $match["p1"] : ($match["p2"] != "" ? ($match["p2"] < 70 ? 20 : 19) . $match["p2"] : gmdate("Y"))) . "-$match[p3]$match[p4]-$match[p5]$match[p6]" . end($match);
}
$return = ($field["type"] == "bit" && ereg('^[0-9]+$', $value) ? $return : q($return));
if (!ereg('char|text', $field["type"]) && !ereg("(tinyint|bit)\\(1\\)", $field["full_type"]) && $value == "") {
if (!ereg('char|text', $field["type"]) && !like_bool($field) && $value == "") {
$return = "NULL";
} elseif (ereg('^(md5|sha1)$', $function)) {
$return = "$function($return)";
Expand Down
8 changes: 8 additions & 0 deletions editor/include/editing.inc.php
Original file line number Diff line number Diff line change
Expand Up @@ -43,3 +43,11 @@ function send_mail($email, $subject, $message, $from = "", $files = array("error
;
return mail($email, email_header($subject), $beginning . $message . $attachments, $headers);
}

/** Check whether the column looks like boolean
* @param array single field returned from fields()
* @return bool
*/
function like_bool($field) {
return ereg("bool|(tinyint|bit)\\(1\\)", $field["full_type"]);
}
1 change: 0 additions & 1 deletion todo.txt
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,6 @@ Users - SELECT * FROM pg_user
ORDER BY COUNT(*)
Export - http:https://www.postgresql.org/docs/8.4/static/functions-info.html
Column rights - http:https://www.postgresql.org/docs/8.4/static/functions-info.html
bool in Editor

MS SQL:
Display default value
Expand Down

0 comments on commit 2dbc738

Please sign in to comment.