diff options
Diffstat (limited to 'phpBB/phpbb')
| -rw-r--r-- | phpBB/phpbb/auth/provider/oauth/oauth.php | 4 | ||||
| -rw-r--r-- | phpBB/phpbb/auth/provider/provider_interface.php | 7 | ||||
| -rw-r--r-- | phpBB/phpbb/db/migration/data/v32x/timezone_p3.php | 29 | ||||
| -rw-r--r-- | phpBB/phpbb/db/tools/tools.php | 2 | ||||
| -rw-r--r-- | phpBB/phpbb/event/md_exporter.php | 13 | 
5 files changed, 46 insertions, 9 deletions
| diff --git a/phpBB/phpbb/auth/provider/oauth/oauth.php b/phpBB/phpbb/auth/provider/oauth/oauth.php index 93419d2915..1a3083d42e 100644 --- a/phpBB/phpbb/auth/provider/oauth/oauth.php +++ b/phpBB/phpbb/auth/provider/oauth/oauth.php @@ -264,7 +264,7 @@ class oauth extends \phpbb\auth\provider\base  			}  			// Retrieve the user's account -			$sql = 'SELECT user_id, username, user_password, user_passchg, user_email, user_type, user_login_attempts +			$sql = 'SELECT user_id, username, user_password, user_passchg, user_email, user_ip, user_type, user_login_attempts  				FROM ' . $this->users_table . '  					WHERE user_id = ' . (int) $row['user_id'];  			$result = $this->db->sql_query($sql); @@ -423,7 +423,7 @@ class oauth extends \phpbb\auth\provider\base  			if ($credentials['key'] && $credentials['secret'])  			{  				$actual_name = str_replace('auth.provider.oauth.service.', '', $service_name); -				$redirect_url = build_url(false) . '&login=external&oauth_service=' . $actual_name; +				$redirect_url = generate_board_url() . '/ucp.' . $this->php_ext . '?mode=login&login=external&oauth_service=' . $actual_name;  				$login_data['BLOCK_VARS'][$service_name] = array(  					'REDIRECT_URL'	=> redirect($redirect_url, true),  					'SERVICE_NAME'	=> $this->user->lang['AUTH_PROVIDER_OAUTH_SERVICE_' . strtoupper($actual_name)], diff --git a/phpBB/phpbb/auth/provider/provider_interface.php b/phpBB/phpbb/auth/provider/provider_interface.php index 35e0f559a1..463324ff46 100644 --- a/phpBB/phpbb/auth/provider/provider_interface.php +++ b/phpBB/phpbb/auth/provider/provider_interface.php @@ -71,9 +71,10 @@ interface provider_interface  	 * options with whatever configuraton values are passed to it as an array.  	 * It then returns the name of the acp file related to this authentication  	 * provider. -	 * @param	array	$new_config Contains the new configuration values that -	 *								have been set in acp_board. -	 * @return	array|null		Returns null if not implemented or an array with +	 * +	 * @param \phpbb\config\config	$new_config	Contains the new configuration values +	 * 											that have been set in acp_board. +	 * @return array|null		Returns null if not implemented or an array with  	 *							the template file name and an array of the vars  	 *							that the template needs that must conform to the  	 *							following example: diff --git a/phpBB/phpbb/db/migration/data/v32x/timezone_p3.php b/phpBB/phpbb/db/migration/data/v32x/timezone_p3.php new file mode 100644 index 0000000000..433f62ace9 --- /dev/null +++ b/phpBB/phpbb/db/migration/data/v32x/timezone_p3.php @@ -0,0 +1,29 @@ +<?php +/** +* +* This file is part of the phpBB Forum Software package. +* +* @copyright (c) phpBB Limited <https://www.phpbb.com> +* @license GNU General Public License, version 2 (GPL-2.0) +* +* For full copyright and license information, please see +* the docs/CREDITS.txt file. +* +*/ + +namespace phpbb\db\migration\data\v32x; + +class timezone_p3 extends \phpbb\db\migration\migration +{ +	static public function depends_on() +	{ +		return array('\phpbb\db\migration\data\v310\timezone'); +	} + +	public function update_data() +	{ +		return array( +			array('config.remove', array('board_dst')), +		); +	} +} diff --git a/phpBB/phpbb/db/tools/tools.php b/phpBB/phpbb/db/tools/tools.php index d21d34b8a9..c3352a1f66 100644 --- a/phpBB/phpbb/db/tools/tools.php +++ b/phpBB/phpbb/db/tools/tools.php @@ -576,7 +576,7 @@ class tools implements tools_interface  			{  				foreach ($indexes as $index_name)  				{ -					if (!$this->sql_index_exists($table, $index_name)) +					if (!$this->sql_index_exists($table, $index_name) && !$this->sql_unique_index_exists($table, $index_name))  					{  						continue;  					} diff --git a/phpBB/phpbb/event/md_exporter.php b/phpBB/phpbb/event/md_exporter.php index c3942bd7ce..1a2d7c989e 100644 --- a/phpBB/phpbb/event/md_exporter.php +++ b/phpBB/phpbb/event/md_exporter.php @@ -389,9 +389,16 @@ class md_exporter  			$files = explode("\n    + ", $file_details);  			foreach ($files as $file)  			{ +				if (!preg_match('#^([^ ]+)( \([0-9]+\))?$#', $file)) +				{ +					throw new \LogicException("Invalid event instances for file '{$file}' found for event '{$this->current_event}'", 1); +				} + +				list($file) = explode(" ", $file); +  				if (!file_exists($this->path . $file) || substr($file, -5) !== '.html')  				{ -					throw new \LogicException("Invalid file '{$file}' not found for event '{$this->current_event}'", 1); +					throw new \LogicException("Invalid file '{$file}' not found for event '{$this->current_event}'", 2);  				}  				if (($this->filter !== 'adm') && strpos($file, 'styles/prosilver/template/') === 0) @@ -404,7 +411,7 @@ class md_exporter  				}  				else  				{ -					throw new \LogicException("Invalid file '{$file}' not found for event '{$this->current_event}'", 2); +					throw new \LogicException("Invalid file '{$file}' not found for event '{$this->current_event}'", 3);  				}  				$this->events_by_file[$file][] = $this->current_event; @@ -424,7 +431,7 @@ class md_exporter  		}  		else  		{ -			throw new \LogicException("Invalid file list found for event '{$this->current_event}'", 2); +			throw new \LogicException("Invalid file list found for event '{$this->current_event}'", 1);  		}  		return $files_list; | 
