code cleanup whole querywindow js stuff, moved all in one new js file, now included in index.php, bug #1327055
This commit is contained in:
@@ -20,6 +20,11 @@ $Source$
|
||||
header_printview.inc.php, left.php, querywindow.php,
|
||||
transformation_wrapper.php, left_header.inc.php:
|
||||
removed queryframe.php and references to it
|
||||
* index.php, footer.inc.php, left.php, querywindow.php, server_databases.php
|
||||
libraries/common.lib.php, libraries/left_header.inc.php,
|
||||
libraries/sql_query_form.lib.php, libraries/querywindow.js:
|
||||
code cleanup whole querywindow js stuff, moved all in one new js file,
|
||||
now included in index.php, bug #1327055
|
||||
|
||||
2005-10-16 Michal Čihař <michal@cihar.com>
|
||||
* db_details_links.php: Disable drop tab on mysql database (RFE #1327514).
|
||||
|
@@ -18,86 +18,49 @@ if ($cfg['QueryFrame'] && $cfg['QueryFrameJS']) {
|
||||
|
||||
?>
|
||||
<script type="text/javascript">
|
||||
<!--
|
||||
//<![CDATA[
|
||||
<?php
|
||||
if (!isset($no_history) && !empty($db) && (!isset($error_message) || $error_message == '')) {
|
||||
$table = isset( $table ) ? $table : '';
|
||||
?>
|
||||
// sets selection in left frame quick db selectbox to current db
|
||||
parent.frames[0].setTable( '<?php echo $db; ?>', '<?php echo $table; ?>' );
|
||||
window.parent.setTable( '<?php echo $db; ?>', '<?php echo $table; ?>' );
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
|
||||
function reload_querywindow () {
|
||||
if (parent.frames[0] && parent.frames[0].querywindow && !parent.frames[0].querywindow.closed && parent.frames[0].querywindow.location) {
|
||||
<?php
|
||||
if (!isset($no_history) && (!isset($error_message) || $error_message == '')) {
|
||||
if ( ! isset( $no_history ) && empty( $error_message ) ) {
|
||||
if ( isset( $LockFromUpdate ) && $LockFromUpdate == '1' && isset( $sql_query ) ) {
|
||||
// When the button 'LockFromUpdate' was selected in the querywindow, it does not submit it's contents to
|
||||
// When the button 'LockFromUpdate' was selected in the querywindow,
|
||||
// it does not submit it's contents to
|
||||
// itself. So we create a SQL-history entry here.
|
||||
if ($cfg['QueryHistoryDB'] && $cfgRelation['historywork']) {
|
||||
PMA_setHistory((isset($db) ? $db : ''), (isset($table) ? $table : ''), $cfg['Server']['user'], $sql_query);
|
||||
PMA_setHistory( ( isset( $db ) ? $db : '' ),
|
||||
( isset( $table ) ? $table : '' ),
|
||||
$cfg['Server']['user'],
|
||||
$sql_query );
|
||||
}
|
||||
}
|
||||
?>
|
||||
if (!parent.frames[0].querywindow.document.sqlform.LockFromUpdate || !parent.frames[0].querywindow.document.sqlform.LockFromUpdate.checked) {
|
||||
parent.frames[0].querywindow.document.querywindow.db.value = "<?php echo (isset($db) ? addslashes($db) : '') ?>";
|
||||
parent.frames[0].querywindow.document.querywindow.query_history_latest_db.value = "<?php echo (isset($db) ? addslashes($db) : '') ?>";
|
||||
parent.frames[0].querywindow.document.querywindow.table.value = "<?php echo (isset($table) ? addslashes($table) : '') ?>";
|
||||
parent.frames[0].querywindow.document.querywindow.query_history_latest_table.value = "<?php echo (isset($table) ? addslashes($table) : '') ?>";
|
||||
|
||||
<?php echo (isset($sql_query) ? 'parent.frames[0].querywindow.document.querywindow.query_history_latest.value = "' . urlencode($sql_query) . '";' : '// no sql query update') . "\n"; ?>
|
||||
|
||||
parent.frames[0].querywindow.document.querywindow.submit();
|
||||
}
|
||||
<?php
|
||||
} else {
|
||||
?>
|
||||
// no submit, query was invalid
|
||||
window.parent.reload_querywindow(
|
||||
"<?php echo isset( $db ) ? addslashes( $db ) : '' ?>",
|
||||
"<?php echo isset( $table ) ? addslashes( $table ) : '' ?>",
|
||||
"<?php echo isset( $sql_query ) ? urlencode( $sql_query ) : ''; ?>" );
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
}
|
||||
}
|
||||
|
||||
function focus_querywindow(sql_query) {
|
||||
if (parent.frames[0] && parent.frames[0].querywindow && !parent.frames[0].querywindow.closed && parent.frames[0].querywindow.location) {
|
||||
if (parent.frames[0].querywindow.document.querywindow.querydisplay_tab != 'sql') {
|
||||
parent.frames[0].querywindow.document.querywindow.querydisplay_tab.value = "sql";
|
||||
parent.frames[0].querywindow.document.querywindow.query_history_latest.value = sql_query;
|
||||
parent.frames[0].querywindow.document.querywindow.submit();
|
||||
parent.frames[0].querywindow.focus();
|
||||
} else {
|
||||
parent.frames[0].querywindow.focus();
|
||||
}
|
||||
|
||||
return false;
|
||||
} else if (parent.frames[0]) {
|
||||
new_win_url = 'querywindow.php?sql_query=' + sql_query + '&<?php echo PMA_generate_common_url(isset($db) ? addslashes($db) : '', isset($table) ? addslashes($table) : '', '&'); ?>';
|
||||
parent.frames[0].querywindow=window.open(new_win_url, '','toolbar=0,location=0,directories=0,status=1,menubar=0,scrollbars=yes,resizable=yes,width=<?php echo $cfg['QueryWindowWidth']; ?>,height=<?php echo $cfg['QueryWindowHeight']; ?>');
|
||||
|
||||
if (!parent.frames[0].querywindow.opener) {
|
||||
parent.frames[0].querywindow.opener = parent.frames[0];
|
||||
}
|
||||
|
||||
// reload_querywindow();
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
reload_querywindow();
|
||||
<?php
|
||||
if (isset($focus_querywindow) && $focus_querywindow == "true") {
|
||||
if ( ! empty( $focus_querywindow ) ) {
|
||||
?>
|
||||
if (parent.frames[0] && parent.frames[0].querywindow && !parent.frames[0].querywindow.closed && parent.frames[0].querywindow.location) {
|
||||
if ( parent.querywindow && !parent.querywindow.closed && parent.querywindow.location) {
|
||||
self.focus();
|
||||
}
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
|
||||
//-->
|
||||
//]]>
|
||||
</script>
|
||||
<?php
|
||||
}
|
||||
@@ -115,7 +78,8 @@ if (isset($GLOBALS['userlink']) && $GLOBALS['userlink']) {
|
||||
|
||||
include('./config.footer.inc.php');
|
||||
?>
|
||||
<script src="libraries/tooltip.js" type="text/javascript" language="javascript"></script>
|
||||
<script src="libraries/tooltip.js" type="text/javascript"
|
||||
language="javascript"></script>
|
||||
</body>
|
||||
</html>
|
||||
<?php
|
||||
|
19
index.php
19
index.php
@@ -132,11 +132,28 @@ header('Content-Type: text/html; charset=' . $GLOBALS['charset']);
|
||||
<title>phpMyAdmin <?php echo PMA_VERSION; ?> - <?php echo $HTTP_HOST; ?></title>
|
||||
<meta http-equiv="Content-Type"
|
||||
content="text/html; charset=<?php echo $GLOBALS['charset']; ?>" />
|
||||
|
||||
<script type="text/javascript" language="javascript">
|
||||
//<![CDATA[
|
||||
// definitions used in querywindow.js
|
||||
var common_query = '<?php echo PMA_generate_common_url('','','&');?>';
|
||||
var opendb_url = '<?php echo $GLOBALS['cfg']['DefaultTabDatabase']; ?>';
|
||||
var safari_browser = <?php echo PMA_USR_BROWSER_AGENT != 'SAFARI' ? 'true' : 'false' ?>;
|
||||
var querywindow_height = <?php echo $GLOBALS['cfg']['QueryWindowHeight']; ?>;
|
||||
var querywindow_width = <?php echo $GLOBALS['cfg']['QueryWindowWidth']; ?>;
|
||||
var table = '<?php echo $GLOBALS['table']; ?>';
|
||||
var db = '<?php echo $GLOBALS['db']; ?>';
|
||||
var pma_absolute_uri = '<?php echo $GLOBALS['cfg']['PmaAbsoluteUri']; ?>';
|
||||
//]]>
|
||||
</script>
|
||||
<script src="libraries/querywindow.js" type="text/javascript"
|
||||
language="javascript"></script>
|
||||
</head>
|
||||
<frameset cols="<?php echo $GLOBALS['cfg']['LeftWidth']; ?>,*" rows="*" id="mainFrameset">
|
||||
<frame frameborder="0" id="leftFrame"
|
||||
src="left.php?<?php echo $url_query; ?>"
|
||||
name="nav<?php echo $_SESSION['window_name_hash']; ?>" />
|
||||
name="nav<?php echo $_SESSION['window_name_hash']; ?>"
|
||||
id="framenavigation" />
|
||||
<frame frameborder="0" id="rightFrame"
|
||||
src="<?php echo $main_target; ?>"
|
||||
name="phpmain<?php echo $_SESSION['window_name_hash']; ?>" />
|
||||
|
119
left.php
119
left.php
@@ -78,73 +78,10 @@ echo "<?xml version=\"1.0\" encoding=\"" . $GLOBALS['charset'] . "\"?".">";
|
||||
content="text/html; charset=<?php echo $charset; ?>" />
|
||||
<base href="<?php echo $GLOBALS['cfg']['PmaAbsoluteUri']; ?>"
|
||||
target="phpmain<?php echo $_SESSION['window_name_hash']; ?>" />
|
||||
|
||||
<link rel="stylesheet" type="text/css"
|
||||
href="./css/phpmyadmin.css.php?js_frame=left" />
|
||||
<script type="text/javascript" language="javascript">
|
||||
<!--
|
||||
var table = '<?php echo $GLOBALS['table']; ?>';
|
||||
var db = '<?php echo $GLOBALS['db']; ?>';
|
||||
var querywindowurl = 'querywindow.php?<?php
|
||||
echo PMA_generate_common_url('','','&'); ?>';
|
||||
var querywindow = '';
|
||||
|
||||
// sets current selected table (called from footer.inc.php)
|
||||
function setTable( new_db, new_table ) {
|
||||
if ( new_db != db ) {
|
||||
if ( typeof( document.getElementById( new_db ) ) == 'undefined' ) {
|
||||
goTo('left.php?<?php echo PMA_generate_common_url('','','&');?>&db=' + new_db + '&table=' + new_table);
|
||||
return;
|
||||
}
|
||||
db = new_db;
|
||||
}
|
||||
|
||||
if ( new_table != table ) {
|
||||
if ( typeof( document.getElementById( new_db + '.' + new_table ) ) == 'undefined' ) {
|
||||
goTo('left.php?<?php echo PMA_generate_common_url('','','&');?>&db=' + new_db + '&table=' + new_table);
|
||||
return;
|
||||
}
|
||||
table = new_table;
|
||||
}
|
||||
}
|
||||
|
||||
// opens selected db in left and main frame
|
||||
function openDb( db, nomain ) {
|
||||
goTo('left.php?<?php echo PMA_generate_common_url('','','&');?>&db=' + db);
|
||||
if ( !nomain ) {
|
||||
goTo(
|
||||
'<?php echo $GLOBALS['cfg']['DefaultTabDatabase'] . '?'
|
||||
. PMA_generate_common_url('','','&');?>&db=' + db,
|
||||
window.parent.frames[1] );
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
function open_querywindow( url ) {
|
||||
if ( ! url ) {
|
||||
url = querywindowurl + '&db=' + db + '&table=' + table;
|
||||
}
|
||||
|
||||
if (!querywindow.closed && querywindow.location) {
|
||||
querywindow.focus();
|
||||
} else {
|
||||
querywindow=window.open( url, '',
|
||||
'toolbar=0,location=0,directories=0,status=1,menubar=0,' +
|
||||
'scrollbars=yes,resizable=yes,' +
|
||||
'width=<?php echo $GLOBALS['cfg']['QueryWindowWidth']; ?>,' +
|
||||
'height=<?php echo $GLOBALS['cfg']['QueryWindowHeight']; ?>');
|
||||
}
|
||||
|
||||
if (!querywindow.opener) {
|
||||
querywindow.opener = blank;
|
||||
}
|
||||
|
||||
if (window.focus) {
|
||||
querywindow.focus();
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
//<![CDATA[
|
||||
function toggle( id, only_open ) {
|
||||
el = document.getElementById('subel' + id);
|
||||
if ( ! el ) {
|
||||
@@ -156,48 +93,20 @@ echo "<?xml version=\"1.0\" encoding=\"" . $GLOBALS['charset'] . "\"?".">";
|
||||
if ( el.style.display == 'none' || only_open ) {
|
||||
el.style.display = '';
|
||||
if ( img ) {
|
||||
img.src = '<?php echo $pmaThemeImage; ?>b_minus.png';
|
||||
img.src = '<?php echo $GLOBALS['pmaThemeImage']; ?>b_minus.png';
|
||||
img.alt = '-';
|
||||
}
|
||||
} else {
|
||||
el.style.display = 'none';
|
||||
if ( img ) {
|
||||
img.src = '<?php echo $pmaThemeImage; ?>b_plus.png';
|
||||
img.src = '<?php echo $GLOBALS['pmaThemeImage']; ?>b_plus.png';
|
||||
img.alt = '+';
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
function goTo( targeturl, target ) {
|
||||
if ( target == 'main' ) {
|
||||
target = window.parent.frames[1];
|
||||
} else if ( target == 'query' ) {
|
||||
//target = window.parent.frames[1];
|
||||
return open_querywindow( targeturl );
|
||||
} else if ( ! target ) {
|
||||
target = window.parent.frames[0];
|
||||
}
|
||||
|
||||
if ( target ) {
|
||||
if ( target.location.href == targeturl ) {
|
||||
return true;
|
||||
} else if ( target.location.href == '<?php echo $GLOBALS['cfg']['PmaAbsoluteUri']; ?>' + targeturl ) {
|
||||
return true;
|
||||
}
|
||||
<?php if (PMA_USR_BROWSER_AGENT != 'SAFARI') { ?>
|
||||
target.location.replace(targeturl);
|
||||
<?php } else { ?>
|
||||
target.location.href = targeturl;
|
||||
<?php } ?>
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
//-->
|
||||
//]]>
|
||||
</script>
|
||||
<link rel="stylesheet" type="text/css"
|
||||
href="./css/phpmyadmin.css.php?js_frame=left" />
|
||||
</head>
|
||||
|
||||
<body id="body_leftFrame">
|
||||
@@ -235,10 +144,10 @@ if ( $num_dbs === 0 ) {
|
||||
<form method="post" action="index.php" target="_parent" id="left"
|
||||
onsubmit="
|
||||
<?php /* open database in main window */ ?>
|
||||
goTo( '<?php echo $GLOBALS['cfg']['DefaultTabDatabase'] . '?'
|
||||
window.parent.goTo( '<?php echo $GLOBALS['cfg']['DefaultTabDatabase'] . '?'
|
||||
. $_location; ?>&db=' + this.value, 'main' );
|
||||
<?php /* refresh left frame with tables from selected db */ ?>
|
||||
goTo( 'left.php?<?php echo $_location; ?>&db=' + this.value);
|
||||
window.parent.goTo( 'left.php?<?php echo $_location; ?>&db=' + this.value);
|
||||
return false;">
|
||||
<label for="lightm_db"><?php echo $strDatabase; ?></label>
|
||||
<?php
|
||||
@@ -381,14 +290,14 @@ function PMA_displayDbList( $ext_dblist ) {
|
||||
// ... and we need to refresh both frames on db selection
|
||||
?>
|
||||
<a class="item"
|
||||
id="<?php echo $db['name']; ?>"
|
||||
id="<?php echo htmlspecialchars( $db['name'] ); ?>"
|
||||
href="index.php?<?php echo $common_url_query; ?>"
|
||||
target="_parent"
|
||||
title="<?php echo htmlspecialchars( $db['comment'] ); ?>"
|
||||
onclick="
|
||||
if ( ! toggle('<?php echo $element_counter; ?>', true) )
|
||||
goTo( './left.php?<?php echo $common_url_query; ?>' );
|
||||
goTo( './<?php echo $GLOBALS['cfg']['DefaultTabDatabase']
|
||||
window.parent.goTo( './left.php?<?php echo $common_url_query; ?>' );
|
||||
window.parent.goTo( './<?php echo $GLOBALS['cfg']['DefaultTabDatabase']
|
||||
. '?' . $common_url_query; ?>', 'main' );
|
||||
return false;">
|
||||
<?php echo htmlspecialchars( $db['disp_name'] ); ?>
|
||||
@@ -401,7 +310,7 @@ function PMA_displayDbList( $ext_dblist ) {
|
||||
?>
|
||||
<a href="<?php echo $GLOBALS['cfg']['DefaultTabDatabase']
|
||||
. '?' . $common_url_query; ?>"
|
||||
id="<?php echo $db['name']; ?>"
|
||||
id="<?php echo htmlspecialchars( $db['name'] ); ?>"
|
||||
title="<?php echo htmlspecialchars( $db['comment'] ); ?>">
|
||||
<?php echo htmlspecialchars( $db['disp_name'] ); ?>
|
||||
(<?php echo $db['num_tables']; ?>)
|
||||
@@ -507,8 +416,8 @@ function PMA_displayTableList( $tables, $visible = false,
|
||||
target="_parent"
|
||||
onclick="
|
||||
if ( ! toggle('<?php echo $element_counter; ?>', true) )
|
||||
goTo( './left.php?<?php echo $common_url_query; ?>' );
|
||||
goTo( './<?php echo $GLOBALS['cfg']['DefaultTabDatabase']
|
||||
window.parent.goTo( './left.php?<?php echo $common_url_query; ?>' );
|
||||
window.parent.goTo( './<?php echo $GLOBALS['cfg']['DefaultTabDatabase']
|
||||
. '?' . $common_url_query; ?>', 'main' );
|
||||
return false;">
|
||||
<?php echo htmlspecialchars( substr( $group, 0, strlen( $group ) - strlen( $sep ) ) ); ?>
|
||||
|
@@ -863,7 +863,7 @@ function PMA_getDbList() {
|
||||
function PMA_getHtmlSelectDb( $selected = '' ) {
|
||||
$dblist = PMA_getDbList();
|
||||
$return = '<select name="db" id="lightm_db"'
|
||||
.' onchange="this.form.submit();">' . "\n"
|
||||
.' onchange="window.parent.openDb( this.value );">' . "\n"
|
||||
.'<option value="">(' . $GLOBALS['strDatabases'] . ') ...</option>'
|
||||
."\n";
|
||||
foreach( $dblist as $group => $dbs ) {
|
||||
@@ -1838,12 +1838,12 @@ if ($is_minimum_common == FALSE) {
|
||||
$reload_url = './left.php?' . PMA_generate_common_url((isset($GLOBALS['db']) ? $GLOBALS['db'] : ''), '', '&');
|
||||
?>
|
||||
<script type="text/javascript" language="javascript1.2">
|
||||
<!--
|
||||
//<![CDATA[
|
||||
if (typeof(window.parent) != 'undefined'
|
||||
&& typeof(window.parent.frames[0]) != 'undefined') {
|
||||
window.parent.frames[0].goTo('<?php echo $reload_url; ?>');
|
||||
window.parent.goTo('<?php echo $reload_url; ?>');
|
||||
}
|
||||
//-->
|
||||
//]]>
|
||||
</script>
|
||||
<?php
|
||||
unset($GLOBALS['reload']);
|
||||
@@ -1880,7 +1880,7 @@ if (typeof(window.parent) != 'undefined'
|
||||
echo "\n";
|
||||
?>
|
||||
<script type="text/javascript" language="javascript1.2">
|
||||
<!--
|
||||
//<![CDATA[
|
||||
if (typeof(document.getElementById) != 'undefined'
|
||||
&& typeof(window.parent.frames[0]) != 'undefined'
|
||||
&& typeof(window.parent.frames[0].document) != 'undefined' && typeof(window.parent.frames[0].document) != 'unknown'
|
||||
@@ -1889,7 +1889,7 @@ if (typeof(document.getElementById) != 'undefined'
|
||||
&& typeof(window.parent.frames[0].document.getElementById('<?php echo $uni_tbl; ?>').title) == 'string') {
|
||||
window.parent.frames[0].document.getElementById('<?php echo $uni_tbl; ?>').title = '<?php echo PMA_jsFormat($tooltip, FALSE); ?>';
|
||||
}
|
||||
//-->
|
||||
//]]>
|
||||
</script>
|
||||
<?php
|
||||
} // end if
|
||||
@@ -2014,7 +2014,7 @@ if (typeof(document.getElementById) != 'undefined'
|
||||
|
||||
$onclick = '';
|
||||
if ($cfg['QueryFrameJS'] && $cfg['QueryFrame']) {
|
||||
$onclick = 'focus_querywindow(\'' . urlencode($local_query) . '\'); return false;';
|
||||
$onclick = 'window.parent.focus_querywindow(\'' . urlencode($local_query) . '\'); return false;';
|
||||
}
|
||||
|
||||
$edit_link = $edit_target
|
||||
|
@@ -56,7 +56,7 @@ if ( $GLOBALS['cfg']['LeftDisplayLogo'] ) {
|
||||
} // end if ($GLOBALS['cfg']['Server']['auth_type'] != 'config'
|
||||
|
||||
if ( $GLOBALS['cfg']['QueryFrame'] ) {
|
||||
$anchor = 'querywindow.php?' . PMA_generate_common_url( '', '' );
|
||||
$anchor = 'querywindow.php?' . PMA_generate_common_url( $db, $table );
|
||||
|
||||
if ($GLOBALS['cfg']['MainPageIconic']) {
|
||||
$query_frame_link_text =
|
||||
@@ -69,7 +69,7 @@ if ( $GLOBALS['cfg']['LeftDisplayLogo'] ) {
|
||||
echo '<a href="' . $anchor . '&no_js=true"'
|
||||
.' title="' . $strQueryFrame . '"';
|
||||
if ( $GLOBALS['cfg']['QueryFrameJS'] ) {
|
||||
echo ' onclick="javascript:open_querywindow(\'' . $anchor . '\');'
|
||||
echo ' onclick="javascript:window.parent.open_querywindow();'
|
||||
.' return false;"';
|
||||
}
|
||||
echo '>' . $query_frame_link_text . '</a>' . "\n";
|
||||
|
124
libraries/querywindow.js
Normal file
124
libraries/querywindow.js
Normal file
@@ -0,0 +1,124 @@
|
||||
var querywindow = '';
|
||||
|
||||
// sets current selected table (called from footer.inc.php)
|
||||
function setTable( new_db, new_table ) {
|
||||
if ( new_db != db || new_table != table ) {
|
||||
// table or db has changed
|
||||
|
||||
//alert( new_table + '(' + new_table.length + ') : ' + table );
|
||||
if ( window.frames[0].document.getElementById( new_db ) == null
|
||||
&& window.frames[0].document.getElementById( new_db + '.' + new_table ) == null ) {
|
||||
// table or db is unknown, reload complete left frame
|
||||
goTo('left.php?&db=' + new_db + '&table=' + new_table);
|
||||
}
|
||||
|
||||
// save new db and table
|
||||
db = new_db;
|
||||
table = new_table;
|
||||
|
||||
// refresh querywindow
|
||||
refreshQuerywindow();
|
||||
}
|
||||
}
|
||||
|
||||
function reload_querywindow( db, table, sql_query ) {
|
||||
if ( ! querywindow.closed && querywindow.location ) {
|
||||
if ( ! querywindow.document.sqlform.LockFromUpdate
|
||||
|| ! querywindow.document.sqlform.LockFromUpdate.checked ) {
|
||||
querywindow.document.querywindow.db.value = db;
|
||||
querywindow.document.querywindow.query_history_latest_db.value = db;
|
||||
querywindow.document.querywindow.table.value = table;
|
||||
querywindow.document.querywindow.query_history_latest_table.value = table;
|
||||
|
||||
if ( sql_query ) {
|
||||
querywindow.document.querywindow.query_history_latest.value = sql_query;
|
||||
}
|
||||
|
||||
querywindow.document.querywindow.submit();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function focus_querywindow( sql_query ) {
|
||||
if ( querywindow && !querywindow.closed && querywindow.location) {
|
||||
var querywindow = querywindow;
|
||||
if ( querywindow.document.querywindow.querydisplay_tab != 'sql' ) {
|
||||
querywindow.document.querywindow.querydisplay_tab.value = "sql";
|
||||
querywindow.document.querywindow.query_history_latest.value = sql_query;
|
||||
querywindow.document.querywindow.submit();
|
||||
querywindow.focus();
|
||||
} else {
|
||||
querywindow.focus();
|
||||
}
|
||||
} else {
|
||||
url = 'querywindow.php?' + common_query + '&db=' + db + '&table=' + table + '&sql_query=' + sql_query;
|
||||
open_querywindow( url );
|
||||
}
|
||||
}
|
||||
|
||||
function open_querywindow( url ) {
|
||||
if ( ! url ) {
|
||||
url = 'querywindow.php?' + common_query + '&db=' + db + '&table=' + table;
|
||||
}
|
||||
|
||||
if (!querywindow.closed && querywindow.location) {
|
||||
goTo( url, 'query' );
|
||||
querywindow.focus();
|
||||
} else {
|
||||
querywindow=window.open( url, '',
|
||||
'toolbar=0,location=0,directories=0,status=1,menubar=0,' +
|
||||
'scrollbars=yes,resizable=yes,' +
|
||||
'width=' + querywindow_width + ',' +
|
||||
'height=' + querywindow_height );
|
||||
}
|
||||
|
||||
if ( ! querywindow.opener ) {
|
||||
querywindow.opener = window.window;
|
||||
}
|
||||
|
||||
if ( window.focus ) {
|
||||
querywindow.focus();
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
function refreshQuerywindow( url ) {
|
||||
if ( ! querywindow.closed && querywindow.location ) {
|
||||
open_querywindow( url )
|
||||
}
|
||||
}
|
||||
|
||||
function goTo( targeturl, target ) {
|
||||
if ( target == 'main' ) {
|
||||
target = window.frames[1];
|
||||
} else if ( target == 'query' ) {
|
||||
target = querywindow;
|
||||
//return open_querywindow( targeturl );
|
||||
} else if ( ! target ) {
|
||||
target = window.frames[0];
|
||||
}
|
||||
|
||||
if ( target ) {
|
||||
if ( target.location.href == targeturl ) {
|
||||
return true;
|
||||
} else if ( target.location.href == pma_absolute_uri + targeturl ) {
|
||||
return true;
|
||||
}
|
||||
|
||||
if ( safari_browser ) {
|
||||
target.location.href = targeturl;
|
||||
} else {
|
||||
target.location.replace(targeturl);
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
// opens selected db in main frame
|
||||
function openDb( db ) {
|
||||
goTo( opendb_url + '?' + common_query + '&db=' + db,
|
||||
window.parent.frames[1] );
|
||||
return true;
|
||||
}
|
@@ -111,11 +111,11 @@ function PMA_sqlQueryForm( $query = true, $display_tab = false ) {
|
||||
<form method="post" id="sqlqueryform"
|
||||
target="phpmain<?php echo md5( $GLOBALS['cfg']['PmaAbsoluteUri'] ); ?>"
|
||||
action="import.php"<?php echo $enctype; ?> name="sqlform"
|
||||
onsubmit="this.target=window.opener.parent.frames[1].name;
|
||||
onsubmit="this.target=window.opener.frames[1].name;
|
||||
return checkSqlQuery( this );" >
|
||||
<?php
|
||||
} else {
|
||||
echo '<form method="post" action="import.php" ' . $enctype
|
||||
echo '<form method="post" action="import.php" ' . $enctype . ' id="sqlqueryform"'
|
||||
.' onsubmit="return checkSqlQuery(this)" name="sqlform">' . "\n";
|
||||
}
|
||||
|
||||
|
@@ -49,14 +49,16 @@ require_once('./libraries/header_meta_style.inc.php');
|
||||
?>
|
||||
|
||||
<script type="text/javascript" language="javascript">
|
||||
<!--
|
||||
//<![CDATA[
|
||||
function query_auto_commit() {
|
||||
document.sqlform.submit();
|
||||
document.getElementById( 'sqlqueryform' ).target = window.opener.frames[1].name;
|
||||
document.getElementById( 'sqlqueryform' ).submit();
|
||||
return;
|
||||
}
|
||||
|
||||
function query_tab_commit(tab) {
|
||||
document.querywindow.querydisplay_tab.value = tab;
|
||||
document.querywindow.submit();
|
||||
document.getElementById('hiddenqueryform').querydisplay_tab.value = tab;
|
||||
document.getElementById('hiddenqueryform').submit();
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -100,7 +102,7 @@ function resize() {
|
||||
$onload = '';
|
||||
}
|
||||
?>
|
||||
//-->
|
||||
//]]>
|
||||
</script>
|
||||
<script src="libraries/functions.js" type="text/javascript" language="javascript"></script>
|
||||
</head>
|
||||
@@ -167,7 +169,7 @@ if ($cfg['QueryFrame'] && $cfg['QueryFrameJS']) {
|
||||
$sql_history = array();
|
||||
$dup_sql = array();
|
||||
|
||||
if (isset($query_history_latest) && isset($query_history_latest_db) && $query_history_latest != '' && $query_history_latest_db != '') {
|
||||
if ( ! empty( $query_history_latest ) && ! empty( $query_history_latest_db ) ) {
|
||||
if ( $cfg['QueryHistoryDB'] && $cfgRelation['historywork'] ) {
|
||||
PMA_setHistory((isset($query_history_latest_db) ? $query_history_latest_db : ''), (isset($query_history_latest_table) ? $query_history_latest_table : ''), $cfg['Server']['user'], $query_history_latest);
|
||||
}
|
||||
@@ -176,16 +178,34 @@ if ($cfg['QueryFrame'] && $cfg['QueryFrameJS']) {
|
||||
$input_query_history[] = '<input type="hidden" name="query_history_db[]" value="' . htmlspecialchars($query_history_latest_db) . '" />';
|
||||
$input_query_history[] = '<input type="hidden" name="query_history_table[]" value="' . (isset($query_history_latest_table) ? htmlspecialchars($query_history_latest_table) : '') . '" />';
|
||||
|
||||
$sql_history[] = '<li>'
|
||||
. '<a href="#" onclick="document.querywindow.querydisplay_tab.value = \'' . (isset($querydisplay_tab) && $querydisplay_tab != 'full' ? 'sql' : 'full') . '\'; document.querywindow.query_history_latest.value = \'' . preg_replace('/(\n)/i', ' ', addslashes(htmlspecialchars($query_history_latest))) . '\'; document.querywindow.auto_commit.value = \'false\'; document.querywindow.db.value = \'' . htmlspecialchars($query_history_latest_db) . '\'; document.querywindow.query_history_latest_db.value = \'' . htmlspecialchars($query_history_latest_db) . '\'; document.querywindow.table.value = \'' . (isset($query_history_latest_table) ? htmlspecialchars($query_history_latest_table) : '') . '\'; document.querywindow.query_history_latest_table.value = \'' . (isset($query_history_latest_table) ? htmlspecialchars($query_history_latest_table) : '') . '\'; document.querywindow.submit(); return false;">' . $titles['Change'] . '</a>'
|
||||
. ' <a href="#" onclick="document.querywindow.querydisplay_tab.value = \'' . (isset($querydisplay_tab) && $querydisplay_tab != 'full' ? 'sql' : 'full') . '\'; document.querywindow.query_history_latest.value = \'' . preg_replace('/(\n)/i', ' ', addslashes(htmlspecialchars($query_history_latest))) . '\'; document.querywindow.auto_commit.value = \'true\'; document.querywindow.db.value = \'' . htmlspecialchars($query_history_latest_db) . '\'; document.querywindow.query_history_latest_db.value = \'' . htmlspecialchars($query_history_latest_db) . '\'; document.querywindow.table.value = \'' . (isset($query_history_latest_table) ? htmlspecialchars($query_history_latest_table) : '') . '\'; document.querywindow.query_history_latest_table.value = \'' . (isset($query_history_latest_table) ? htmlspecialchars($query_history_latest_table) : '') . '\'; document.querywindow.submit(); return false;">[' . htmlspecialchars($query_history_latest_db) . '] ' . urldecode($query_history_latest) . '</a>'
|
||||
$sql_history[] =
|
||||
'<li>'
|
||||
.'<a href="#" onclick="'
|
||||
.' document.getElementById(\'hiddenqueryform\').querydisplay_tab.value = \'' . (isset($querydisplay_tab) && $querydisplay_tab != 'full' ? 'sql' : 'full') . '\';'
|
||||
.' document.getElementById(\'hiddenqueryform\').query_history_latest.value = \'' . preg_replace('/(\n)/i', ' ', addslashes(htmlspecialchars($query_history_latest))) . '\';'
|
||||
.' document.getElementById(\'hiddenqueryform\').auto_commit.value = \'false\';'
|
||||
.' document.getElementById(\'hiddenqueryform\').db.value = \'' . htmlspecialchars($query_history_latest_db) . '\';'
|
||||
.' document.getElementById(\'hiddenqueryform\').query_history_latest_db.value = \'' . htmlspecialchars($query_history_latest_db) . '\';'
|
||||
.' document.getElementById(\'hiddenqueryform\').table.value = \'' . (isset($query_history_latest_table) ? htmlspecialchars($query_history_latest_table) : '') . '\';'
|
||||
.' document.getElementById(\'hiddenqueryform\').query_history_latest_table.value = \'' . (isset($query_history_latest_table) ? htmlspecialchars($query_history_latest_table) : '') . '\';'
|
||||
.' document.getElementById(\'hiddenqueryform\').submit(); return false;">' . $titles['Change'] . '</a>'
|
||||
.' <a href="#" onclick="'
|
||||
.' document.getElementById(\'hiddenqueryform\').querydisplay_tab.value = \'' . (isset($querydisplay_tab) && $querydisplay_tab != 'full' ? 'sql' : 'full') . '\';'
|
||||
.' document.getElementById(\'hiddenqueryform\').query_history_latest.value = \'' . preg_replace('/(\n)/i', ' ', addslashes(htmlspecialchars($query_history_latest))) . '\';'
|
||||
.' document.getElementById(\'hiddenqueryform\').auto_commit.value = \'true\';'
|
||||
.' document.getElementById(\'hiddenqueryform\').db.value = \'' . htmlspecialchars($query_history_latest_db) . '\';'
|
||||
.' document.getElementById(\'hiddenqueryform\').query_history_latest_db.value = \'' . htmlspecialchars($query_history_latest_db) . '\';'
|
||||
.' document.getElementById(\'hiddenqueryform\').table.value = \'' . (isset($query_history_latest_table) ? htmlspecialchars($query_history_latest_table) : '') . '\';'
|
||||
.' document.getElementById(\'hiddenqueryform\').query_history_latest_table.value = \'' . (isset($query_history_latest_table) ? htmlspecialchars($query_history_latest_table) : '') . '\';'
|
||||
.' document.getElementById(\'hiddenqueryform\').submit();'
|
||||
.' return false;">[' . htmlspecialchars($query_history_latest_db) . '] ' . urldecode($query_history_latest) . '</a>'
|
||||
.'</li>' . "\n";
|
||||
|
||||
$sql_query = urldecode($query_history_latest);
|
||||
$db = $query_history_latest_db;
|
||||
$table = $query_history_latest_table;
|
||||
$dup_sql[$query_history_latest] = true;
|
||||
} elseif (isset($query_history_latest) && $query_history_latest != '') {
|
||||
} elseif ( ! empty( $query_history_latest ) ) {
|
||||
$sql_query = urldecode($query_history_latest);
|
||||
}
|
||||
|
||||
@@ -200,8 +220,8 @@ if ($cfg['QueryFrame'] && $cfg['QueryFrameJS']) {
|
||||
foreach ($temp_history AS $history_nr => $history_array) {
|
||||
if (!isset($dup_sql[$history_array['sqlquery']])) {
|
||||
$sql_history[] = '<li>'
|
||||
. '<a href="#" onclick="document.querywindow.querydisplay_tab.value = \'' . (isset($querydisplay_tab) && $querydisplay_tab != 'full' ? 'sql' : 'full') . '\'; document.querywindow.query_history_latest.value = \'' . preg_replace('/(\n)/i', ' ', addslashes(htmlspecialchars($history_array['sqlquery']))) . '\'; document.querywindow.auto_commit.value = \'false\'; document.querywindow.db.value = \'' . htmlspecialchars($history_array['db']) . '\'; document.querywindow.query_history_latest_db.value = \'' . htmlspecialchars($history_array['db']) . '\'; document.querywindow.table.value = \'' . (isset($history_array['table']) ? htmlspecialchars($history_array['table']) : '') . '\'; document.querywindow.query_history_latest_table.value = \'' . (isset($history_array['table']) ? htmlspecialchars($history_array['table']) : '') . '\'; document.querywindow.submit(); return false;">' . $titles['Change'] . '</a>'
|
||||
. '<a href="#" onclick="document.querywindow.querydisplay_tab.value = \'' . (isset($querydisplay_tab) && $querydisplay_tab != 'full' ? 'sql' : 'full') . '\'; document.querywindow.query_history_latest.value = \'' . preg_replace('/(\n)/i', ' ', addslashes(htmlspecialchars($history_array['sqlquery']))) . '\'; document.querywindow.auto_commit.value = \'true\'; document.querywindow.db.value = \'' . htmlspecialchars($history_array['db']) . '\'; document.querywindow.query_history_latest_db.value = \'' . htmlspecialchars($history_array['db']) . '\'; document.querywindow.table.value = \'' . (isset($history_array['table']) ? htmlspecialchars($history_array['table']) : '') . '\'; document.querywindow.query_history_latest_table.value = \'' . (isset($history_array['table']) ? htmlspecialchars($history_array['table']) : '') . '\'; document.querywindow.submit(); return false;">[' . htmlspecialchars($history_array['db']) . '] ' . urldecode($history_array['sqlquery']) . '</a>'
|
||||
. '<a href="#" onclick="document.getElementById(\'hiddenqueryform\').querydisplay_tab.value = \'' . (isset($querydisplay_tab) && $querydisplay_tab != 'full' ? 'sql' : 'full') . '\'; document.getElementById(\'hiddenqueryform\').query_history_latest.value = \'' . preg_replace('/(\n)/i', ' ', addslashes(htmlspecialchars($history_array['sqlquery']))) . '\'; document.getElementById(\'hiddenqueryform\').auto_commit.value = \'false\'; document.getElementById(\'hiddenqueryform\').db.value = \'' . htmlspecialchars($history_array['db']) . '\'; document.getElementById(\'hiddenqueryform\').query_history_latest_db.value = \'' . htmlspecialchars($history_array['db']) . '\'; document.getElementById(\'hiddenqueryform\').table.value = \'' . (isset($history_array['table']) ? htmlspecialchars($history_array['table']) : '') . '\'; document.getElementById(\'hiddenqueryform\').query_history_latest_table.value = \'' . (isset($history_array['table']) ? htmlspecialchars($history_array['table']) : '') . '\'; document.getElementById(\'hiddenqueryform\').submit(); return false;">' . $titles['Change'] . '</a>'
|
||||
. '<a href="#" onclick="document.getElementById(\'hiddenqueryform\').querydisplay_tab.value = \'' . (isset($querydisplay_tab) && $querydisplay_tab != 'full' ? 'sql' : 'full') . '\'; document.getElementById(\'hiddenqueryform\').query_history_latest.value = \'' . preg_replace('/(\n)/i', ' ', addslashes(htmlspecialchars($history_array['sqlquery']))) . '\'; document.getElementById(\'hiddenqueryform\').auto_commit.value = \'true\'; document.getElementById(\'hiddenqueryform\').db.value = \'' . htmlspecialchars($history_array['db']) . '\'; document.getElementById(\'hiddenqueryform\').query_history_latest_db.value = \'' . htmlspecialchars($history_array['db']) . '\'; document.getElementById(\'hiddenqueryform\').table.value = \'' . (isset($history_array['table']) ? htmlspecialchars($history_array['table']) : '') . '\'; document.getElementById(\'hiddenqueryform\').query_history_latest_table.value = \'' . (isset($history_array['table']) ? htmlspecialchars($history_array['table']) : '') . '\'; document.getElementById(\'hiddenqueryform\').submit(); return false;">[' . htmlspecialchars($history_array['db']) . '] ' . urldecode($history_array['sqlquery']) . '</a>'
|
||||
. '</li>' . "\n";
|
||||
$dup_sql[$history_array['sqlquery']] = true;
|
||||
}
|
||||
@@ -220,8 +240,8 @@ if ($cfg['QueryFrame'] && $cfg['QueryFrameJS']) {
|
||||
$input_query_history[] = '<input type="hidden" name="query_history_table[]" value="' . (isset($query_history_table[$query_no]) ? htmlspecialchars($query_history_table[$query_no]) : '') . '" />';
|
||||
|
||||
$sql_history[] = '<li>'
|
||||
. '<a href="#" onclick="document.querywindow.querydisplay_tab.value = \'' . (isset($querydisplay_tab) && $querydisplay_tab != 'full' ? 'sql' : 'full') . '\'; document.querywindow.query_history_latest.value = \'' . htmlspecialchars($query_sql) . '\'; document.querywindow.auto_commit.value = \'false\'; document.querywindow.db.value = \'' . htmlspecialchars($query_history_db[$query_no]) . '\'; document.querywindow.query_history_latest_db.value = \'' . htmlspecialchars($query_history_db[$query_no]) . '\'; document.querywindow.table.value = \'' . (isset($query_history_table[$query_no]) ? htmlspecialchars($query_history_table[$query_no]) : '') . '\'; document.querywindow.query_history_latest_table.value = \'' . (isset($query_history_table[$query_no]) ? htmlspecialchars($query_history_table[$query_no]) : '') . '\'; document.querywindow.submit(); return false;">' . $titles['Change'] . '</a>'
|
||||
. '<a href="#" onclick="document.querywindow.querydisplay_tab.value = \'' . (isset($querydisplay_tab) && $querydisplay_tab != 'full' ? 'sql' : 'full') . '\'; document.querywindow.query_history_latest.value = \'' . htmlspecialchars($query_sql) . '\'; document.querywindow.auto_commit.value = \'true\'; document.querywindow.db.value = \'' . htmlspecialchars($query_history_db[$query_no]) . '\'; document.querywindow.query_history_latest_db.value = \'' . htmlspecialchars($query_history_db[$query_no]) . '\'; document.querywindow.table.value = \'' . (isset($query_history_table[$query_no]) ? htmlspecialchars($query_history_table[$query_no]) : '') . '\'; document.querywindow.query_history_latest_table.value = \'' . (isset($query_history_table[$query_no]) ? htmlspecialchars($query_history_table[$query_no]) : '') . '\'; document.querywindow.submit(); return false;">[' . htmlspecialchars($query_history_db[$query_no]) . '] ' . urldecode($query_sql) . '</a>'
|
||||
. '<a href="#" onclick="document.getElementById(\'hiddenqueryform\').querydisplay_tab.value = \'' . (isset($querydisplay_tab) && $querydisplay_tab != 'full' ? 'sql' : 'full') . '\'; document.getElementById(\'hiddenqueryform\').query_history_latest.value = \'' . htmlspecialchars($query_sql) . '\'; document.getElementById(\'hiddenqueryform\').auto_commit.value = \'false\'; document.getElementById(\'hiddenqueryform\').db.value = \'' . htmlspecialchars($query_history_db[$query_no]) . '\'; document.getElementById(\'hiddenqueryform\').query_history_latest_db.value = \'' . htmlspecialchars($query_history_db[$query_no]) . '\'; document.getElementById(\'hiddenqueryform\').table.value = \'' . (isset($query_history_table[$query_no]) ? htmlspecialchars($query_history_table[$query_no]) : '') . '\'; document.getElementById(\'hiddenqueryform\').query_history_latest_table.value = \'' . (isset($query_history_table[$query_no]) ? htmlspecialchars($query_history_table[$query_no]) : '') . '\'; document.getElementById(\'hiddenqueryform\').submit(); return false;">' . $titles['Change'] . '</a>'
|
||||
. '<a href="#" onclick="document.getElementById(\'hiddenqueryform\').querydisplay_tab.value = \'' . (isset($querydisplay_tab) && $querydisplay_tab != 'full' ? 'sql' : 'full') . '\'; document.getElementById(\'hiddenqueryform\').query_history_latest.value = \'' . htmlspecialchars($query_sql) . '\'; document.getElementById(\'hiddenqueryform\').auto_commit.value = \'true\'; document.getElementById(\'hiddenqueryform\').db.value = \'' . htmlspecialchars($query_history_db[$query_no]) . '\'; document.getElementById(\'hiddenqueryform\').query_history_latest_db.value = \'' . htmlspecialchars($query_history_db[$query_no]) . '\'; document.getElementById(\'hiddenqueryform\').table.value = \'' . (isset($query_history_table[$query_no]) ? htmlspecialchars($query_history_table[$query_no]) : '') . '\'; document.getElementById(\'hiddenqueryform\').query_history_latest_table.value = \'' . (isset($query_history_table[$query_no]) ? htmlspecialchars($query_history_table[$query_no]) : '') . '\'; document.getElementById(\'hiddenqueryform\').submit(); return false;">[' . htmlspecialchars($query_history_db[$query_no]) . '] ' . urldecode($query_sql) . '</a>'
|
||||
. '</li>' . "\n";
|
||||
$dup_sql[$query_sql] = true;
|
||||
} // end if check if this item exists
|
||||
@@ -282,7 +302,7 @@ if ($cfg['QueryFrame'] && $cfg['QueryFrameJS']) {
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
<form action="querywindow.php" method="post" name="querywindow">
|
||||
<form action="querywindow.php" method="post" name="querywindow" id="hiddenqueryform">
|
||||
<?php
|
||||
echo PMA_generate_common_hidden_inputs('', '');
|
||||
if (count($input_query_history) > 0) {
|
||||
|
@@ -230,7 +230,7 @@ if (count($statistics) > 0) {
|
||||
echo ' </td>' . "\n";
|
||||
}
|
||||
echo ' <td class="name">' . "\n"
|
||||
. ' <a onclick="if ( window.parent.frames[0].openDb(\'' . urlencode($current['db_name']) . '\') ) return false;" href="index.php?' . $url_query . '&db=' . urlencode($current['db_name']) . '" title="' . sprintf($strJumpToDB, htmlspecialchars($current['db_name'])) . '" target="_parent">' . "\n"
|
||||
. ' <a onclick="if ( window.parent.openDb(\'' . urlencode($current['db_name']) . '\') ) return false;" href="index.php?' . $url_query . '&db=' . urlencode($current['db_name']) . '" title="' . sprintf($strJumpToDB, htmlspecialchars($current['db_name'])) . '" target="_parent">' . "\n"
|
||||
. ' ' . htmlspecialchars($current['db_name']) . "\n"
|
||||
. ' </a>' . "\n"
|
||||
. ' </td>' . "\n";
|
||||
@@ -252,7 +252,7 @@ if (count($statistics) > 0) {
|
||||
}
|
||||
if ($is_superuser) {
|
||||
echo ' <td class="tool">' . "\n"
|
||||
. ' <a onclick="window.parent.frames[0].openDb(\'' . urlencode($current['db_name']) . '\', true);" href="./server_privileges.php?' . $url_query . '&checkprivs=' . urlencode($current['db_name']) . '" title="' . sprintf($strCheckPrivsLong, htmlspecialchars($current['db_name'])) . '">'. "\n"
|
||||
. ' <a onclick="window.parent.setTable(\'' . urlencode($current['db_name']) . '\');" href="./server_privileges.php?' . $url_query . '&checkprivs=' . urlencode($current['db_name']) . '" title="' . sprintf($strCheckPrivsLong, htmlspecialchars($current['db_name'])) . '">'. "\n"
|
||||
. ' ' .($cfg['PropertiesIconic'] ? '<img class="icon" src="' . $pmaThemeImage . 's_rights.png" width="16" height="16" alt=" ' .$strCheckPrivs . '" /> ' : $strCheckPrivs ). "\n"
|
||||
. ' </a>' . "\n"
|
||||
. ' </td>' . "\n";
|
||||
|
Reference in New Issue
Block a user