2 /* vim: set expandtab sw=4 ts=4 sts=4: */
7 * @uses $GLOBALS['strNoFrames']
8 * @uses $GLOBALS['cfg']['QueryHistoryDB']
9 * @uses $GLOBALS['cfg']['Server']['user']
10 * @uses $GLOBALS['cfg']['DefaultTabServer'] as src for the mainframe
11 * @uses $GLOBALS['cfg']['DefaultTabDatabase'] as src for the mainframe
12 * @uses $GLOBALS['cfg']['NaviWidth'] for navi frame width
13 * @uses $GLOBALS['collation_connection'] from $_REQUEST (grab_globals.lib.php)
15 * @uses $GLOBALS['available_languages'] from common.inc.php (select_lang.lib.php)
16 * @uses $GLOBALS['db']
17 * @uses $GLOBALS['charset']
18 * @uses $GLOBALS['lang']
19 * @uses $GLOBALS['text_dir']
20 * @uses $_ENV['HTTP_HOST']
21 * @uses PMA_getRelationsParam()
22 * @uses PMA_purgeHistory()
23 * @uses PMA_generate_common_url()
25 * @uses session_write_close()
28 * @uses header() to send charset
32 * Gets core libraries and defines some variables
34 require_once './libraries/common.inc.php';
37 * Includes the ThemeManager if it hasn't been included yet
39 require_once './libraries/relation.lib.php';
41 // free the session file, for the other frames to be loaded
42 session_write_close();
45 // loic1 - 2001/25/11: use the new globals arrays defined with php 4.1+
46 if (empty($HTTP_HOST)) {
47 if (PMA_getenv('HTTP_HOST')) {
48 $HTTP_HOST = PMA_getenv('HTTP_HOST');
55 // purge querywindow history
56 $cfgRelation = PMA_getRelationsParam();
57 if ($GLOBALS['cfg']['QueryHistoryDB'] && $cfgRelation['historywork']) {
58 PMA_purgeHistory($GLOBALS['cfg']['Server']['user']);
64 * pass variables to child pages
66 $drops = array('lang', 'server', 'convcharset', 'collation_connection',
69 foreach ($drops as $each_drop) {
70 if (! array_key_exists($each_drop, $_GET)) {
71 unset($_GET[$each_drop]);
74 unset($drops, $each_drop);
76 if (! strlen($GLOBALS['db'])) {
77 $main_target = $GLOBALS['cfg']['DefaultTabServer'];
78 } elseif (! strlen($GLOBALS['table'])) {
79 $_GET['db'] = $GLOBALS['db'];
80 $main_target = $GLOBALS['cfg']['DefaultTabDatabase'];
82 $_GET['db'] = $GLOBALS['db'];
83 $_GET['table'] = $GLOBALS['table'];
84 $main_target = $GLOBALS['cfg']['DefaultTabTable'];
87 $url_query = PMA_generate_common_url($_GET);
89 if (isset($GLOBALS['target']) && is_string($GLOBALS['target']) && !empty($GLOBALS['target']) && in_array($GLOBALS['target'], $goto_whitelist)) {
90 $main_target = $GLOBALS['target'];
93 $main_target .= $url_query;
95 $lang_iso_code = $GLOBALS['available_languages'][$GLOBALS['lang']][2];
99 header('Content-Type: text/html; charset=' . $GLOBALS['charset']);
101 <!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
102 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
103 <html xmlns
="http://www.w3.org/1999/xhtml"
104 xml
:lang
="<?php echo $lang_iso_code; ?>"
105 lang
="<?php echo $lang_iso_code; ?>"
106 dir
="<?php echo $GLOBALS['text_dir']; ?>">
108 <link rel
="icon" href
="./favicon.ico" type
="image/x-icon" />
109 <link rel
="shortcut icon" href
="./favicon.ico" type
="image/x-icon" />
110 <title
>phpMyAdmin
<?php
echo PMA_VERSION
; ?
> -
111 <?php
echo htmlspecialchars($HTTP_HOST); ?
></title
>
112 <meta http
-equiv
="Content-Type"
113 content
="text/html; charset=<?php echo $GLOBALS['charset']; ?>" />
114 <script type
="text/javascript"">
116 // definitions used in querywindow.js
117 var common_query = '<?php echo PMA_escapeJsString(PMA_generate_common_url('', '', '&'));?>';
118 var opendb_url = '<?php echo PMA_escapeJsString($GLOBALS['cfg']['DefaultTabDatabase']); ?>';
119 var safari_browser = <?php echo PMA_USR_BROWSER_AGENT == 'SAFARI' ? 'true' : 'false' ?>;
120 var querywindow_height = <?php echo PMA_escapeJsString($GLOBALS['cfg']['QueryWindowHeight']); ?>;
121 var querywindow_width = <?php echo PMA_escapeJsString($GLOBALS['cfg']['QueryWindowWidth']); ?>;
122 var collation_connection = '<?php echo PMA_escapeJsString($GLOBALS['collation_connection']); ?>';
123 var lang = '<?php echo PMA_escapeJsString($GLOBALS['lang']); ?>';
124 var server = '<?php echo PMA_escapeJsString($GLOBALS['server']); ?>';
125 var table = '<?php echo PMA_escapeJsString($GLOBALS['table']); ?>';
126 var db = '<?php echo PMA_escapeJsString($GLOBALS['db']); ?>';
127 var text_dir = '<?php echo PMA_escapeJsString($GLOBALS['text_dir']); ?>';
128 var pma_absolute_uri = '<?php echo PMA_escapeJsString($GLOBALS['cfg']['PmaAbsoluteUri']); ?>';
131 <script src="./js
/querywindow
.js
" type="text
/javascript
"></script>
133 <frameset cols="<?php
134 if ($GLOBALS['text_dir'] === 'rtl') {
137 echo $GLOBALS['cfg']['NaviWidth'];
138 if ($GLOBALS['text_dir'] === 'ltr') {
141 ?
>" rows="*" id="mainFrameset
">
142 <?php if ($GLOBALS['text_dir'] === 'ltr') { ?>
143 <frame frameborder="0" id="frame_navigation
"
144 src="navigation
.php
<?php
echo $url_query; ?
>"
145 name="frame_navigation
" />
147 <frame frameborder="0" id="frame_content
"
148 src="<?php
echo $main_target; ?
>"
149 name="frame_content
" />
150 <?php if ($GLOBALS['text_dir'] === 'rtl') { ?>
151 <frame frameborder="0" id="frame_navigation
"
152 src="navigation
.php
<?php
echo $url_query; ?
>"
153 name="frame_navigation
" />
157 <p><?php echo $GLOBALS['strNoFrames']; ?></p>
161 <script type="text
/javascript
">
163 <?php if ($GLOBALS['text_dir'] === 'ltr') { ?>
164 var frame_content = window.frames[1];
165 var frame_navigation = window.frames[0];
167 var frame_content = window.frames[0];
168 var frame_navigation = window.frames[1];