' . h($name) . '
'
: ''
) . "\n" . ($collations ? html_select("collation", array("" => "(" . lang('collation') . ")") + $collations, $row["collation"]) . doc_link(array(
@@ -73,8 +73,8 @@ echo ($_POST["add_x"] || strpos($name, "\n")
" . confirm(lang('Drop %s?', DB)) . "\n";
-} elseif (!$_POST["add_x"] && $_GET["db"] == "") {
- echo "\n";
+} elseif (!$_POST["add"] && $_GET["db"] == "") {
+ echo icon("plus", "add[0]", "+", lang('Add next')) . "\n";
}
echo input_token();
?>
diff --git a/adminer/file.inc.php b/adminer/file.inc.php
index d468b77f..4ae73a5c 100644
--- a/adminer/file.inc.php
+++ b/adminer/file.inc.php
@@ -35,21 +35,5 @@ if ($_GET["file"] == "favicon.ico") {
../externals/jush/modules/jush-mssql.js;
../externals/jush/modules/jush-oracle.js;
../externals/jush/modules/jush-simpledb.js', 'minify_js'));
-} else {
- header("Content-Type: image/gif");
- switch ($_GET["file"]) {
- case "plus.gif":
- echo compile_file('../adminer/static/plus.gif');
- break;
- case "cross.gif":
- echo compile_file('../adminer/static/cross.gif');
- break;
- case "up.gif":
- echo compile_file('../adminer/static/up.gif');
- break;
- case "down.gif":
- echo compile_file('../adminer/static/down.gif');
- break;
- }
}
exit;
diff --git a/adminer/include/editing.inc.php b/adminer/include/editing.inc.php
index 8ef72772..e84b355d 100644
--- a/adminer/include/editing.inc.php
+++ b/adminer/include/editing.inc.php
@@ -347,7 +347,7 @@ function edit_fields($fields, $collations, $type = "TABLE", $foreign_keys = arra
echo "
\n";
echo script("mixin(qsl('tbody'), {onclick: editingClick, onkeydown: editingKeydown, oninput: editingInput});");
foreach ($fields as $i => $field) {
@@ -373,11 +373,11 @@ function edit_fields($fields, $collations, $type = "TABLE", $foreign_keys = arra
}
echo "";
echo (support("move_col") ?
- " "
- . " "
- . " "
+ icon("plus", "add[$i]", "+", lang('Add next')) . " "
+ . icon("up", "up[$i]", "↑", lang('Move up')) . " "
+ . icon("down", "down[$i]", "↓", lang('Move down')) . " "
: "");
- echo ($orig == "" || support("drop_col") ? "" : "");
+ echo ($orig == "" || support("drop_col") ? icon("cross", "drop_col[$i]", "x", lang('Remove')) : "");
}
}
diff --git a/adminer/include/html.inc.php b/adminer/include/html.inc.php
index 30f34f0a..33f5b6e1 100644
--- a/adminer/include/html.inc.php
+++ b/adminer/include/html.inc.php
@@ -534,3 +534,14 @@ function edit_form($table, $fields, $row, $update) {
echo input_token();
echo "\n";
}
+
+/** Get button with icon
+* @param string
+* @param string
+* @param string
+* @param string
+* @return string
+*/
+function icon($icon, $name, $html, $title) {
+ return "";
+}
diff --git a/adminer/indexes.inc.php b/adminer/indexes.inc.php
index 0e954299..c80e4ac4 100644
--- a/adminer/indexes.inc.php
+++ b/adminer/indexes.inc.php
@@ -112,7 +112,7 @@ if ($lengths || support("descidx")) {
}
?>
|
- |
+ |
\n";
- echo " | " . script("qsl('input').onclick = partial(editingRemoveRow, 'indexes\$1[type]');");
+ echo " | " . icon("cross", "drop_col[$j]", "x", lang('Remove')) . script("qsl('button').onclick = partial(editingRemoveRow, 'indexes\$1[type]');");
}
$j++;
}
diff --git a/adminer/static/default.css b/adminer/static/default.css
index 8a748078..8bb4ab04 100644
--- a/adminer/static/default.css
+++ b/adminer/static/default.css
@@ -61,8 +61,13 @@ input.wayoff { left: -1000px; position: absolute; }
.sqlarea { width: 98%; }
.sql-footer { margin-bottom: 2.5em; }
.explain table { white-space: pre; }
-.icon { width: 18px; height: 18px; background-color: navy; }
+.icon { width: 18px; height: 18px; background-color: navy; border: 0; vertical-align: middle; }
+.icon span { display: none; }
.icon:hover { background-color: red; }
+.icon-up { background-image: url(up.gif); }
+.icon-down { background-image: url(down.gif); }
+.icon-plus { background-image: url(plus.gif); }
+.icon-cross { background-image: url(cross.gif); }
.size { width: 7ex; }
.help { cursor: help; }
.footer { position: sticky; bottom: 0; margin-right: -20px; border-top: 20px solid rgba(255, 255, 255, .7); border-image: linear-gradient(rgba(255, 255, 255, .2), #fff) 100% 0; }
diff --git a/adminer/static/editing.js b/adminer/static/editing.js
index 6a517166..3a17c624 100644
--- a/adminer/static/editing.js
+++ b/adminer/static/editing.js
@@ -249,11 +249,7 @@ function editFields() {
* @return boolean false to cancel action
*/
function editingClick(event) {
- let el = event.target;
- if (!isTag(el, 'input')) {
- el = parentTag(el, 'label');
- el = el && qs('input', el);
- }
+ let el = parentTag(event.target, 'button');
if (el) {
const name = el.name;
if (/^add\[/.test(name)) {
@@ -264,18 +260,24 @@ function editingClick(event) {
editingMoveRow.call(el);
} else if (/^drop_col\[/.test(name)) {
editingRemoveRow.call(el, 'fields$1[field]');
- } else {
- if (name == 'auto_increment_col') {
- const field = el.form['fields[' + el.value + '][field]'];
- if (!field.value) {
- field.value = 'id';
- field.oninput();
- }
- }
- return;
}
return false;
}
+ el = event.target;
+ if (!isTag(el, 'input')) {
+ el = parentTag(el, 'label');
+ el = el && qs('input', el);
+ }
+ if (el) {
+ const name = el.name;
+ if (name == 'auto_increment_col') {
+ const field = el.form['fields[' + el.value + '][field]'];
+ if (!field.value) {
+ field.value = 'id';
+ field.oninput();
+ }
+ }
+ }
}
/** Handle input on fields editing
@@ -334,11 +336,11 @@ function editingAddRow(focus) {
const x = match[0] + (match[2] ? added.substr(match[2].length) : added) + '1';
const row = parentTag(this, 'tr');
const row2 = cloneNode(row);
- let tags = qsa('select', row);
- let tags2 = qsa('select', row2);
+ let tags = qsa('select, input, button', row);
+ let tags2 = qsa('select, input, button', row2);
for (let i=0; i < tags.length; i++) {
tags2[i].name = tags[i].name.replace(/[0-9.]+/, x);
- tags2[i].selectedIndex = tags[i].selectedIndex;
+ tags2[i].selectedIndex = (/\[(generated)/.test(tags[i].name) ? 0 : tags[i].selectedIndex);
}
tags = qsa('input', row);
tags2 = qsa('input', row2);
@@ -348,13 +350,11 @@ function editingAddRow(focus) {
tags2[i].value = x;
tags2[i].checked = false;
}
- tags2[i].name = tags[i].name.replace(/([0-9.]+)/, x);
if (/\[(orig|field|comment|default)/.test(tags[i].name)) {
tags2[i].value = '';
}
if (/\[(generated)/.test(tags[i].name)) {
tags2[i].checked = false;
- tags2[i].selectedIndex = 0;
}
}
tags[0].oninput = editingNameChange;
diff --git a/compile.php b/compile.php
index 6d127f36..47a95dfd 100755
--- a/compile.php
+++ b/compile.php
@@ -202,6 +202,10 @@ if (!$translations) {
}
function minify_css($file) {
+ global $project;
+ if ($project == "editor") {
+ $file = preg_replace('~.*\.gif.*~', '', $file);
+ }
$file = preg_replace_callback('~url\((\w+\.(gif))\)~', function ($match) {
return "url(data:image/$match[2];base64," . base64_encode(file_get_contents(__DIR__ . "/adminer/static/$match[1]")) . ")";
}, $file);
@@ -329,7 +333,7 @@ if ($vendor) {
}
if ($project == "editor") {
$file = preg_replace('~;.\.\/externals/jush/jush(-dark)?\.css~', '', $file);
- $file = preg_replace('~compile_file\(\'\.\./(externals/jush/modules/jush\.js|adminer/static/[^.]+\.gif)[^)]+\)~', "''", $file);
+ $file = preg_replace('~compile_file\(\'\.\./(externals/jush/modules/jush\.js)[^)]+\)~', "''", $file);
}
$file = preg_replace_callback("~lang\\('((?:[^\\\\']+|\\\\.)*)'([,)])~s", 'lang_ids', $file);
$file = preg_replace_callback('~\b(include|require) "([^"]*\$LANG.inc.php)";~', 'put_file_lang', $file);
diff --git a/designs/haeckel/adminer.css b/designs/haeckel/adminer.css
index ec501818..274f6ff8 100644
--- a/designs/haeckel/adminer.css
+++ b/designs/haeckel/adminer.css
@@ -311,36 +311,24 @@ html>/**/body #content a[href*="&sql="] {
padding-left: 22px;
}
/* Inline plus */
-html>/**/body #content input[src*="file=plus.gif"] {
+html>/**/body #content .icon-plus {
background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAelJREFUeNqkU81qFEEQ/tr50UncrI4iwq6oRJCIIV6zxFxE9iCIbxHwXXwA32CPXgRFEZFgPGgiIcfNn0hgYU1mnV070zPTbXXP7Mwke4hgNzVT3f3VV9VV1Uwphf8ZDJ2r9GUXSVuhdZvEP8PmkOQtFF5CqaFttpRauXN99vmDmwtNz7ngVtGnI+QxF9/3Nme3ezt6+cJGavbbCzfmm+JP5ApEBXgwGJh/vV6vcrj3G/ea2wc77ZzAePAtWG54HBaoMAzxefm10VufnqBWqxVnnue5ZGeuaiPJQoyiCJzzAiSEOKFXzxhjGNsVBBpUJdF6v9836/0f+5BSZga2Dd/3JwniOMZoNMK3x+/R6/UwHA4NgeM4+PronTHUMvemhTAKJwnSNAVPOLrdrsm8BmvjseFYQDVKnKRCEGfKkThC4AR4uPU0uyhhNpY+GKP5j8samY0ZcsaodPGpCAIrgJoifWpccJReL+vUl3WUNCciENQBOIcqqiQ4j5JYNxfNMoLIZPcwllQGD2UXkse59VamN072suSSSiZ1S8PCLt3nFq5Jnt61G+40m2aWua+dvwo/13MhnDj+MviZHkQddMQaM5AZdhtL7BmuYJHWl854TAF+YQ2r6hV+q12Wp6eGMs//OhLd8X8FGACYiuElnjs9iAAAAABJRU5ErkJggg==") no-repeat left center;
height: 16px;
- overflow: hidden;
- padding-left: 16px;
- width: 0;
}
/* Inline up */
-html>/**/body #content input[src*="file=up.gif"] {
+html>/**/body #content .icon-up {
background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAi1JREFUeNqkUz2IE0EYfZOZ3WySi9FAPLU4fwjEw8IUhyjXxUYrK8FOG8FWQQst7OxEUE7wOq200qv0GguR4+BEMIpwGDxNBE8vcMZcsv87fjPJrkl1iB885s238958M/Mtk1Lif0KI6iINLAfGzhOpEXZto9kkvISUDwHZE4OcvFA9svfS7LH9ZSttWOPrJeIi1Wg7vrO08rVS//idUWpOIArVt9qJmaly51ff6oxIO53BrFAojDpaM0f3lesfvtUGBlIbFFNMWo7jjO399HZFj+eufxnLm2bGIl1R8ZSugOB5LmzbTvD41oFEoPjoN9t2EOuEDAO1hjmOB9d1teDF/arm3W5XC6Iowr3LOZy8+AZccJRKRSogYMMKyCAKmO/7CMMQC3em0Ww28Wyxjna7TZV5eLfaBeccrx/N0pUK9Pu+1ihtbIAgCGG7ARqNBpberuPm/AYMw6B3Frh2t4n3n3qaCzMLyUzEOoHhEbb6EXoex9kb6+D0kkZmx0BAUPzq3AZCvwUzUwDjVP3wCEI7kYEdmjDSeQ0VvttLDISRpXxuvD2i2CD0tQFSalH6b/tQ1yQGZjYxTiL0hwaBp9vT86UrrInEgThOX/mseb50aEzr9Xsu6VRLg8Ndpf0PTwaOU9m5ZypnWBMixQ0oZPK7NeK5gu/Y7trKq9bWz9YT/H6wrMooghUPgp86AzZ5nNy2+ZnkJuSPZYTPF4iuKYOMqlIf599C3X73jwADAG6CADM79TwjAAAAAElFTkSuQmCC") no-repeat left center;
height: 16px;
- overflow: hidden;
- padding-left: 16px;
- width: 0;
}
/* Inline down */
-html>/**/body #content input[src*="file=down.gif"] {
+html>/**/body #content .icon-down {
background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAjVJREFUeNqkU01oE1EQ/l72vWTTZps22B+ltCiBRItYsYhSBIkXxUMv9qzgQaH04kEFe/WsIh486s1jDyJePIhIoRepogjRYipoNRBjmuz/Pue9dJf0VKQDHzP7Zr5vZ97sMikl9mKcT78kx/rB2GUKKoShXTgNwitI+QSQbd49k1emp/Zfnz05WTQzwtxZLxE3qbzt+M7b1W+ltY8/GB094ohClaucnpkoNv90zGYPtdnsPuXz+V5Fc+bYgeLah++VroDUAoUUk6bjOElVq9XC84dHdXxx8T0sy0py6XTWJF5B38F2B/A8F7ZtJ0We5+2Ie3NCUPfbPC7DQHnmOB5c102KFKFer2tfq9UQRd2LMLiB4eECNRCoO0AKEQlEAfN9H2EYYvneYSxeMvG73tAC6u0SBh7cnsKbp7MUc3Q6vuYoLtcCZEEQwnYDVKtVTI5I3F0Yp1YF7Znj/s0SThwZ1DFP90EygZiXghqB2tnqRGh7Bubv/NSFx8sDXQIhJp+5+g7CtMBEVnMUNxnBDtMQGQu5oXHML9UTcoyz1z7pXJoEDJFLRqAOaJ7QZ0j1aQGFgX2HMHdrMyGfW/iiz+K8guYQlyPQ62p4vnS5mcvEW8iPlXHhxtck7jWv03aJ19BbgfuZllgeDRynNDg20S/MHE8ZAgpZa0QjflbwHdtdX329sfVr4xn+Pl5RuyyAFQ7COD8HNnqK1Hb5mWQDcnMF4YtlCteVAF0pLP1V/p+pPbb+CTAAmwfytdL1/44AAAAASUVORK5CYII=") no-repeat left center;
height: 16px;
- overflow: hidden;
- padding-left: 16px;
- width: 0;
}
/* Inline cross */
-html>/**/body #content input[src*="file=cross.gif"] {
+html>/**/body #content .icon-cross {
background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAe5JREFUeNqkk89KG1EUxr+ZubnUjJaipgtNtTZKxE1AVIi4yM5tF30Hoe/iA3TnQkTBRbZFKApCAl1142CJqLR0ZUNJJpPJZP70nJvcEK0SpAPfzD3n5vedM2dujCRJ8D+XODIMGMA4aYfibdLkCKZO+kxlP5FcwRla7MytrHxcLhazMp2WT5HcbeB5gVOp5H44Dqd2RdTb217a2Mi6vi/h+6O6lu9WV7M3jsPd7ppsQJqMTVO6rgtWdn8fev1YrpskkhlmzZBuLJ8qN5tNLJfLqgw/OX4sxyaaE2G/L8/z0Gq1cLy4iA+1mjKcOzhQ+RrFpmniy9oaUqkUMpkMNDcwCIIAYRhiwraxNz2NwskJLMtSgJQSZwSr6Xa7aDca/xowHFB7Xr0OO47vwazx4W9PJpozu2xK6hCY3N1hLIqQPz29BwshULq8RJp+x5JUTHODIRpkkKbv/GYI/ra+jq+FgjJgbV5dKYMX1KHmBh1ImgFv3pZKCr4geJZiVjWfV+2e53K9LqiQ5kSnfzwjmuIY+cxT8J3g+aF35nWVYJ1rx3HQ6R1pWNd0ewu8bkdRfkYI2zYMi/8M4oF0juGq7//8FUWHh0DF4L2XwMIW8H4KKFL8asRR/vObwHOg3ACu2YA6x0S/wHMunmHzrwADAPb07huzEp/RAAAAAElFTkSuQmCC") no-repeat left center;
height: 16px;
- overflow: hidden;
- padding-left: 16px;
- width: 0;
}
/* Delete */
html>/**/body input[name="delete"],
diff --git a/designs/lucas-sandery/adminer.css b/designs/lucas-sandery/adminer.css
index 24092bf1..257182e8 100644
--- a/designs/lucas-sandery/adminer.css
+++ b/designs/lucas-sandery/adminer.css
@@ -359,27 +359,22 @@ tbody tr:nth-child(n):hover th {
background: rgba(236, 72, 18, 0.45);
}
.icon {
- height: 0;
- padding-top: 1.2em;
width: 1.2em;
background: #4c3957 center no-repeat;
background-size: 66%;
}
-.icon[src*="plus.gif"] {
+.icon-plus {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' version='1.1' x='0px' y='0px' width='512px' height='512px' viewBox='0 0 456 456' style='enable-background:new 0 0 456 456;'%3E%3Cg%3E%3Cpolygon points='456,157.566 298.433,157.566 298.433,0 157.567,0 157.567,157.566 0,157.566 0,298.434 157.567,298.434 157.567,456 298.433,456 298.433,298.434 456,298.434' fill='%23FFFFFF'/%3E%3C/g%3E%3C/svg%3E");
}
-.icon[src*="minus.gif"] {
- background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' version='1.1' x='0px' y='0px' width='512px' height='512px' viewBox='0 0 456 456' style='enable-background:new 0 0 456 456;'%3E%3Cg%3E%3Cpolygon points='456,157.566 0,157.566 0,298.434 456,298.434' fill='%23FFFFFF'/%3E%3C/g%3E%3C/svg%3E");
-}
.column a[href*="&asc%5B"],
-.icon[src*="up.gif"] {
+.icon-up {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' version='1.1' x='0px' y='0px' viewBox='0 0 490 490' style='enable-background:new 0 0 490 490;' width='512px' height='512px'%3E%3Cg%3E%3Cpath d='M490,474.459H0L245.009,15.541L490,474.459z' fill='%23FFFFFF'/%3E%3C/g%3E%3C/svg%3E");
}
.column a[href*="&desc%5B"],
-.icon[src*="down.gif"] {
+.icon-down {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' version='1.1' x='0px' y='0px' viewBox='0 0 490 490' style='enable-background:new 0 0 490 490;' width='512px' height='512px'%3E%3Cg%3E%3Cpath d='M0,15.541h490L244.991,474.459L0,15.541z' fill='%23FFFFFF'/%3E%3C/g%3E%3C/svg%3E");
}
-.icon[src*="cross.gif"] {
+.icon-cross {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' version='1.1' x='0px' y='0px' viewBox='0 0 174.239 174.239' style='enable-background:new 0 0 174.239 174.239;' width='512px' height='512px'%3E%3Cg%3E%3Cpath d='M146.537,1.047c-1.396-1.396-3.681-1.396-5.077,0L89.658,52.849c-1.396,1.396-3.681,1.396-5.077,0L32.78,1.047 c-1.396-1.396-3.681-1.396-5.077,0L1.047,27.702c-1.396,1.396-1.396,3.681,0,5.077l51.802,51.802c1.396,1.396,1.396,3.681,0,5.077 L1.047,141.46c-1.396,1.396-1.396,3.681,0,5.077l26.655,26.655c1.396,1.396,3.681,1.396,5.077,0l51.802-51.802 c1.396-1.396,3.681-1.396,5.077,0l51.801,51.801c1.396,1.396,3.681,1.396,5.077,0l26.655-26.655c1.396-1.396,1.396-3.681,0-5.077 l-51.801-51.801c-1.396-1.396-1.396-3.681,0-5.077l51.801-51.801c1.396-1.396,1.396-3.681,0-5.077L146.537,1.047z' fill='%23FFFFFF'/%3E%3C/g%3E%3C/svg%3E");
}
.column a[href="#fieldset-search"] {
diff --git a/designs/pokorny/adminer.css b/designs/pokorny/adminer.css
index 6d4c87e9..d58ad9a2 100644
--- a/designs/pokorny/adminer.css
+++ b/designs/pokorny/adminer.css
@@ -145,36 +145,24 @@ html>/**/body #content a[href*="&sql="] {
padding-left: 22px;
}
/* Inline plus */
-html>/**/body #content input[src*="file=plus.gif"] {
+html>/**/body #content .icon-plus {
background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAelJREFUeNqkU81qFEEQ/tr50UncrI4iwq6oRJCIIV6zxFxE9iCIbxHwXXwA32CPXgRFEZFgPGgiIcfNn0hgYU1mnV070zPTbXXP7Mwke4hgNzVT3f3VV9VV1Uwphf8ZDJ2r9GUXSVuhdZvEP8PmkOQtFF5CqaFttpRauXN99vmDmwtNz7ngVtGnI+QxF9/3Nme3ezt6+cJGavbbCzfmm+JP5ApEBXgwGJh/vV6vcrj3G/ea2wc77ZzAePAtWG54HBaoMAzxefm10VufnqBWqxVnnue5ZGeuaiPJQoyiCJzzAiSEOKFXzxhjGNsVBBpUJdF6v9836/0f+5BSZga2Dd/3JwniOMZoNMK3x+/R6/UwHA4NgeM4+PronTHUMvemhTAKJwnSNAVPOLrdrsm8BmvjseFYQDVKnKRCEGfKkThC4AR4uPU0uyhhNpY+GKP5j8samY0ZcsaodPGpCAIrgJoifWpccJReL+vUl3WUNCciENQBOIcqqiQ4j5JYNxfNMoLIZPcwllQGD2UXkse59VamN072suSSSiZ1S8PCLt3nFq5Jnt61G+40m2aWua+dvwo/13MhnDj+MviZHkQddMQaM5AZdhtL7BmuYJHWl854TAF+YQ2r6hV+q12Wp6eGMs//OhLd8X8FGACYiuElnjs9iAAAAABJRU5ErkJggg==") no-repeat left center;
height: 16px;
- overflow: hidden;
- padding-left: 16px;
- width: 0;
}
/* Inline up */
-html>/**/body #content input[src*="file=up.gif"] {
+html>/**/body #content .icon-up {
background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAi1JREFUeNqkUz2IE0EYfZOZ3WySi9FAPLU4fwjEw8IUhyjXxUYrK8FOG8FWQQst7OxEUE7wOq200qv0GguR4+BEMIpwGDxNBE8vcMZcsv87fjPJrkl1iB885s238958M/Mtk1Lif0KI6iINLAfGzhOpEXZto9kkvISUDwHZE4OcvFA9svfS7LH9ZSttWOPrJeIi1Wg7vrO08rVS//idUWpOIArVt9qJmaly51ff6oxIO53BrFAojDpaM0f3lesfvtUGBlIbFFNMWo7jjO399HZFj+eufxnLm2bGIl1R8ZSugOB5LmzbTvD41oFEoPjoN9t2EOuEDAO1hjmOB9d1teDF/arm3W5XC6Iowr3LOZy8+AZccJRKRSogYMMKyCAKmO/7CMMQC3em0Ww28Wyxjna7TZV5eLfaBeccrx/N0pUK9Pu+1ihtbIAgCGG7ARqNBpberuPm/AYMw6B3Frh2t4n3n3qaCzMLyUzEOoHhEbb6EXoex9kb6+D0kkZmx0BAUPzq3AZCvwUzUwDjVP3wCEI7kYEdmjDSeQ0VvttLDISRpXxuvD2i2CD0tQFSalH6b/tQ1yQGZjYxTiL0hwaBp9vT86UrrInEgThOX/mseb50aEzr9Xsu6VRLg8Ndpf0PTwaOU9m5ZypnWBMixQ0oZPK7NeK5gu/Y7trKq9bWz9YT/H6wrMooghUPgp86AzZ5nNy2+ZnkJuSPZYTPF4iuKYOMqlIf599C3X73jwADAG6CADM79TwjAAAAAElFTkSuQmCC") no-repeat left center;
height: 16px;
- overflow: hidden;
- padding-left: 16px;
- width: 0;
}
/* Inline down */
-html>/**/body #content input[src*="file=down.gif"] {
+html>/**/body #content .icon-down {
background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAjVJREFUeNqkU01oE1EQ/l72vWTTZps22B+ltCiBRItYsYhSBIkXxUMv9qzgQaH04kEFe/WsIh486s1jDyJePIhIoRepogjRYipoNRBjmuz/Pue9dJf0VKQDHzP7Zr5vZ97sMikl9mKcT78kx/rB2GUKKoShXTgNwitI+QSQbd49k1emp/Zfnz05WTQzwtxZLxE3qbzt+M7b1W+ltY8/GB094ohClaucnpkoNv90zGYPtdnsPuXz+V5Fc+bYgeLah++VroDUAoUUk6bjOElVq9XC84dHdXxx8T0sy0py6XTWJF5B38F2B/A8F7ZtJ0We5+2Ie3NCUPfbPC7DQHnmOB5c102KFKFer2tfq9UQRd2LMLiB4eECNRCoO0AKEQlEAfN9H2EYYvneYSxeMvG73tAC6u0SBh7cnsKbp7MUc3Q6vuYoLtcCZEEQwnYDVKtVTI5I3F0Yp1YF7Znj/s0SThwZ1DFP90EygZiXghqB2tnqRGh7Bubv/NSFx8sDXQIhJp+5+g7CtMBEVnMUNxnBDtMQGQu5oXHML9UTcoyz1z7pXJoEDJFLRqAOaJ7QZ0j1aQGFgX2HMHdrMyGfW/iiz+K8guYQlyPQ62p4vnS5mcvEW8iPlXHhxtck7jWv03aJ19BbgfuZllgeDRynNDg20S/MHE8ZAgpZa0QjflbwHdtdX329sfVr4xn+Pl5RuyyAFQ7COD8HNnqK1Hb5mWQDcnMF4YtlCteVAF0pLP1V/p+pPbb+CTAAmwfytdL1/44AAAAASUVORK5CYII=") no-repeat left center;
height: 16px;
- overflow: hidden;
- padding-left: 16px;
- width: 0;
}
/* Inline cross */
-html>/**/body #content input[src*="file=cross.gif"] {
+html>/**/body #content .icon-cross {
background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAe5JREFUeNqkk89KG1EUxr+ZubnUjJaipgtNtTZKxE1AVIi4yM5tF30Hoe/iA3TnQkTBRbZFKApCAl1142CJqLR0ZUNJJpPJZP70nJvcEK0SpAPfzD3n5vedM2dujCRJ8D+XODIMGMA4aYfibdLkCKZO+kxlP5FcwRla7MytrHxcLhazMp2WT5HcbeB5gVOp5H44Dqd2RdTb217a2Mi6vi/h+6O6lu9WV7M3jsPd7ppsQJqMTVO6rgtWdn8fev1YrpskkhlmzZBuLJ8qN5tNLJfLqgw/OX4sxyaaE2G/L8/z0Gq1cLy4iA+1mjKcOzhQ+RrFpmniy9oaUqkUMpkMNDcwCIIAYRhiwraxNz2NwskJLMtSgJQSZwSr6Xa7aDca/xowHFB7Xr0OO47vwazx4W9PJpozu2xK6hCY3N1hLIqQPz29BwshULq8RJp+x5JUTHODIRpkkKbv/GYI/ra+jq+FgjJgbV5dKYMX1KHmBh1ImgFv3pZKCr4geJZiVjWfV+2e53K9LqiQ5kSnfzwjmuIY+cxT8J3g+aF35nWVYJ1rx3HQ6R1pWNd0ewu8bkdRfkYI2zYMi/8M4oF0juGq7//8FUWHh0DF4L2XwMIW8H4KKFL8asRR/vObwHOg3ACu2YA6x0S/wHMunmHzrwADAPb07huzEp/RAAAAAElFTkSuQmCC") no-repeat left center;
height: 16px;
- overflow: hidden;
- padding-left: 16px;
- width: 0;
}
/* Delete */
html>/**/body input[name="delete"], html>/**/body input[name="drop"] {
diff --git a/todo.txt b/todo.txt
index 4f685003..db7c2a0f 100644
--- a/todo.txt
+++ b/todo.txt
@@ -7,7 +7,6 @@ Export by GET parameters
Draggable columns in alter table (thanks to Michal Manak)
|