Load more data in select
This commit is contained in:
parent
fc689f5953
commit
72b801513b
|
@ -937,3 +937,10 @@ function cancel_kill_timeout() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/** Callback registered to erase output buffer in AJAX calls
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
|
function clean_output() {
|
||||||
|
return '';
|
||||||
|
}
|
||||||
|
|
|
@ -1,2 +1,2 @@
|
||||||
<?php
|
<?php
|
||||||
$VERSION = "3.5.2-dev";
|
$VERSION = "3.6.0-dev";
|
||||||
|
|
|
@ -234,6 +234,8 @@ $translations = array(
|
||||||
'Page' => 'Stránka',
|
'Page' => 'Stránka',
|
||||||
'last' => 'poslední',
|
'last' => 'poslední',
|
||||||
'Last page' => 'Poslední stránka',
|
'Last page' => 'Poslední stránka',
|
||||||
|
'Load more data' => 'Nahrát další data',
|
||||||
|
'Loading' => 'Nahrává se',
|
||||||
'whole result' => 'celý výsledek',
|
'whole result' => 'celý výsledek',
|
||||||
'%d byte(s)' => array('%d bajt', '%d bajty', '%d bajtů'),
|
'%d byte(s)' => array('%d bajt', '%d bajty', '%d bajtů'),
|
||||||
|
|
||||||
|
|
|
@ -188,6 +188,9 @@ if ($_POST && !$error) {
|
||||||
}
|
}
|
||||||
|
|
||||||
$table_name = $adminer->tableName($table_status);
|
$table_name = $adminer->tableName($table_status);
|
||||||
|
if (is_ajax()) {
|
||||||
|
ob_start('clean_output');
|
||||||
|
}
|
||||||
page_header(lang('Select') . ": $table_name", $error);
|
page_header(lang('Select') . ": $table_name", $error);
|
||||||
|
|
||||||
$set = null;
|
$set = null;
|
||||||
|
@ -258,7 +261,7 @@ if (!$columns) {
|
||||||
} else {
|
} else {
|
||||||
$backward_keys = $adminer->backwardKeys($TABLE, $table_name);
|
$backward_keys = $adminer->backwardKeys($TABLE, $table_name);
|
||||||
|
|
||||||
echo "<table cellspacing='0' class='nowrap checkable' onclick='tableClick(event);' onkeydown='return editingKeydown(event);'>\n";
|
echo "<table id='table' cellspacing='0' class='nowrap checkable' onclick='tableClick(event);' onkeydown='return editingKeydown(event);'>\n";
|
||||||
echo "<thead><tr>" . (!$group && $select ? "" : "<td><input type='checkbox' id='all-page' onclick='formCheck(this, /check/);'> <a href='" . h($_GET["modify"] ? remove_from_uri("modify") : $_SERVER["REQUEST_URI"] . "&modify=1") . "'>" . lang('edit') . "</a>");
|
echo "<thead><tr>" . (!$group && $select ? "" : "<td><input type='checkbox' id='all-page' onclick='formCheck(this, /check/);'> <a href='" . h($_GET["modify"] ? remove_from_uri("modify") : $_SERVER["REQUEST_URI"] . "&modify=1") . "'>" . lang('edit') . "</a>");
|
||||||
$names = array();
|
$names = array();
|
||||||
$functions = array();
|
$functions = array();
|
||||||
|
@ -298,6 +301,12 @@ if (!$columns) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
echo ($backward_keys ? "<th>" . lang('Relations') : "") . "</thead>\n";
|
echo ($backward_keys ? "<th>" . lang('Relations') : "") . "</thead>\n";
|
||||||
|
if (is_ajax()) {
|
||||||
|
if ($limit % 2 == 1 && $page % 2 == 1) {
|
||||||
|
odd();
|
||||||
|
}
|
||||||
|
ob_end_clean();
|
||||||
|
}
|
||||||
foreach ($adminer->rowDescriptions($rows, $foreign_keys) as $n => $row) {
|
foreach ($adminer->rowDescriptions($rows, $foreign_keys) as $n => $row) {
|
||||||
$unique_array = unique_array($rows[$n], $indexes);
|
$unique_array = unique_array($rows[$n], $indexes);
|
||||||
$unique_idf = "";
|
$unique_idf = "";
|
||||||
|
@ -383,6 +392,9 @@ if (!$columns) {
|
||||||
$adminer->backwardKeysPrint($backward_keys, $rows[$n]);
|
$adminer->backwardKeysPrint($backward_keys, $rows[$n]);
|
||||||
echo "</tr>\n"; // close to allow white-space: pre
|
echo "</tr>\n"; // close to allow white-space: pre
|
||||||
}
|
}
|
||||||
|
if (is_ajax()) {
|
||||||
|
exit;
|
||||||
|
}
|
||||||
echo "</table>\n";
|
echo "</table>\n";
|
||||||
echo (!$group && $select ? "" : "<script type='text/javascript'>tableCheck();</script>\n");
|
echo (!$group && $select ? "" : "<script type='text/javascript'>tableCheck();</script>\n");
|
||||||
}
|
}
|
||||||
|
@ -413,6 +425,9 @@ if (!$columns) {
|
||||||
echo pagination($i, $page);
|
echo pagination($i, $page);
|
||||||
}
|
}
|
||||||
echo ($page + 5 < $max_page ? " ..." : "") . ($exact_count && $found_rows !== false ? pagination($max_page, $page) : ' <a href="' . h(remove_from_uri("page") . "&page=last") . '">' . lang('last') . "</a>");
|
echo ($page + 5 < $max_page ? " ..." : "") . ($exact_count && $found_rows !== false ? pagination($max_page, $page) : ' <a href="' . h(remove_from_uri("page") . "&page=last") . '">' . lang('last') . "</a>");
|
||||||
|
if (count($rows) >= $limit) {
|
||||||
|
echo ' <a href="' . h(remove_from_uri("page") . "&page=" . ($page + 1)) . '" onclick="return !selectLoadMore(this, ' . (+$limit) . ', \'' . lang('Loading') . '\');">' . lang('Load more data') . '</a>';
|
||||||
|
}
|
||||||
}
|
}
|
||||||
echo ($found_rows !== false ? " (" . ($exact_count ? "" : "~ ") . lang('%d row(s)', $found_rows) . ")" : "") . " " . checkbox("all", 1, 0, lang('whole result')) . "\n";
|
echo ($found_rows !== false ? " (" . ($exact_count ? "" : "~ ") . lang('%d row(s)', $found_rows) . ")" : "") . " " . checkbox("all", 1, 0, lang('whole result')) . "\n";
|
||||||
|
|
||||||
|
@ -450,3 +465,7 @@ if (!$columns) {
|
||||||
echo "</form>\n";
|
echo "</form>\n";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (is_ajax()) {
|
||||||
|
exit;
|
||||||
|
}
|
||||||
|
|
|
@ -446,6 +446,38 @@ function selectDblClick(td, event, text) {
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/** Load and display next page in select
|
||||||
|
* @param HTMLLinkElement
|
||||||
|
* @param string
|
||||||
|
* @param number
|
||||||
|
* @return boolean
|
||||||
|
*/
|
||||||
|
function selectLoadMore(a, limit, loading) {
|
||||||
|
var title = a.innerHTML;
|
||||||
|
var href = a.href;
|
||||||
|
a.innerHTML = loading;
|
||||||
|
if (href) {
|
||||||
|
a.removeAttribute('href');
|
||||||
|
return ajax(href, function (request) {
|
||||||
|
document.getElementById('table').innerHTML += request.responseText;
|
||||||
|
var rows = 0;
|
||||||
|
request.responseText.replace(/(^|\n)<tr/g, function () {
|
||||||
|
rows++;
|
||||||
|
});
|
||||||
|
if (rows < limit) {
|
||||||
|
a.parentNode.removeChild(a);
|
||||||
|
} else {
|
||||||
|
a.href = href.replace(/\d+$/, function (page) {
|
||||||
|
return +page + 1;
|
||||||
|
});
|
||||||
|
a.innerHTML = title;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/** Stop event propagation
|
/** Stop event propagation
|
||||||
* @param Event
|
* @param Event
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
Adminer 3.5.2-dev:
|
Adminer 3.6.0-dev:
|
||||||
|
Load more data in select
|
||||||
Edit strings with \n in textarea
|
Edit strings with \n in textarea
|
||||||
Time out long running database list and select count
|
Time out long running database list and select count
|
||||||
Use VALUES() in INSERT+UPDATE export
|
Use VALUES() in INSERT+UPDATE export
|
||||||
|
|
Loading…
Reference in a new issue