source: www/mysql/libraries/header.inc.php@ 1

Last change on this file since 1 was 1, checked in by george, 17 years ago

Prvotní import všeho

File size: 11.4 KB
Line 
1<?php
2/* $Id: header.inc.php 9601 2006-10-25 10:55:20Z nijel $ */
3// vim: expandtab sw=4 ts=4 sts=4:
4
5require_once './libraries/common.lib.php';
6
7if (empty($GLOBALS['is_header_sent'])) {
8
9 /**
10 * Gets a core script and starts output buffering work
11 */
12 require_once './libraries/common.lib.php';
13 require_once './libraries/ob.lib.php';
14 if ($GLOBALS['cfg']['OBGzip']) {
15 $GLOBALS['ob_mode'] = PMA_outBufferModeGet();
16 if ($GLOBALS['ob_mode']) {
17 PMA_outBufferPre($GLOBALS['ob_mode']);
18 }
19 }
20
21 // garvin: For re-usability, moved http-headers and stylesheets
22 // to a seperate file. It can now be included by header.inc.php,
23 // querywindow.php.
24
25 require_once './libraries/header_http.inc.php';
26 require_once './libraries/header_meta_style.inc.php';
27
28 // generate title
29 $title = str_replace(
30 array(
31 '@HTTP_HOST@',
32 '@SERVER@',
33 '@VERBOSE@',
34 '@VSERVER@',
35 '@DATABASE@',
36 '@TABLE@',
37 '@PHPMYADMIN@',
38 ),
39 array(
40 PMA_getenv('HTTP_HOST') ? PMA_getenv('HTTP_HOST') : '',
41 isset($GLOBALS['cfg']['Server']['host']) ? $GLOBALS['cfg']['Server']['host'] : '',
42 isset($GLOBALS['cfg']['Server']['verbose']) ? $GLOBALS['cfg']['Server']['verbose'] : '',
43 !empty($GLOBALS['cfg']['Server']['verbose']) ? $GLOBALS['cfg']['Server']['verbose'] : (isset($GLOBALS['cfg']['Server']['host']) ? $GLOBALS['cfg']['Server']['host'] : ''),
44 isset($GLOBALS['db']) ? $GLOBALS['db'] : '',
45 isset($GLOBALS['table']) ? $GLOBALS['table'] : '',
46 'phpMyAdmin ' . PMA_VERSION,
47 ),
48 !empty($GLOBALS['table']) ? $GLOBALS['cfg']['TitleTable'] :
49 (!empty($GLOBALS['db']) ? $GLOBALS['cfg']['TitleDatabase'] :
50 (!empty($GLOBALS['cfg']['Server']['host']) ? $GLOBALS['cfg']['TitleServer'] :
51 $GLOBALS['cfg']['TitleDefault']))
52 );
53 // here, the function does not exist with this configuration: $cfg['ServerDefault'] = 0;
54 $is_superuser = function_exists('PMA_isSuperuser') && PMA_isSuperuser();
55 ?>
56 <script type="text/javascript" language="javascript">
57 // <![CDATA[
58 // Updates the title of the frameset if possible (ns4 does not allow this)
59 if (typeof(parent.document) != 'undefined' && typeof(parent.document) != 'unknown'
60 && typeof(parent.document.title) == 'string') {
61 parent.document.title = '<?php echo PMA_sanitize(str_replace('\'', '\\\'', $title)); ?>';
62 }
63 <?php
64 // Add some javascript instructions if required
65 if (isset($js_to_run) && $js_to_run == 'functions.js') {
66 echo "\n";
67 ?>
68 // js form validation stuff
69 var errorMsg0 = '<?php echo str_replace('\'', '\\\'', $GLOBALS['strFormEmpty']); ?>';
70 var errorMsg1 = '<?php echo str_replace('\'', '\\\'', $GLOBALS['strNotNumber']); ?>';
71 var noDropDbMsg = '<?php echo (!$is_superuser && !$GLOBALS['cfg']['AllowUserDropDatabase'])
72 ? str_replace('\'', '\\\'', $GLOBALS['strNoDropDatabases']) : ''; ?>';
73 var confirmMsg = '<?php echo(($GLOBALS['cfg']['Confirm']) ? str_replace('\'', '\\\'', $GLOBALS['strDoYouReally']) : ''); ?>';
74 var confirmMsgDropDB = '<?php echo(($GLOBALS['cfg']['Confirm']) ? str_replace('\'', '\\\'', $GLOBALS['strDropDatabaseStrongWarning']) : ''); ?>';
75 // ]]>
76 </script>
77 <script src="./js/functions.js" type="text/javascript" language="javascript"></script>
78 <?php
79 } elseif (isset($js_to_run) && $js_to_run == 'user_password.js') {
80 echo "\n";
81 ?>
82 // js form validation stuff
83 var jsHostEmpty = '<?php echo str_replace('\'', '\\\'', $GLOBALS['strHostEmpty']); ?>';
84 var jsUserEmpty = '<?php echo str_replace('\'', '\\\'', $GLOBALS['strUserEmpty']); ?>';
85 var jsPasswordEmpty = '<?php echo str_replace('\'', '\\\'', $GLOBALS['strPasswordEmpty']); ?>';
86 var jsPasswordNotSame = '<?php echo str_replace('\'', '\\\'', $GLOBALS['strPasswordNotSame']); ?>';
87 // ]]>
88 </script>
89 <script src="./js/user_password.js" type="text/javascript" language="javascript"></script>
90 <?php
91 } elseif (isset($js_to_run) && $js_to_run == 'server_privileges.js') {
92 echo "\n";
93 ?>
94 // js form validation stuff
95 var jsHostEmpty = '<?php echo str_replace('\'', '\\\'', $GLOBALS['strHostEmpty']); ?>';
96 var jsUserEmpty = '<?php echo str_replace('\'', '\\\'', $GLOBALS['strUserEmpty']); ?>';
97 var jsPasswordEmpty = '<?php echo str_replace('\'', '\\\'', $GLOBALS['strPasswordEmpty']); ?>';
98 var jsPasswordNotSame = '<?php echo str_replace('\'', '\\\'', $GLOBALS['strPasswordNotSame']); ?>';
99 // ]]>
100 </script>
101 <script src="./js/server_privileges.js" type="text/javascript" language="javascript"></script>
102 <script src="./js/functions.js" type="text/javascript" language="javascript"></script>
103 <?php
104 } elseif (isset($js_to_run) && $js_to_run == 'indexes.js') {
105 echo "\n";
106 ?>
107 // js index validation stuff
108 var errorMsg0 = '<?php echo str_replace('\'', '\\\'', $GLOBALS['strFormEmpty']); ?>';
109 var errorMsg1 = '<?php echo str_replace('\'', '\\\'', $GLOBALS['strNotNumber']); ?>';
110 // ]]>
111 </script>
112 <script src="./js/indexes.js" type="text/javascript" language="javascript"></script>
113 <?php
114 } elseif (isset($js_to_run) && $js_to_run == 'tbl_change.js') {
115 echo "\n";
116 ?>
117 // ]]>
118 </script>
119 <script src="./js/tbl_change.js" type="text/javascript" language="javascript"></script>
120 <?php
121 } else {
122 echo "\n";
123 ?>
124 // ]]>
125 </script>
126 <?php
127 }
128 echo "\n";
129
130 // Reloads the navigation frame via JavaScript if required
131 PMA_reloadNavigation();
132 ?>
133 <script src="./js/tooltip.js" type="text/javascript"
134 language="javascript"></script>
135 <meta name="OBGZip" content="<?php echo ($cfg['OBGzip'] ? 'true' : 'false'); ?>" />
136 <?php /* remove vertical scroll bar bug in ie */ ?>
137 <!--[if IE 6]>
138 <style type="text/css">
139 /* <![CDATA[ */
140 html {
141 overflow-y: scroll;
142 }
143 /* ]]> */
144 </style>
145 <![endif]-->
146</head>
147
148<body>
149<div id="TooltipContainer" onmouseover="holdTooltip();" onmouseout="swapTooltip('default');"></div>
150 <?php
151
152 // Include possible custom headers
153 if (file_exists('./config.header.inc.php')) {
154 require './config.header.inc.php';
155 }
156
157
158 // message of "Cookies required" displayed for auth_type http or config
159 // note: here, the decoration won't work because without cookies,
160 // our standard CSS is not operational
161 if (empty($_COOKIE)) {
162 echo '<div class="notice">' . $GLOBALS['strCookiesRequired'] . '</div>' . "\n";
163 }
164
165 if (!defined('PMA_DISPLAY_HEADING')) {
166 define('PMA_DISPLAY_HEADING', 1);
167 }
168
169 /**
170 * Display heading if needed. Design can be set in css file.
171 */
172
173 if (PMA_DISPLAY_HEADING) {
174 $server_info = (!empty($GLOBALS['cfg']['Server']['verbose'])
175 ? $GLOBALS['cfg']['Server']['verbose']
176 : $GLOBALS['cfg']['Server']['host'] . (empty($GLOBALS['cfg']['Server']['port'])
177 ? ''
178 : ':' . $GLOBALS['cfg']['Server']['port']
179 )
180 );
181 $item = '<a href="%1$s?%2$s" class="item">';
182 if ( $GLOBALS['cfg']['NavigationBarIconic'] ) {
183 $separator = ' <span class="separator"><img class="icon" src="' . $GLOBALS['pmaThemeImage'] . 'item_ltr.png" width="5" height="9" alt="-" /></span>' . "\n";
184 $item .= ' <img class="icon" src="' . $GLOBALS['pmaThemeImage'] . '%5$s" width="16" height="16" alt="" /> ' . "\n";
185 } else {
186 $separator = ' <span class="separator"> - </span>' . "\n";
187 }
188
189 if ( $GLOBALS['cfg']['NavigationBarIconic'] !== true ) {
190 $item .= '%4$s: ';
191 }
192 $item .= '%3$s</a>' . "\n";
193
194 echo '<div id="serverinfo">' . "\n";
195 printf( $item,
196 $GLOBALS['cfg']['DefaultTabServer'],
197 PMA_generate_common_url(),
198 htmlspecialchars($server_info),
199 $GLOBALS['strServer'],
200 's_host.png' );
201
202 if (isset($GLOBALS['db']) && strlen($GLOBALS['db'])) {
203
204 echo $separator;
205 printf( $item,
206 $GLOBALS['cfg']['DefaultTabDatabase'],
207 PMA_generate_common_url($GLOBALS['db']),
208 htmlspecialchars($GLOBALS['db']),
209 $GLOBALS['strDatabase'],
210 's_db.png' );
211
212 if (isset($GLOBALS['table']) && strlen($GLOBALS['table'])) {
213 require_once './libraries/tbl_info.inc.php';
214
215 echo $separator;
216 printf( $item,
217 $GLOBALS['cfg']['DefaultTabTable'],
218 PMA_generate_common_url($GLOBALS['db'], $GLOBALS['table']),
219 htmlspecialchars($GLOBALS['table']),
220 (isset($GLOBALS['tbl_is_view']) && $GLOBALS['tbl_is_view'] ? $GLOBALS['strView'] : $GLOBALS['strTable']),
221 (isset($GLOBALS['tbl_is_view']) && $GLOBALS['tbl_is_view'] ? 'b_views' : 's_tbl') . '.png' );
222
223 /**
224 * Displays table comment
225 * @uses $show_comment from libraries/tbl_info.inc.php
226 * @uses $GLOBALS['avoid_show_comment'] from tbl_relation.php
227 */
228 if (!empty($show_comment) && !isset($GLOBALS['avoid_show_comment'])) {
229 if (strstr($show_comment, '; InnoDB free')) {
230 $show_comment = preg_replace('@; InnoDB free:.*?$@', '', $show_comment);
231 }
232 echo '<span class="table_comment" id="span_table_comment">'
233 .'&quot;' . htmlspecialchars($show_comment)
234 .'&quot;</span>' . "\n";
235 } // end if
236 } else {
237 // no table selected, display database comment if present
238 /**
239 * Settings for relations stuff
240 */
241 require_once './libraries/relation.lib.php';
242 $cfgRelation = PMA_getRelationsParam();
243
244 // Get additional information about tables for tooltip is done
245 // in libraries/db_info.inc.php only once
246 if ($cfgRelation['commwork']) {
247 $comment = PMA_getComments( $GLOBALS['db'] );
248
249 /**
250 * Displays table comment
251 */
252 if ( is_array( $comment ) ) {
253 echo '<span class="table_comment"'
254 .' id="span_table_comment">&quot;'
255 .htmlspecialchars(implode(' ', $comment))
256 .'&quot;</span>' . "\n";
257 } // end if
258 }
259 }
260 }
261 echo '</div>';
262
263 }
264 /**
265 * Sets a variable to remember headers have been sent
266 */
267 $GLOBALS['is_header_sent'] = true;
268}
269?>
Note: See TracBrowser for help on using the repository browser.