Simplify copying of redirected links
This commit is contained in:
parent
4d491d704e
commit
00da70626d
|
@ -515,7 +515,7 @@ if (!$columns && support("table")) {
|
|||
echo "</div></fieldset>\n";
|
||||
}
|
||||
|
||||
echo (!$group && $select ? "" : "<script type='text/javascript'>tableCheck();</script>\n");
|
||||
echo "<script type='text/javascript'>selectLinks(document.getElementById('table'));" . (!$group && $select ? "" : " tableCheck();") . "</script>\n";
|
||||
}
|
||||
|
||||
if ($adminer->selectImportPrint()) {
|
||||
|
|
|
@ -179,6 +179,14 @@ function tableClick(event, click) {
|
|||
var el = getTarget(event);
|
||||
while (!isTag(el, 'tr')) {
|
||||
if (isTag(el, 'table|a|input|textarea')) {
|
||||
if (el.origHref) {
|
||||
// open('about:blank').document.write('<meta http-equiv="Refresh">') still passes the referer in Chrome
|
||||
var href = el.href;
|
||||
el.href = el.origHref;
|
||||
setTimeout(function () {
|
||||
el.href = href;
|
||||
}, 0);
|
||||
}
|
||||
if (el.type != 'checkbox') {
|
||||
return;
|
||||
}
|
||||
|
@ -195,6 +203,21 @@ function tableClick(event, click) {
|
|||
trCheck(el);
|
||||
}
|
||||
|
||||
/** Clean redirect links to simplify their copying
|
||||
* @param HTMLElement
|
||||
*/
|
||||
function selectLinks(table) {
|
||||
var as = table.getElementsByTagName('a');
|
||||
for (var i = 0; i < as.length; i++) {
|
||||
var a = as[i];
|
||||
var match = /^https?:\/\/www\.adminer\.org\/redirect\/\?url=(.+)/.exec(a.href); //! rewrites also links intentionally stored with http://www.adminer.org/redirect/?url=
|
||||
if (match) {
|
||||
a.origHref = a.href;
|
||||
a.href = decodeURIComponent(match[1]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
var lastChecked;
|
||||
|
||||
/** Shift-click on checkbox for multiple selection.
|
||||
|
@ -661,6 +684,7 @@ function selectLoadMore(a, limit, loading) {
|
|||
var tbody = document.createElement('tbody');
|
||||
tbody.innerHTML = request.responseText;
|
||||
document.getElementById('table').appendChild(tbody);
|
||||
selectLinks(tbody);
|
||||
if (tbody.children.length < limit) {
|
||||
a.parentNode.removeChild(a);
|
||||
} else {
|
||||
|
|
|
@ -4,6 +4,7 @@ Compute number of tables in the overview explicitly
|
|||
Display edit form after error in clone or multi-edit
|
||||
Display time of the select command
|
||||
Print elapsed time in HTML instead of SQL command comment
|
||||
Simplify copying of redirected links
|
||||
Improve gzip export ratio (bug #387)
|
||||
Fix enum types in routines (bug #391)
|
||||
MySQL: Fix editing rows by binary values, bug since Adminer 3.7.1
|
||||
|
|
Loading…
Reference in a new issue