diff options
Diffstat (limited to 'phpBB')
| -rw-r--r-- | phpBB/docs/CREDITS.txt | 3 | ||||
| -rw-r--r-- | phpBB/includes/acp/acp_attachments.php | 2 | ||||
| -rw-r--r-- | phpBB/includes/acp/acp_extensions.php | 5 | ||||
| -rw-r--r-- | phpBB/includes/acp/acp_search.php | 1 | ||||
| -rw-r--r-- | phpBB/includes/functions.php | 24 | ||||
| -rw-r--r-- | phpBB/includes/functions_acp.php | 13 | ||||
| -rw-r--r-- | phpBB/phpbb/captcha/plugins/captcha_abstract.php | 2 | ||||
| -rw-r--r-- | phpBB/posting.php | 10 | ||||
| -rw-r--r-- | phpBB/web.config | 12 | 
9 files changed, 43 insertions, 29 deletions
| diff --git a/phpBB/docs/CREDITS.txt b/phpBB/docs/CREDITS.txt index 5c17787495..e3f2b325e8 100644 --- a/phpBB/docs/CREDITS.txt +++ b/phpBB/docs/CREDITS.txt @@ -24,9 +24,10 @@ phpBB Lead Developer:    naderman (Nils Adermann)  phpBB Developers:        bantu (Andreas Fischer)                           dhruv.goel92 (Dhruv Goel) +                         Elsensee (Oliver Schramm)                           marc1706 (Marc Alexander)                           nickvergessen (Joas Schilling) -                         nicofuma (Tristan Darricau) +                         Nicofuma (Tristan Darricau)                           prototech (Cesar Gallegos)  For a list of phpBB Team members, please see: diff --git a/phpBB/includes/acp/acp_attachments.php b/phpBB/includes/acp/acp_attachments.php index 6bef42c472..78488b4048 100644 --- a/phpBB/includes/acp/acp_attachments.php +++ b/phpBB/includes/acp/acp_attachments.php @@ -153,7 +153,7 @@ class acp_attachments  						'img_create_thumbnail'		=> array('lang' => 'CREATE_THUMBNAIL',		'validate' => 'bool',	'type' => 'radio:yes_no', 'explain' => true),  						'img_max_thumb_width'		=> array('lang' => 'MAX_THUMB_WIDTH',		'validate' => 'int:0:999999999999999',	'type' => 'number:0:999999999999999', 'explain' => true, 'append' => ' ' . $user->lang['PIXEL']),  						'img_min_thumb_filesize'	=> array('lang' => 'MIN_THUMB_FILESIZE',	'validate' => 'int:0:999999999999999',	'type' => 'number:0:999999999999999', 'explain' => true, 'append' => ' ' . $user->lang['BYTES']), -						'img_imagick'				=> array('lang' => 'IMAGICK_PATH',			'validate' => 'path',	'type' => 'text:20:200', 'explain' => true, 'append' => '  <span>[ <a href="' . $this->u_action . '&action=imgmagick">' . $user->lang['SEARCH_IMAGICK'] . '</a> ]</span>'), +						'img_imagick'				=> array('lang' => 'IMAGICK_PATH',			'validate' => 'absolute_path',	'type' => 'text:20:200', 'explain' => true, 'append' => '  <span>[ <a href="' . $this->u_action . '&action=imgmagick">' . $user->lang['SEARCH_IMAGICK'] . '</a> ]</span>'),  						'img_max'					=> array('lang' => 'MAX_IMAGE_SIZE',		'validate' => 'int:0:9999',	'type' => 'dimension:0:9999', 'explain' => true, 'append' => ' ' . $user->lang['PIXEL']),  						'img_link'					=> array('lang' => 'IMAGE_LINK_SIZE',		'validate' => 'int:0:9999',	'type' => 'dimension:0:9999', 'explain' => true, 'append' => ' ' . $user->lang['PIXEL']),  					) diff --git a/phpBB/includes/acp/acp_extensions.php b/phpBB/includes/acp/acp_extensions.php index 89fdc8b863..0c9bc0deab 100644 --- a/phpBB/includes/acp/acp_extensions.php +++ b/phpBB/includes/acp/acp_extensions.php @@ -174,11 +174,6 @@ class acp_extensions  					trigger_error($user->lang['EXTENSION_NOT_ENABLEABLE'] . adm_back_link($this->u_action), E_USER_WARNING);  				} -				if ($phpbb_extension_manager->is_enabled($ext_name)) -				{ -					redirect($this->u_action); -				} -  				try  				{  					while ($phpbb_extension_manager->enable_step($ext_name)) diff --git a/phpBB/includes/acp/acp_search.php b/phpBB/includes/acp/acp_search.php index f7382f826d..e0991158fe 100644 --- a/phpBB/includes/acp/acp_search.php +++ b/phpBB/includes/acp/acp_search.php @@ -445,7 +445,6 @@ class acp_search  		$search = null;  		$error = false; -		$search_options = '';  		foreach ($search_types as $type)  		{  			if ($this->init_search($type, $search, $error) || !method_exists($search, 'index_created')) diff --git a/phpBB/includes/functions.php b/phpBB/includes/functions.php index 2514dd48d5..949d33c566 100644 --- a/phpBB/includes/functions.php +++ b/phpBB/includes/functions.php @@ -2793,19 +2793,6 @@ function login_box($redirect = '', $l_explain = '', $l_success = '', $admin = fa  		// Special cases... determine  		switch ($result['status'])  		{ -			case LOGIN_ERROR_ATTEMPTS: - -				$captcha = $phpbb_container->get('captcha.factory')->get_instance($config['captcha_plugin']); -				$captcha->init(CONFIRM_LOGIN); -				// $captcha->reset(); - -				$template->assign_vars(array( -					'CAPTCHA_TEMPLATE'			=> $captcha->get_template(), -				)); - -				$err = $user->lang[$result['error_msg']]; -			break; -  			case LOGIN_ERROR_PASSWORD_CONVERT:  				$err = sprintf(  					$user->lang[$result['error_msg']], @@ -2816,6 +2803,17 @@ function login_box($redirect = '', $l_explain = '', $l_success = '', $admin = fa  				);  			break; +			case LOGIN_ERROR_ATTEMPTS: + +				$captcha = $phpbb_container->get('captcha.factory')->get_instance($config['captcha_plugin']); +				$captcha->init(CONFIRM_LOGIN); +				// $captcha->reset(); + +				$template->assign_vars(array( +					'CAPTCHA_TEMPLATE'			=> $captcha->get_template(), +				)); +			// no break; +  			// Username, password, etc...  			default:  				$err = $user->lang[$result['error_msg']]; diff --git a/phpBB/includes/functions_acp.php b/phpBB/includes/functions_acp.php index e30c6da505..a53a54368e 100644 --- a/phpBB/includes/functions_acp.php +++ b/phpBB/includes/functions_acp.php @@ -550,6 +550,9 @@ function validate_config_vars($config_vars, &$cfg_array, &$error)  				$cfg_array[$config_name] = trim($destination); +			// Absolute file path +			case 'absolute_path': +			case 'absolute_path_writable':  			// Path being relative (still prefixed by phpbb_root_path), but with the ability to escape the root dir...  			case 'path':  			case 'wpath': @@ -568,20 +571,22 @@ function validate_config_vars($config_vars, &$cfg_array, &$error)  					break;  				} -				if (!file_exists($phpbb_root_path . $cfg_array[$config_name])) +				$path = in_array($config_definition['validate'], array('wpath', 'path', 'rpath', 'rwpath')) ? $phpbb_root_path . $cfg_array[$config_name] : $cfg_array[$config_name]; + +				if (!file_exists($path))  				{  					$error[] = sprintf($user->lang['DIRECTORY_DOES_NOT_EXIST'], $cfg_array[$config_name]);  				} -				if (file_exists($phpbb_root_path . $cfg_array[$config_name]) && !is_dir($phpbb_root_path . $cfg_array[$config_name])) +				if (file_exists($path) && !is_dir($path))  				{  					$error[] = sprintf($user->lang['DIRECTORY_NOT_DIR'], $cfg_array[$config_name]);  				}  				// Check if the path is writable -				if ($config_definition['validate'] == 'wpath' || $config_definition['validate'] == 'rwpath') +				if ($config_definition['validate'] == 'wpath' || $config_definition['validate'] == 'rwpath' || $config_definition['validate'] === 'absolute_path_writable')  				{ -					if (file_exists($phpbb_root_path . $cfg_array[$config_name]) && !phpbb_is_writable($phpbb_root_path . $cfg_array[$config_name])) +					if (file_exists($path) && !phpbb_is_writable($path))  					{  						$error[] = sprintf($user->lang['DIRECTORY_NOT_WRITABLE'], $cfg_array[$config_name]);  					} diff --git a/phpBB/phpbb/captcha/plugins/captcha_abstract.php b/phpBB/phpbb/captcha/plugins/captcha_abstract.php index 2c0b95411e..799947a84e 100644 --- a/phpBB/phpbb/captcha/plugins/captcha_abstract.php +++ b/phpBB/phpbb/captcha/plugins/captcha_abstract.php @@ -117,7 +117,7 @@ abstract class captcha_abstract  	function get_demo_template($id)  	{ -		global $config, $user, $template, $phpbb_admin_path, $phpEx; +		global $config, $user, $template, $request, $phpbb_admin_path, $phpEx;  		$variables = ''; diff --git a/phpBB/posting.php b/phpBB/posting.php index 9768dc6ea7..2e03710c1b 100644 --- a/phpBB/posting.php +++ b/phpBB/posting.php @@ -1525,9 +1525,13 @@ if (!sizeof($error) && $preview)  			'L_MAX_VOTES'		=> $user->lang('MAX_OPTIONS_SELECT', (int) $post_data['poll_max_options']),  		)); -		$parse_poll->message = implode("\n", $post_data['poll_options']); -		$parse_poll->format_display($post_data['enable_bbcode'], $post_data['enable_urls'], $post_data['enable_smilies']); -		$preview_poll_options = explode('<br />', $parse_poll->message); +		$preview_poll_options = array(); +		foreach ($post_data['poll_options'] as $poll_option) +		{ +			$parse_poll->message = $poll_option; +			$parse_poll->format_display($post_data['enable_bbcode'], $post_data['enable_urls'], $post_data['enable_smilies']); +			$preview_poll_options[] = $parse_poll->message; +		}  		unset($parse_poll);  		foreach ($preview_poll_options as $key => $option) diff --git a/phpBB/web.config b/phpBB/web.config index a73c328626..99a1fe6023 100644 --- a/phpBB/web.config +++ b/phpBB/web.config @@ -1,6 +1,18 @@  <?xml version="1.0" encoding="UTF-8"?>  <configuration>  	<system.webServer> +		<rewrite> +			<rules> +				<rule name="Extension Routes" stopProcessing="true"> +					<match url="^(.*)$" ignoreCase="true" /> +					<conditions> +						<add input="{REQUEST_FILENAME}" matchType="IsFile" ignoreCase="false" negate="true" /> +						<add input="{REQUEST_FILENAME}" matchType="IsDirectory" ignoreCase="false" negate="true" /> +					</conditions> +					<action type="Rewrite" url="app.php" appendQueryString="true" /> +				</rule> +			</rules> +		</rewrite>  		<security>  			<requestFiltering>  				<hiddenSegments> | 
