diff --git a/phpBB/adm/admin_phpinfo.php b/phpBB/adm/admin_phpinfo.php index 4d28d1744f..d918fa9c76 100644 --- a/phpBB/adm/admin_phpinfo.php +++ b/phpBB/adm/admin_phpinfo.php @@ -43,21 +43,45 @@ phpinfo(INFO_GENERAL | INFO_CONFIGURATION | INFO_MODULES | INFO_VARIABLES); $phpinfo = ob_get_contents(); ob_end_clean(); +// Get used layout +$layout = (preg_match('#bgcolor#i', $phpinfo)) ? 'old' : 'new'; + // Here we play around a little with the PHP Info HTML to try and stylise // it along phpBB's lines ... hopefully without breaking anything. The idea // for this was nabbed from the PHP annotated manual preg_match_all('#]*>(.*)#siU', $phpinfo, $output); -$output = preg_replace('#(.*?)(.*?)#s', '
\2\1
', $output); -$output = preg_replace('##', '', $output); -$output = preg_replace('#class="e"#', 'class="row1" nowrap="nowrap"', $output); -$output = preg_replace('#class="v"#', 'class="row2"', $output); -$output = preg_replace('# class="h"#', '', $output); -$output = preg_replace('#
#', '', $output); -preg_match_all('#
(.*)
#siU', $output, $output); -$output = $output[1][0]; + +switch ($layout) +{ + case 'old': + $output = preg_replace('#(.*?
)(.*?)#s', '
\2\1
', $output); + $output = preg_replace('#(.*?)#', '\1', $output); + $output = preg_replace('##', '', $output); + $output = preg_replace('##', '', $output); + $output = preg_replace('#valign="middle"#', '', $output); + $output = preg_replace('##', '', $output); + $output = preg_replace('##', '', $output); + $output = preg_replace('#

#i', '

', $output); + $output = preg_replace('#

#i', '

', $output); + break; + case 'new': + $output = preg_replace('#(.*?)(.*?)#s', '
\2\1
', $output); + $output = preg_replace('##', '', $output); + $output = preg_replace('#class="e"#', 'class="row1" nowrap="nowrap"', $output); + $output = preg_replace('#class="v"#', 'class="row2"', $output); + $output = preg_replace('# class="h"#', '', $output); + $output = preg_replace('#
#', '', $output); + preg_match_all('#
(.*)
#siU', $output, $output); + $output = $output[1][0]; + break; +} page_header($user->lang['PHP_INFO']);