diff options
| author | Marc Alexander <admin@m-a-styles.de> | 2016-01-06 13:26:19 +0100 | 
|---|---|---|
| committer | Marc Alexander <admin@m-a-styles.de> | 2016-01-06 13:26:19 +0100 | 
| commit | 11b79fec4d3e48d2446d1c73ed2f8c2b20c1ab5c (patch) | |
| tree | e82645733df4686861c8a9367c3baa79df085c8e /phpBB | |
| parent | b340e45907dc4defdbe5dcf2d75f94a6655c180d (diff) | |
| parent | b3d64b3b59234e545a75a6a7bbdda2b77cb5be84 (diff) | |
| download | forums-11b79fec4d3e48d2446d1c73ed2f8c2b20c1ab5c.tar forums-11b79fec4d3e48d2446d1c73ed2f8c2b20c1ab5c.tar.gz forums-11b79fec4d3e48d2446d1c73ed2f8c2b20c1ab5c.tar.bz2 forums-11b79fec4d3e48d2446d1c73ed2f8c2b20c1ab5c.tar.xz forums-11b79fec4d3e48d2446d1c73ed2f8c2b20c1ab5c.zip  | |
Merge pull request #4105 from marc1706/ticket/14387
[ticket/14387] Allow extending avatars by extensions in ACP
Diffstat (limited to 'phpBB')
| -rw-r--r-- | phpBB/includes/acp/acp_groups.php | 3 | ||||
| -rw-r--r-- | phpBB/includes/acp/acp_users.php | 3 | ||||
| -rw-r--r-- | phpBB/phpbb/avatar/driver/driver.php | 16 | ||||
| -rw-r--r-- | phpBB/phpbb/avatar/driver/driver_interface.php | 14 | ||||
| -rw-r--r-- | phpBB/phpbb/avatar/manager.php | 16 | 
5 files changed, 34 insertions, 18 deletions
diff --git a/phpBB/includes/acp/acp_groups.php b/phpBB/includes/acp/acp_groups.php index befbcdf24a..1e0264d8e9 100644 --- a/phpBB/includes/acp/acp_groups.php +++ b/phpBB/includes/acp/acp_groups.php @@ -672,9 +672,8 @@ class acp_groups  						$driver = $phpbb_avatar_manager->get_driver($current_driver);  						$avatars_enabled = true; -						$config_name = $phpbb_avatar_manager->get_driver_config_name($driver);  						$template->set_filenames(array( -							'avatar' => "acp_avatar_options_{$config_name}.html", +							'avatar' => $driver->get_acp_template_name(),  						));  						if ($driver->prepare_form($request, $template, $user, $avatar_data, $avatar_error)) diff --git a/phpBB/includes/acp/acp_users.php b/phpBB/includes/acp/acp_users.php index 4d0bbf5721..aa4470fd0e 100644 --- a/phpBB/includes/acp/acp_users.php +++ b/phpBB/includes/acp/acp_users.php @@ -1878,9 +1878,8 @@ class acp_users  						$driver = $phpbb_avatar_manager->get_driver($current_driver);  						$avatars_enabled = true; -						$config_name = $phpbb_avatar_manager->get_driver_config_name($driver);  						$template->set_filenames(array( -							'avatar' => "acp_avatar_options_{$config_name}.html", +							'avatar' => $driver->get_acp_template_name(),  						));  						if ($driver->prepare_form($request, $template, $user, $avatar_data, $error)) diff --git a/phpBB/phpbb/avatar/driver/driver.php b/phpBB/phpbb/avatar/driver/driver.php index b3ced7edf7..ad186635f2 100644 --- a/phpBB/phpbb/avatar/driver/driver.php +++ b/phpBB/phpbb/avatar/driver/driver.php @@ -120,6 +120,22 @@ abstract class driver implements \phpbb\avatar\driver\driver_interface  	}  	/** +	* {@inheritdoc} +	*/ +	public function get_config_name() +	{ +		return preg_replace('#^phpbb\\\\avatar\\\\driver\\\\#', '', get_class($this)); +	} + +	/** +	* {@inheritdoc} +	*/ +	public function get_acp_template_name() +	{ +		return 'acp_avatar_options_' . $this->get_config_name() . '.html'; +	} + +	/**  	* Sets the name of the driver.  	*  	* @param string	$name Driver name diff --git a/phpBB/phpbb/avatar/driver/driver_interface.php b/phpBB/phpbb/avatar/driver/driver_interface.php index 835609745a..7d6c2cff8a 100644 --- a/phpBB/phpbb/avatar/driver/driver_interface.php +++ b/phpBB/phpbb/avatar/driver/driver_interface.php @@ -26,6 +26,13 @@ interface driver_interface  	public function get_name();  	/** +	* Returns the config name of the driver. To be used in accessing the CONFIG variables. +	* +	* @return string	Config name of driver. +	*/ +	public function get_config_name(); + +	/**  	* Get the avatar url and dimensions  	*  	* @param array	$row User data or group data that has been cleaned with @@ -110,4 +117,11 @@ interface driver_interface  	* @return string Avatar driver's template name  	*/  	public function get_template_name(); + +	/** +	* Get the avatar driver's template name (ACP) +	* +	* @return string Avatar driver's template name +	*/ +	public function get_acp_template_name();  } diff --git a/phpBB/phpbb/avatar/manager.php b/phpBB/phpbb/avatar/manager.php index 8d83152ed6..26eb17c265 100644 --- a/phpBB/phpbb/avatar/manager.php +++ b/phpBB/phpbb/avatar/manager.php @@ -246,7 +246,7 @@ class manager  	*/  	public function is_enabled($driver)  	{ -		$config_name = $this->get_driver_config_name($driver); +		$config_name = $driver->get_config_name();  		return $this->config["allow_avatar_{$config_name}"];  	} @@ -260,7 +260,7 @@ class manager  	*/  	public function get_avatar_settings($driver)  	{ -		$config_name = $this->get_driver_config_name($driver); +		$config_name = $driver->get_config_name();  		return array(  			'allow_avatar_' . $config_name	=> array('lang' => 'ALLOW_' . strtoupper(str_replace('\\', '_', $config_name)),		'validate' => 'bool',	'type' => 'radio:yes_no', 'explain' => false), @@ -268,18 +268,6 @@ class manager  	}  	/** -	* Get the config name of an avatar driver -	* -	* @param object $driver Avatar driver object -	* -	* @return string Avatar driver config name -	*/ -	public function get_driver_config_name($driver) -	{ -		return preg_replace('#^phpbb\\\\avatar\\\\driver\\\\#', '', get_class($driver)); -	} - -	/**  	* Replace "error" strings with their real, localized form  	*  	* @param \phpbb\user phpBB User object  | 
