mirror of
https://github.com/phpbb/phpbb.git
synced 2025-06-10 05:18:52 +00:00
[feature/avatars] Introduce global phpbb_avatar_manager
PHPBB3-10018
This commit is contained in:
parent
e8a9c0ae6d
commit
eea2ec5052
6 changed files with 21 additions and 28 deletions
|
@ -130,6 +130,8 @@ $style = new phpbb_style($phpbb_root_path, $phpEx, $config, $user, $phpbb_style_
|
|||
$phpbb_subscriber_loader = new phpbb_event_extension_subscriber_loader($phpbb_dispatcher, $phpbb_extension_manager);
|
||||
$phpbb_subscriber_loader->load();
|
||||
|
||||
$phpbb_avatar_manager = new phpbb_avatar_manager($phpbb_root_path, $phpEx, $config, $request, $cache->get_driver());
|
||||
|
||||
// Add own hook handler
|
||||
require($phpbb_root_path . 'includes/hooks/index.' . $phpEx);
|
||||
$phpbb_hook = new phpbb_hook(array('exit_handler', 'phpbb_user_session_handler', 'append_sid', array('template', 'display')));
|
||||
|
|
|
@ -82,6 +82,8 @@ if (isset($_GET['avatar']))
|
|||
$phpbb_subscriber_loader = new phpbb_event_extension_subscriber_loader($phpbb_dispatcher, $phpbb_extension_manager);
|
||||
$phpbb_subscriber_loader->load();
|
||||
|
||||
$phpbb_avatar_manager = new phpbb_avatar_manager($phpbb_root_path, $phpEx, $config, $request, $cache->get_driver());
|
||||
|
||||
$filename = request_var('avatar', '');
|
||||
$avatar_group = false;
|
||||
$exit = false;
|
||||
|
|
|
@ -26,6 +26,7 @@ class acp_groups
|
|||
{
|
||||
global $config, $db, $user, $auth, $template, $cache;
|
||||
global $phpbb_root_path, $phpbb_admin_path, $phpEx, $table_prefix, $file_uploads;
|
||||
global $phpbb_avatar_manager;
|
||||
|
||||
$user->add_lang('acp/groups');
|
||||
$this->tpl_name = 'acp_groups';
|
||||
|
@ -282,16 +283,13 @@ class acp_groups
|
|||
|
||||
// Setup avatar data for later
|
||||
$avatars_enabled = false;
|
||||
$avatar_manager = null;
|
||||
$avatar_drivers = null;
|
||||
$avatar_data = null;
|
||||
$avatar_error = array();
|
||||
|
||||
if ($config['allow_avatar'])
|
||||
{
|
||||
$avatar_manager = new phpbb_avatar_manager($phpbb_root_path, $phpEx, $config, $request, $cache->getDriver());
|
||||
|
||||
$avatar_drivers = $avatar_manager->get_valid_drivers();
|
||||
$avatar_drivers = $phpbb_avatar_manager->get_valid_drivers();
|
||||
sort($avatar_drivers);
|
||||
|
||||
// This is normalised data, without the group_ prefix
|
||||
|
@ -337,7 +335,7 @@ class acp_groups
|
|||
$driver = request_var('avatar_driver', '');
|
||||
if (in_array($driver, $avatar_drivers) && $config["allow_avatar_$driver"])
|
||||
{
|
||||
$avatar = $avatar_manager->get_driver($driver);
|
||||
$avatar = $phpbb_avatar_manager->get_driver($driver);
|
||||
$result = $avatar->process_form($template, $avatar_data, $avatar_error);
|
||||
|
||||
if ($result && empty($avatar_error))
|
||||
|
@ -534,7 +532,7 @@ class acp_groups
|
|||
'avatar' => "acp_avatar_options_$driver.html",
|
||||
));
|
||||
|
||||
$avatar = $avatar_manager->get_driver($driver);
|
||||
$avatar = $phpbb_avatar_manager->get_driver($driver);
|
||||
|
||||
if ($avatar->prepare_form($template, $avatar_data, $avatar_error))
|
||||
{
|
||||
|
|
|
@ -33,6 +33,7 @@ class acp_users
|
|||
global $config, $db, $user, $auth, $template, $cache;
|
||||
global $phpbb_root_path, $phpbb_admin_path, $phpEx, $table_prefix, $file_uploads;
|
||||
global $request;
|
||||
global $phpbb_avatar_manager;
|
||||
|
||||
$user->add_lang(array('posting', 'ucp', 'acp/users'));
|
||||
$this->tpl_name = 'acp_users';
|
||||
|
@ -467,8 +468,7 @@ class acp_users
|
|||
$db->sql_query($sql);
|
||||
|
||||
// Delete old avatar if present
|
||||
$avatar_manager = new phpbb_avatar_manager($phpbb_root_path, $phpEx, $config, $request, $cache->getDriver());
|
||||
if ($driver = $avatar_manager->get_driver($user_row['user_avatar_type']))
|
||||
if ($driver = $phpbb_avatar_manager->get_driver($user_row['user_avatar_type']))
|
||||
{
|
||||
$driver->delete($user_row);
|
||||
}
|
||||
|
@ -1688,9 +1688,7 @@ class acp_users
|
|||
$avatars_enabled = false;
|
||||
if ($config['allow_avatar'])
|
||||
{
|
||||
$avatar_manager = new phpbb_avatar_manager($phpbb_root_path, $phpEx, $config, $request, $cache->getDriver());
|
||||
|
||||
$avatar_drivers = $avatar_manager->get_valid_drivers();
|
||||
$avatar_drivers = $phpbb_avatar_manager->get_valid_drivers();
|
||||
sort($avatar_drivers);
|
||||
|
||||
// This is normalised data, without the user_ prefix
|
||||
|
@ -1703,7 +1701,7 @@ class acp_users
|
|||
$driver = request_var('avatar_driver', '');
|
||||
if (in_array($driver, $avatar_drivers) && $config["allow_avatar_$driver"])
|
||||
{
|
||||
$avatar = $avatar_manager->get_driver($driver);
|
||||
$avatar = $phpbb_avatar_manager->get_driver($driver);
|
||||
$result = $avatar->process_form($template, $avatar_data, $error);
|
||||
|
||||
if ($result && empty($error))
|
||||
|
@ -1758,7 +1756,7 @@ class acp_users
|
|||
'avatar' => "acp_avatar_options_$driver.html",
|
||||
));
|
||||
|
||||
$avatar = $avatar_manager->get_driver($driver);
|
||||
$avatar = $phpbb_avatar_manager->get_driver($driver);
|
||||
|
||||
if ($avatar->prepare_form($template, $avatar_data, $error))
|
||||
{
|
||||
|
|
|
@ -1313,8 +1313,7 @@ function get_avatar($row, $alt, $ignore_config = false)
|
|||
{
|
||||
global $user, $config, $cache, $phpbb_root_path, $phpEx;
|
||||
global $request;
|
||||
|
||||
static $avatar_manager = null;
|
||||
global $phpbb_avatar_manager;
|
||||
|
||||
if (!$config['allow_avatar'] && !$ignore_config)
|
||||
{
|
||||
|
@ -1368,12 +1367,7 @@ function get_avatar($row, $alt, $ignore_config = false)
|
|||
break;
|
||||
|
||||
default:
|
||||
if (empty($avatar_manager))
|
||||
{
|
||||
$avatar_manager = new phpbb_avatar_manager($phpbb_root_path, $phpEx, $config, $request, $cache->get_driver());
|
||||
}
|
||||
|
||||
$avatar = $avatar_manager->get_driver($row['avatar_type']);
|
||||
$avatar = $phpbb_avatar_manager->get_driver($row['avatar_type']);
|
||||
|
||||
if ($avatar)
|
||||
{
|
||||
|
|
|
@ -30,6 +30,7 @@ class ucp_profile
|
|||
{
|
||||
global $cache, $config, $db, $user, $auth, $template, $phpbb_root_path, $phpEx;
|
||||
global $request;
|
||||
global $phpbb_avatar_manager;
|
||||
|
||||
$user->add_lang('posting');
|
||||
|
||||
|
@ -552,11 +553,9 @@ class ucp_profile
|
|||
|
||||
if ($config['allow_avatar'] && $auth->acl_get('u_chgavatar'))
|
||||
{
|
||||
$avatar_manager = new phpbb_avatar_manager($phpbb_root_path, $phpEx, $config, $request, $cache->getDriver());
|
||||
|
||||
$avatar_drivers = $avatar_manager->get_valid_drivers();
|
||||
$avatar_drivers = $phpbb_avatar_manager->get_valid_drivers();
|
||||
sort($avatar_drivers);
|
||||
|
||||
|
||||
// This is normalised data, without the user_ prefix
|
||||
$avatar_data = phpbb_avatar_driver::clean_row($user->data, phpbb_avatar_driver::FROM_USER);
|
||||
|
||||
|
@ -567,7 +566,7 @@ class ucp_profile
|
|||
$driver = request_var('avatar_driver', '');
|
||||
if (in_array($driver, $avatar_drivers) && $config["allow_avatar_$driver"])
|
||||
{
|
||||
$avatar = $avatar_manager->get_driver($driver);
|
||||
$avatar = $phpbb_avatar_manager->get_driver($driver);
|
||||
$result = $avatar->process_form($template, $avatar_data, $error);
|
||||
|
||||
if ($result && empty($error))
|
||||
|
@ -594,7 +593,7 @@ class ucp_profile
|
|||
else
|
||||
{
|
||||
// They are removing their avatar or are trying to play games with us
|
||||
if ($avatar = $avatar_manager->get_driver($user->data['user_avatar_type']))
|
||||
if ($avatar = $phpbb_avatar_manager->get_driver($user->data['user_avatar_type']))
|
||||
{
|
||||
$avatar->delete($avatar_data);
|
||||
}
|
||||
|
@ -634,7 +633,7 @@ class ucp_profile
|
|||
'avatar' => "ucp_avatar_options_$driver.html",
|
||||
));
|
||||
|
||||
$avatar = $avatar_manager->get_driver($driver);
|
||||
$avatar = $phpbb_avatar_manager->get_driver($driver);
|
||||
|
||||
if ($avatar->prepare_form($template, $avatar_data, $error))
|
||||
{
|
||||
|
|
Loading…
Add table
Reference in a new issue