diff options
Diffstat (limited to 'phpBB/includes/functions_acp.php')
| -rw-r--r-- | phpBB/includes/functions_acp.php | 49 | 
1 files changed, 25 insertions, 24 deletions
| diff --git a/phpBB/includes/functions_acp.php b/phpBB/includes/functions_acp.php index c4afb39ff0..766669480d 100644 --- a/phpBB/includes/functions_acp.php +++ b/phpBB/includes/functions_acp.php @@ -24,9 +24,9 @@ if (!defined('IN_PHPBB'))  */  function adm_page_header($page_title)  { -	global $config, $db, $user, $template; +	global $config, $user, $template;  	global $phpbb_root_path, $phpbb_admin_path, $phpEx, $SID, $_SID; -	global $phpbb_dispatcher; +	global $phpbb_dispatcher, $phpbb_container;  	if (defined('HEADER_INC'))  	{ @@ -107,6 +107,8 @@ function adm_page_header($page_title)  		'S_CONTENT_ENCODING'	=> 'UTF-8',  		'S_CONTENT_FLOW_BEGIN'	=> ($user->lang['DIRECTION'] == 'ltr') ? 'left' : 'right',  		'S_CONTENT_FLOW_END'	=> ($user->lang['DIRECTION'] == 'ltr') ? 'right' : 'left', + +		'CONTAINER_EXCEPTION'	=> $phpbb_container->hasParameter('container_exception') ? $phpbb_container->getParameter('container_exception') : false,  	));  	// An array of http headers that phpbb will set. The following event may override these. @@ -142,8 +144,8 @@ function adm_page_header($page_title)  */  function adm_page_footer($copyright_html = true)  { -	global $db, $config, $template, $user, $auth, $cache; -	global $starttime, $phpbb_root_path, $phpbb_admin_path, $phpEx; +	global $db, $config, $template, $user, $auth; +	global $phpbb_root_path;  	global $request, $phpbb_dispatcher;  	// A listener can set this variable to `true` when it overrides this function @@ -232,7 +234,7 @@ function h_radio($name, $input_ary, $input_default = false, $id = false, $key =  /**  * Build configuration template for acp configuration pages  */ -function build_cfg_template($tpl_type, $key, &$new, $config_key, $vars) +function build_cfg_template($tpl_type, $key, &$new_ary, $config_key, $vars)  {  	global $user, $module, $phpbb_dispatcher; @@ -240,18 +242,18 @@ function build_cfg_template($tpl_type, $key, &$new, $config_key, $vars)  	$name = 'config[' . $config_key . ']';  	// Make sure there is no notice printed out for non-existent config options (we simply set them) -	if (!isset($new[$config_key])) +	if (!isset($new_ary[$config_key]))  	{ -		$new[$config_key] = ''; +		$new_ary[$config_key] = '';  	}  	switch ($tpl_type[0])  	{  		case 'password': -			if ($new[$config_key] !== '') +			if ($new_ary[$config_key] !== '')  			{  				// replace passwords with asterixes -				$new[$config_key] = '********'; +				$new_ary[$config_key] = '********';  			}  		case 'text':  		case 'url': @@ -263,7 +265,7 @@ function build_cfg_template($tpl_type, $key, &$new, $config_key, $vars)  			$size = (int) $tpl_type[1];  			$maxlength = (int) $tpl_type[2]; -			$tpl = '<input id="' . $key . '" type="' . $tpl_type[0] . '"' . (($size) ? ' size="' . $size . '"' : '') . ' maxlength="' . (($maxlength) ? $maxlength : 255) . '" name="' . $name . '" value="' . $new[$config_key] . '"' . (($tpl_type[0] === 'password') ?  ' autocomplete="off"' : '') . ' />'; +			$tpl = '<input id="' . $key . '" type="' . $tpl_type[0] . '"' . (($size) ? ' size="' . $size . '"' : '') . ' maxlength="' . (($maxlength) ? $maxlength : 255) . '" name="' . $name . '" value="' . $new_ary[$config_key] . '"' . (($tpl_type[0] === 'password') ?  ' autocomplete="off"' : '') . ' />';  		break;  		case 'color': @@ -271,7 +273,7 @@ function build_cfg_template($tpl_type, $key, &$new, $config_key, $vars)  		case 'datetime-local':  		case 'month':  		case 'week': -			$tpl = '<input id="' . $key . '" type="' . $tpl_type[0] . '" name="' . $name . '" value="' . $new[$config_key] . '" />'; +			$tpl = '<input id="' . $key . '" type="' . $tpl_type[0] . '" name="' . $name . '" value="' . $new_ary[$config_key] . '" />';  		break;  		case 'date': @@ -285,7 +287,7 @@ function build_cfg_template($tpl_type, $key, &$new, $config_key, $vars)  				$max = (int) $tpl_type[2];  			} -			$tpl = '<input id="' . $key . '" type="' . $tpl_type[0] . '"' . (( $min != '' ) ? ' min="' . $min . '"' : '') . (( $max != '' ) ? ' max="' . $max . '"' : '') . ' name="' . $name . '" value="' . $new[$config_key] . '" />'; +			$tpl = '<input id="' . $key . '" type="' . $tpl_type[0] . '"' . (( $min != '' ) ? ' min="' . $min . '"' : '') . (( $max != '' ) ? ' max="' . $max . '"' : '') . ' name="' . $name . '" value="' . $new_ary[$config_key] . '" />';  		break;  		case 'dimension': @@ -298,19 +300,19 @@ function build_cfg_template($tpl_type, $key, &$new, $config_key, $vars)  				$max = (int) $tpl_type[2];  			} -			$tpl = '<input id="' . $key . '" type="number"' . (( $min !== '' ) ? ' min="' . $min . '"' : '') . (( $max != '' ) ? ' max="' . $max . '"' : '') . ' name="config[' . $config_key . '_width]" value="' . $new[$config_key . '_width'] . '" /> x <input type="number"' . (( $min !== '' ) ? ' min="' . $min . '"' : '') . (( $max != '' ) ? ' max="' . $max . '"' : '') . ' name="config[' . $config_key . '_height]" value="' . $new[$config_key . '_height'] . '" />'; +			$tpl = '<input id="' . $key . '" type="number"' . (( $min !== '' ) ? ' min="' . $min . '"' : '') . (( $max != '' ) ? ' max="' . $max . '"' : '') . ' name="config[' . $config_key . '_width]" value="' . $new_ary[$config_key . '_width'] . '" /> x <input type="number"' . (( $min !== '' ) ? ' min="' . $min . '"' : '') . (( $max != '' ) ? ' max="' . $max . '"' : '') . ' name="config[' . $config_key . '_height]" value="' . $new_ary[$config_key . '_height'] . '" />';  		break;  		case 'textarea':  			$rows = (int) $tpl_type[1];  			$cols = (int) $tpl_type[2]; -			$tpl = '<textarea id="' . $key . '" name="' . $name . '" rows="' . $rows . '" cols="' . $cols . '">' . $new[$config_key] . '</textarea>'; +			$tpl = '<textarea id="' . $key . '" name="' . $name . '" rows="' . $rows . '" cols="' . $cols . '">' . $new_ary[$config_key] . '</textarea>';  		break;  		case 'radio': -			$key_yes	= ($new[$config_key]) ? ' checked="checked"' : ''; -			$key_no		= (!$new[$config_key]) ? ' checked="checked"' : ''; +			$key_yes	= ($new_ary[$config_key]) ? ' checked="checked"' : ''; +			$key_no		= (!$new_ary[$config_key]) ? ' checked="checked"' : '';  			$tpl_type_cond = explode('_', $tpl_type[1]);  			$type_no = ($tpl_type_cond[0] == 'disabled' || $tpl_type_cond[0] == 'enabled') ? false : true; @@ -324,8 +326,6 @@ function build_cfg_template($tpl_type, $key, &$new, $config_key, $vars)  		case 'select':  		case 'custom': -			$return = ''; -  			if (isset($vars['method']))  			{  				$call = array($module->module, $vars['method']); @@ -347,7 +347,7 @@ function build_cfg_template($tpl_type, $key, &$new, $config_key, $vars)  					switch ($value)  					{  						case '{CONFIG_VALUE}': -							$value = $new[$config_key]; +							$value = $new_ary[$config_key];  						break;  						case '{KEY}': @@ -360,7 +360,7 @@ function build_cfg_template($tpl_type, $key, &$new, $config_key, $vars)  			}  			else  			{ -				$args = array($new[$config_key], $key); +				$args = array($new_ary[$config_key], $key);  			}  			$return = call_user_func_array($call, $args); @@ -388,6 +388,7 @@ function build_cfg_template($tpl_type, $key, &$new, $config_key, $vars)  		$tpl .= $vars['append'];  	} +	$new = $new_ary;  	/**  	* Overwrite the html code we display for the config value  	* @@ -405,6 +406,8 @@ function build_cfg_template($tpl_type, $key, &$new, $config_key, $vars)  	*/  	$vars = array('tpl_type', 'key', 'new', 'name', 'vars', 'tpl');  	extract($phpbb_dispatcher->trigger_event('core.build_config_template', compact($vars))); +	$new_ary = $new; +	unset($new);  	return $tpl;  } @@ -415,7 +418,7 @@ function build_cfg_template($tpl_type, $key, &$new, $config_key, $vars)  */  function validate_config_vars($config_vars, &$cfg_array, &$error)  { -	global $phpbb_root_path, $user, $phpbb_dispatcher; +	global $phpbb_root_path, $user, $phpbb_dispatcher, $phpbb_filesystem;  	$type	= 0;  	$min	= 1; @@ -596,7 +599,7 @@ function validate_config_vars($config_vars, &$cfg_array, &$error)  				// Check if the path is writable  				if ($config_definition['validate'] == 'wpath' || $config_definition['validate'] == 'rwpath' || $config_definition['validate'] === 'absolute_path_writable')  				{ -					if (file_exists($path) && !phpbb_is_writable($path)) +					if (file_exists($path) && !$phpbb_filesystem->is_writable($path))  					{  						$error[] = sprintf($user->lang['DIRECTORY_NOT_WRITABLE'], $cfg_array[$config_name]);  					} @@ -652,8 +655,6 @@ function validate_range($value_ary, &$error)  	foreach ($value_ary as $value)  	{  		$column = explode(':', $value['column_type']); -		$max = $min = 0; -		$type = 0;  		if (!isset($column_types[$column[0]]))  		{  			continue; | 
