[feature/avatars] Fix variable names

PHPBB3-10018
This commit is contained in:
Marc Alexander 2012-11-30 16:46:11 +01:00
parent d5cbedaaa2
commit 33b98dc5ba
7 changed files with 62 additions and 68 deletions

View file

@ -109,7 +109,7 @@ class acp_board
case 'avatar': case 'avatar':
$phpbb_avatar_manager = $phpbb_container->get('avatar.manager'); $phpbb_avatar_manager = $phpbb_container->get('avatar.manager');
$avatar_drivers = $phpbb_avatar_manager->get_valid_drivers(true); $avatar_drivers = $phpbb_avatar_manager->get_valid_drivers(true);
sort($avatar_drivers);
$avatar_vars = array(); $avatar_vars = array();
foreach ($avatar_drivers as $driver) foreach ($avatar_drivers as $driver)
{ {

View file

@ -282,7 +282,6 @@ class acp_groups
$user->add_lang('ucp'); $user->add_lang('ucp');
// Setup avatar data for later // Setup avatar data for later
$phpbb_avatar_manager = $phpbb_container->get('avatar.manager');
$avatars_enabled = false; $avatars_enabled = false;
$avatar_drivers = null; $avatar_drivers = null;
$avatar_data = null; $avatar_data = null;
@ -290,8 +289,8 @@ class acp_groups
if ($config['allow_avatar']) if ($config['allow_avatar'])
{ {
$phpbb_avatar_manager = $phpbb_container->get('avatar.manager');
$avatar_drivers = $phpbb_avatar_manager->get_valid_drivers(); $avatar_drivers = $phpbb_avatar_manager->get_valid_drivers();
sort($avatar_drivers);
// This is normalised data, without the group_ prefix // This is normalised data, without the group_ prefix
$avatar_data = phpbb_avatar_manager::clean_row($group_row); $avatar_data = phpbb_avatar_manager::clean_row($group_row);
@ -334,27 +333,26 @@ class acp_groups
if ($config['allow_avatar']) if ($config['allow_avatar'])
{ {
// Handle avatar // Handle avatar
$driver = $phpbb_avatar_manager->clean_driver_name($request->variable('avatar_driver', '')); $driver_name = $phpbb_avatar_manager->clean_driver_name($request->variable('avatar_driver', ''));
$config_name = preg_replace('#^avatar\.driver.#', '', $driver);
if (in_array($driver, $avatar_drivers) && $config["allow_avatar_$config_name"] && !$request->is_set_post('avatar_delete')) if (in_array($driver_name, $avatar_drivers) && !$request->is_set_post('avatar_delete'))
{ {
$avatar = $phpbb_avatar_manager->get_driver($driver); $driver = $phpbb_avatar_manager->get_driver($driver_name);
$result = $avatar->process_form($template, $avatar_data, $avatar_error); $result = $driver->process_form($template, $avatar_data, $avatar_error);
if ($result && empty($avatar_error)) if ($result && empty($avatar_error))
{ {
$result['avatar_type'] = $driver; $result['avatar_type'] = $driver_name;
$submit_ary = array_merge($submit_ary, $result); $submit_ary = array_merge($submit_ary, $result);
} }
} }
else else
{ {
$avatar = $phpbb_avatar_manager->get_driver($user->data['user_avatar_type']); $driver = $phpbb_avatar_manager->get_driver($user->data['user_avatar_type']);
if ($avatar) if ($driver)
{ {
$avatar->delete($avatar_data); $driver->delete($avatar_data);
} }
// Removing the avatar // Removing the avatar
@ -526,7 +524,7 @@ class acp_groups
foreach ($avatar_drivers as $driver) foreach ($avatar_drivers as $driver)
{ {
$avatar = $phpbb_avatar_manager->get_driver($driver); $driver = $phpbb_avatar_manager->get_driver($driver);
$avatars_enabled = true; $avatars_enabled = true;
$config_name = preg_replace('#^avatar\.driver.#', '', $driver); $config_name = preg_replace('#^avatar\.driver.#', '', $driver);
@ -534,7 +532,7 @@ class acp_groups
'avatar' => "acp_avatar_options_$config_name.html", 'avatar' => "acp_avatar_options_$config_name.html",
)); ));
if ($avatar->prepare_form($template, $avatar_data, $avatar_error)) if ($driver->prepare_form($template, $avatar_data, $avatar_error))
{ {
$driver_name = $phpbb_avatar_manager->prepare_driver_name($driver); $driver_name = $phpbb_avatar_manager->prepare_driver_name($driver);
$driver_upper = strtoupper($driver_name); $driver_upper = strtoupper($driver_name);

View file

@ -1733,12 +1733,11 @@ class acp_users
include($phpbb_root_path . 'includes/functions_display.' . $phpEx); include($phpbb_root_path . 'includes/functions_display.' . $phpEx);
$avatars_enabled = false; $avatars_enabled = false;
$phpbb_avatar_manager = $phpbb_container->get('avatar.manager');
if ($config['allow_avatar']) if ($config['allow_avatar'])
{ {
$phpbb_avatar_manager = $phpbb_container->get('avatar.manager');
$avatar_drivers = $phpbb_avatar_manager->get_valid_drivers(); $avatar_drivers = $phpbb_avatar_manager->get_valid_drivers();
sort($avatar_drivers);
// This is normalised data, without the user_ prefix // This is normalised data, without the user_ prefix
$avatar_data = phpbb_avatar_manager::clean_row($user_row); $avatar_data = phpbb_avatar_manager::clean_row($user_row);
@ -1747,19 +1746,18 @@ class acp_users
{ {
if (check_form_key($form_name)) if (check_form_key($form_name))
{ {
$driver = $phpbb_avatar_manager->clean_driver_name($request->variable('avatar_driver', '')); $driver_name = $phpbb_avatar_manager->clean_driver_name($request->variable('avatar_driver', ''));
$config_name = preg_replace('#^avatar\.driver.#', '', $driver);
if (in_array($driver, $avatar_drivers) && $config["allow_avatar_$config_name"] && !$request->is_set_post('avatar_delete')) if (in_array($driver_name, $avatar_drivers) && !$request->is_set_post('avatar_delete'))
{ {
$avatar = $phpbb_avatar_manager->get_driver($driver); $driver = $phpbb_avatar_manager->get_driver($driver_name);
$result = $avatar->process_form($template, $avatar_data, $error); $result = $driver->process_form($template, $avatar_data, $error);
if ($result && empty($error)) if ($result && empty($error))
{ {
// Success! Lets save the result in the database // Success! Lets save the result in the database
$result = array( $result = array(
'user_avatar_type' => $driver, 'user_avatar_type' => $driver_name,
'user_avatar' => $result['avatar'], 'user_avatar' => $result['avatar'],
'user_avatar_width' => $result['avatar_width'], 'user_avatar_width' => $result['avatar_width'],
'user_avatar_height' => $result['avatar_height'], 'user_avatar_height' => $result['avatar_height'],
@ -1775,10 +1773,10 @@ class acp_users
} }
else else
{ {
$avatar = $phpbb_avatar_manager->get_driver($user->data['user_avatar_type']); $driver = $phpbb_avatar_manager->get_driver($user->data['user_avatar_type']);
if ($avatar) if ($driver)
{ {
$avatar->delete($avatar_data); $driver->delete($avatar_data);
} }
// Removing the avatar // Removing the avatar
@ -1805,19 +1803,19 @@ class acp_users
$focused_driver = $phpbb_avatar_manager->clean_driver_name($request->variable('avatar_driver', $user_row['user_avatar_type'])); $focused_driver = $phpbb_avatar_manager->clean_driver_name($request->variable('avatar_driver', $user_row['user_avatar_type']));
foreach ($avatar_drivers as $driver) foreach ($avatar_drivers as $current_driver)
{ {
$avatar = $phpbb_avatar_manager->get_driver($driver); $driver = $phpbb_avatar_manager->get_driver($current_driver);
$avatars_enabled = true; $avatars_enabled = true;
$config_name = preg_replace('#^avatar\.driver.#', '', $driver); $config_name = preg_replace('#^avatar\.driver.#', '', $current_driver);
$template->set_filenames(array( $template->set_filenames(array(
'avatar' => "acp_avatar_options_$config_name.html", 'avatar' => "acp_avatar_options_$config_name.html",
)); ));
if ($avatar->prepare_form($template, $avatar_data, $error)) if ($driver->prepare_form($template, $avatar_data, $error))
{ {
$driver_name = $phpbb_avatar_manager->prepare_driver_name($driver); $driver_name = $phpbb_avatar_manager->prepare_driver_name($current_driver);
$driver_upper = strtoupper($driver_name); $driver_upper = strtoupper($driver_name);
$template->assign_block_vars('avatar_drivers', array( $template->assign_block_vars('avatar_drivers', array(
@ -1825,7 +1823,7 @@ class acp_users
'L_EXPLAIN' => $user->lang($driver_upper . '_EXPLAIN'), 'L_EXPLAIN' => $user->lang($driver_upper . '_EXPLAIN'),
'DRIVER' => $driver_name, 'DRIVER' => $driver_name,
'SELECTED' => $driver == $focused_driver, 'SELECTED' => $current_driver == $focused_driver,
'OUTPUT' => $template->assign_display('avatar'), 'OUTPUT' => $template->assign_display('avatar'),
)); ));
} }
@ -1842,7 +1840,7 @@ class acp_users
} }
else else
{ {
$error[$key] = $user->lang("$lang"); $error[$key] = $user->lang($lang);
} }
} }

View file

@ -117,6 +117,7 @@ class phpbb_avatar_manager
self::$valid_drivers[$driver->get_name()] = $driver->get_name(); self::$valid_drivers[$driver->get_name()] = $driver->get_name();
} }
} }
asort(self::$valid_drivers);
} }
} }

View file

@ -1367,18 +1367,18 @@ function get_avatar($row, $alt, $ignore_config = false)
); );
$phpbb_avatar_manager = $phpbb_container->get('avatar.manager'); $phpbb_avatar_manager = $phpbb_container->get('avatar.manager');
$avatar = $phpbb_avatar_manager->get_driver($row['avatar_type'], $ignore_config); $driver = $phpbb_avatar_manager->get_driver($row['avatar_type'], $ignore_config);
$html = ''; $html = '';
if ($avatar) if ($driver)
{ {
$html = $avatar->get_custom_html($row, $ignore_config, $alt); $html = $driver->get_custom_html($row, $ignore_config, $alt);
if (!empty($html)) if (!empty($html))
{ {
return $html; return $html;
} }
$avatar_data = $avatar->get_data($row, $ignore_config); $avatar_data = $driver->get_data($row, $ignore_config);
} }
else else
{ {

View file

@ -484,7 +484,6 @@ class ucp_groups
$error = array(); $error = array();
// Setup avatar data for later // Setup avatar data for later
$phpbb_avatar_manager = $phpbb_container->get('avatar.manager');
$avatars_enabled = false; $avatars_enabled = false;
$avatar_drivers = null; $avatar_drivers = null;
$avatar_data = null; $avatar_data = null;
@ -492,8 +491,8 @@ class ucp_groups
if ($config['allow_avatar']) if ($config['allow_avatar'])
{ {
$phpbb_avatar_manager = $phpbb_container->get('avatar.manager');
$avatar_drivers = $phpbb_avatar_manager->get_valid_drivers(); $avatar_drivers = $phpbb_avatar_manager->get_valid_drivers();
sort($avatar_drivers);
// This is normalised data, without the group_ prefix // This is normalised data, without the group_ prefix
$avatar_data = phpbb_avatar_manager::clean_row($group_row); $avatar_data = phpbb_avatar_manager::clean_row($group_row);
@ -521,26 +520,26 @@ class ucp_groups
if ($config['allow_avatar']) if ($config['allow_avatar'])
{ {
// Handle avatar // Handle avatar
$driver = $phpbb_avatar_manager->clean_driver_name($request->variable('avatar_driver', '')); $driver_name = $phpbb_avatar_manager->clean_driver_name($request->variable('avatar_driver', ''));
$config_name = preg_replace('#^avatar\.driver.#', '', $driver); $config_name = preg_replace('#^avatar\.driver.#', '', $driver_name);
if (in_array($driver, $avatar_drivers) && $config["allow_avatar_$config_name"] && !$request->is_set_post('avatar_delete')) if (in_array($driver_name, $avatar_drivers) && !$request->is_set_post('avatar_delete'))
{ {
$avatar = $phpbb_avatar_manager->get_driver($driver); $driver = $phpbb_avatar_manager->get_driver($driver_name);
$result = $avatar->process_form($template, $avatar_data, $avatar_error); $result = $driver->process_form($template, $avatar_data, $avatar_error);
if ($result && empty($avatar_error)) if ($result && empty($avatar_error))
{ {
$result['avatar_type'] = $driver; $result['avatar_type'] = $driver_name;
$submit_ary = array_merge($submit_ary, $result); $submit_ary = array_merge($submit_ary, $result);
} }
} }
else else
{ {
if ($avatar = $phpbb_avatar_manager->get_driver($user->data['user_avatar_type'])) if ($driver = $phpbb_avatar_manager->get_driver($user->data['user_avatar_type']))
{ {
$avatar->delete($avatar_data); $driver->delete($avatar_data);
} }
// Removing the avatar // Removing the avatar
@ -649,25 +648,25 @@ class ucp_groups
$avatars_enabled = false; $avatars_enabled = false;
$focused_driver = $phpbb_avatar_manager->clean_driver_name($request->variable('avatar_driver', $avatar_data['avatar_type'])); $focused_driver = $phpbb_avatar_manager->clean_driver_name($request->variable('avatar_driver', $avatar_data['avatar_type']));
foreach ($avatar_drivers as $driver) foreach ($avatar_drivers as $current_driver)
{ {
$avatar = $phpbb_avatar_manager->get_driver($driver); $driver = $phpbb_avatar_manager->get_driver($current_driver);
$avatars_enabled = true; $avatars_enabled = true;
$template->set_filenames(array( $template->set_filenames(array(
'avatar' => $avatar->get_template_name(), 'avatar' => $driver->get_template_name(),
)); ));
if ($avatar->prepare_form($template, $avatar_data, $avatar_error)) if ($driver->prepare_form($template, $avatar_data, $avatar_error))
{ {
$driver_name = $phpbb_avatar_manager->prepare_driver_name($driver); $driver_name = $phpbb_avatar_manager->prepare_driver_name($current_driver);
$driver_upper = strtoupper($driver_name); $driver_upper = strtoupper($driver_name);
$template->assign_block_vars('avatar_drivers', array( $template->assign_block_vars('avatar_drivers', array(
'L_TITLE' => $user->lang($driver_upper . '_TITLE'), 'L_TITLE' => $user->lang($driver_upper . '_TITLE'),
'L_EXPLAIN' => $user->lang($driver_upper . '_EXPLAIN'), 'L_EXPLAIN' => $user->lang($driver_upper . '_EXPLAIN'),
'DRIVER' => $driver_name, 'DRIVER' => $driver_name,
'SELECTED' => $driver == $focused_driver, 'SELECTED' => $current_driver == $focused_driver,
'OUTPUT' => $template->assign_display('avatar'), 'OUTPUT' => $template->assign_display('avatar'),
)); ));
} }

View file

@ -552,13 +552,12 @@ class ucp_profile
add_form_key('ucp_avatar'); add_form_key('ucp_avatar');
$phpbb_avatar_manager = $phpbb_container->get('avatar.manager');
$avatars_enabled = false; $avatars_enabled = false;
if ($config['allow_avatar'] && $auth->acl_get('u_chgavatar')) if ($config['allow_avatar'] && $auth->acl_get('u_chgavatar'))
{ {
$phpbb_avatar_manager = $phpbb_container->get('avatar.manager');
$avatar_drivers = $phpbb_avatar_manager->get_valid_drivers(); $avatar_drivers = $phpbb_avatar_manager->get_valid_drivers();
sort($avatar_drivers);
// This is normalised data, without the user_ prefix // This is normalised data, without the user_ prefix
$avatar_data = phpbb_avatar_manager::clean_row($user->data); $avatar_data = phpbb_avatar_manager::clean_row($user->data);
@ -567,19 +566,18 @@ class ucp_profile
{ {
if (check_form_key('ucp_avatar')) if (check_form_key('ucp_avatar'))
{ {
$driver = $phpbb_avatar_manager->clean_driver_name($request->variable('avatar_driver', '')); $driver_name = $phpbb_avatar_manager->clean_driver_name($request->variable('avatar_driver', ''));
$config_name = preg_replace('#^avatar\.driver.#', '', $driver);
if (in_array($driver, $avatar_drivers) && $config["allow_avatar_$config_name"] && !$request->is_set_post('avatar_delete')) if (in_array($driver_name, $avatar_drivers) && !$request->is_set_post('avatar_delete'))
{ {
$avatar = $phpbb_avatar_manager->get_driver($driver); $driver = $phpbb_avatar_manager->get_driver($driver_name);
$result = $avatar->process_form($template, $avatar_data, $error); $result = $driver->process_form($template, $avatar_data, $error);
if ($result && empty($error)) if ($result && empty($error))
{ {
// Success! Lets save the result in the database // Success! Lets save the result in the database
$result = array( $result = array(
'user_avatar_type' => $driver, 'user_avatar_type' => $driver_name,
'user_avatar' => $result['avatar'], 'user_avatar' => $result['avatar'],
'user_avatar_width' => $result['avatar_width'], 'user_avatar_width' => $result['avatar_width'],
'user_avatar_height' => $result['avatar_height'], 'user_avatar_height' => $result['avatar_height'],
@ -598,9 +596,9 @@ class ucp_profile
} }
else else
{ {
if ($avatar = $phpbb_avatar_manager->get_driver($user->data['user_avatar_type'])) if ($driver = $phpbb_avatar_manager->get_driver($user->data['user_avatar_type']))
{ {
$avatar->delete($avatar_data); $driver->delete($avatar_data);
} }
$result = array( $result = array(
@ -629,18 +627,18 @@ class ucp_profile
$focused_driver = $phpbb_avatar_manager->clean_driver_name($request->variable('avatar_driver', $user->data['user_avatar_type'])); $focused_driver = $phpbb_avatar_manager->clean_driver_name($request->variable('avatar_driver', $user->data['user_avatar_type']));
foreach ($avatar_drivers as $driver) foreach ($avatar_drivers as $current_driver)
{ {
$avatar = $phpbb_avatar_manager->get_driver($driver); $driver = $phpbb_avatar_manager->get_driver($current_driver);
$avatars_enabled = true; $avatars_enabled = true;
$template->set_filenames(array( $template->set_filenames(array(
'avatar' => $avatar->get_template_name(), 'avatar' => $driver->get_template_name(),
)); ));
if ($avatar->prepare_form($template, $avatar_data, $error)) if ($driver->prepare_form($template, $avatar_data, $error))
{ {
$driver_name = $phpbb_avatar_manager->prepare_driver_name($driver); $driver_name = $phpbb_avatar_manager->prepare_driver_name($current_driver);
$driver_upper = strtoupper($driver_name); $driver_upper = strtoupper($driver_name);
$template->assign_block_vars('avatar_drivers', array( $template->assign_block_vars('avatar_drivers', array(
@ -648,7 +646,7 @@ class ucp_profile
'L_EXPLAIN' => $user->lang($driver_upper . '_EXPLAIN'), 'L_EXPLAIN' => $user->lang($driver_upper . '_EXPLAIN'),
'DRIVER' => $driver_name, 'DRIVER' => $driver_name,
'SELECTED' => $driver == $focused_driver, 'SELECTED' => $current_driver == $focused_driver,
'OUTPUT' => $template->assign_display('avatar'), 'OUTPUT' => $template->assign_display('avatar'),
)); ));
} }