mirror of
https://github.com/phpbb/phpbb.git
synced 2025-02-24 12:03:21 +01:00
- checking in permission settings and permission masks - permission presets and documentation not finished yet - added backtrace function to determine file/line for sql errors - fixed marlist for orphan attachments/groups/logs/users - able to change anonymous user settings/permissions now - re-arranged admin permissions a bit (added some and removed some) - setting forum permissions after creating/editing forum now selects every default group (copy permisson/dropdown to be added for adding forums) - finished user permissions in users acp note: the layout for permissions might change devs: please empty the user_permissions in phpbb_users. Also, first change your auth_options table, remove all cache files and then re-set admin permissions. After having set the admin permissions you can update your modules table (else you will not see the permission tabs) - or empty the auth setting within the modules table to be able to see the permission modules (they rely on newly added permission options) git-svn-id: file:///svn/phpbb/trunk@5553 89ea8834-ac86-4346-8a33-228a782c2dd0
106 lines
3.5 KiB
PHP
106 lines
3.5 KiB
PHP
<?php
|
|
/**
|
|
*
|
|
* @package acp
|
|
* @version $Id$
|
|
* @copyright (c) 2005 phpBB Group
|
|
* @license http://opensource.org/licenses/gpl-license.php GNU Public License
|
|
*
|
|
*/
|
|
|
|
/**
|
|
* @package acp
|
|
*/
|
|
class acp_php_info
|
|
{
|
|
function main($id, $mode)
|
|
{
|
|
global $db, $user, $auth, $template;
|
|
global $config, $SID, $phpbb_root_path, $phpbb_admin_path, $phpEx;
|
|
|
|
if ($mode != 'info')
|
|
{
|
|
trigger_error('NO_MODE');
|
|
}
|
|
|
|
$this->tpl_name = 'acp_php_info';
|
|
$this->page_title = 'ACP_PHP_INFO';
|
|
|
|
ob_start();
|
|
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('#<body[^>]*>(.*)</body>#siU', $phpinfo, $output);
|
|
|
|
switch ($layout)
|
|
{
|
|
case 'old':
|
|
$output = preg_replace('#<table#', '<table', $output[1][0]);
|
|
$output = preg_replace('# bgcolor="\#(\w){6}"#', '', $output);
|
|
$output = preg_replace('#(\w),(\w)#', '\1, \2', $output);
|
|
$output = preg_replace('#border="0" cellpadding="3" cellspacing="1" width="600"#', 'border="0" cellspacing="1" cellpadding="4" width="95%"', $output);
|
|
$output = preg_replace('#<tr valign="top"><td align="left">(.*?<a .*?</a>)(.*?)</td></tr>#s', '<tr class="row1"><td style="{background-color: #9999cc;}"><table width="100%" cellspacing="0" cellpadding="0" border="0"><tr><td style="{background-color: #9999cc;}">\2</td><td style="{background-color: #9999cc;}">\1</td></tr></table></td></tr>', $output);
|
|
$output = preg_replace('#<tr valign="baseline"><td[ ]{0,1}><b>(.*?)</b>#', '<tr><td class="row1" nowrap="nowrap">\1', $output);
|
|
$output = preg_replace('#<td align="(center|left)">#', '<td class="row2">', $output);
|
|
$output = preg_replace('#<td>#', '<td class="row2">', $output);
|
|
$output = preg_replace('#valign="middle"#', '', $output);
|
|
$output = preg_replace('#<tr >#', '<tr>', $output);
|
|
$output = preg_replace('#<hr(.*?)>#', '', $output);
|
|
$output = preg_replace('#<h1 align="center">#i', '<h1>', $output);
|
|
$output = preg_replace('#<h2 align="center">#i', '<h2>', $output);
|
|
break;
|
|
|
|
case 'new':
|
|
$output = preg_replace('#(\w),(\w)#', '\1, \2', $output[1][0]);
|
|
$output = preg_replace('#<tr class="v"><td>(.*?<a .*?</a>)(.*?)</td></tr>#s', '<tr class="row1"><td><table class="type2"><tr><td>\2</td><td>\1</td></tr></table></td></tr>', $output);
|
|
$output = preg_replace('#class="e"#', 'class="row1"', $output);
|
|
$output = preg_replace('#class="v"#', 'class="row2"', $output);
|
|
$output = preg_replace('#class="h"#', '', $output);
|
|
$output = preg_replace('#<hr />#', '', $output);
|
|
$output = preg_replace('#<table [^<]+>#i', '<table>', $output);
|
|
$output = preg_replace('#<img border="0"#i', '<img', $output);
|
|
$output = str_replace(array('<font', '</font>'), array('<span', '</span>'), $output);
|
|
|
|
preg_match_all('#<div class="center">(.*)</div>#siU', $output, $output);
|
|
$output = $output[1][0];
|
|
break;
|
|
}
|
|
|
|
$template->assign_var('PHPINFO', $output);
|
|
}
|
|
}
|
|
|
|
/**
|
|
* @package module_install
|
|
*/
|
|
class acp_php_info_info
|
|
{
|
|
function module()
|
|
{
|
|
return array(
|
|
'filename' => 'acp_php_info',
|
|
'title' => 'ACP_PHP_INFO',
|
|
'version' => '1.0.0',
|
|
'modes' => array(
|
|
'info' => array('title' => 'ACP_PHP_INFO', 'auth' => 'acl_a_phpinfo'),
|
|
),
|
|
);
|
|
}
|
|
|
|
function install()
|
|
{
|
|
}
|
|
|
|
function uninstall()
|
|
{
|
|
}
|
|
}
|
|
|
|
?>
|