Skip to content
Browse files

Display whitespace in texts (bug #2858042)

git-svn-id: https://adminer.svn.sourceforge.net/svnroot/adminer/trunk@1110 7c3ca157-0c34-0410-bff1-cbf682f78f5c
  • Loading branch information...
1 parent f92f2ee commit 24801a0c17038e56d3eb6f43d40c925ce361e2b3 jakubvrana committed
Showing with 14 additions and 6 deletions.
  1. +3 −3 adminer/include/editing.inc.php
  2. +8 −0 adminer/include/functions.inc.php
  3. +3 −3 adminer/select.inc.php
View
6 adminer/include/editing.inc.php
@@ -53,10 +53,10 @@ function select($result, $dbh2 = null) {
} else {
if ($blobs[$key] && !is_utf8($val)) {
$val = "<i>" . lang('%d byte(s)', strlen($val)) . "</i>"; //! link to download
- } elseif (!strlen(trim($val, " \t"))) {
+ } elseif (!strlen($val)) {
$val = "&nbsp;"; // some content to print a border
} else {
- $val = nl2br(h($val));
+ $val = whitespace(h($val));
if ($types[$key] == 254) {
$val = "<code>$val</code>";
}
@@ -124,7 +124,7 @@ function process_field($field, $type_field) {
global $dbh;
return idf_escape($field["field"]) . process_type($type_field)
. ($field["null"] ? " NULL" : " NOT NULL") // NULL for timestamp
- . (!isset($field["default"]) || $field["auto_increment"] || ereg('text|blob', $field["type"]) ? "" : " DEFAULT " . ($field["type"] == "timestamp" && eregi("^CURRENT_TIMESTAMP( on update CURRENT_TIMESTAMP)?$", $field["default"]) ? $field["default"] : $dbh->quote($field["default"])))
+ . (!$field["has_default"] || $field["auto_increment"] || ereg('text|blob', $field["type"]) ? "" : " DEFAULT " . ($field["type"] == "timestamp" && eregi("^CURRENT_TIMESTAMP( on update CURRENT_TIMESTAMP)?$", $field["default"]) ? $field["default"] : $dbh->quote($field["default"])))
. " COMMENT " . $dbh->quote($field["comment"])
;
}
View
8 adminer/include/functions.inc.php
@@ -43,6 +43,14 @@ function h($string) {
return htmlspecialchars($string, ENT_QUOTES);
}
+/** Convert text whitespace to HTML
+* @param string
+* @return string
+*/
+function whitespace($string) {
+ return nl2br(preg_replace('~(^| ) ~m', '\\1&nbsp;', str_replace("\t", " ", $string)));
+}
+
/** Escape for TD
* @param string
* @return string
View
6 adminer/select.inc.php
@@ -219,12 +219,12 @@
if (ereg('blob|binary', $fields[$key]["type"]) && strlen($val)) {
$link = h(ME . 'download=' . urlencode($TABLE) . '&field=' . urlencode($key) . '&') . $unique_idf;
}
- if (!strlen(trim($val, " \t"))) {
+ if (!strlen($val)) {
$val = "&nbsp;";
} elseif (strlen($text_length) && ereg('blob|text', $fields[$key]["type"]) && is_utf8($val)) {
- $val = nl2br(shorten_utf8($val, max(0, intval($text_length)))); // usage of LEFT() would reduce traffic but complicate query
+ $val = whitespace(shorten_utf8($val, max(0, intval($text_length)))); // usage of LEFT() would reduce traffic but complicate query
} else {
- $val = nl2br(h($val));
+ $val = whitespace(h($val));
}
if (!$link) { // link related items

0 comments on commit 24801a0

Please sign in to comment.
Something went wrong with that request. Please try again.