aboutsummaryrefslogtreecommitdiffstats
path: root/phpBB/includes
diff options
context:
space:
mode:
authorMarc Alexander <admin@m-a-styles.de>2012-11-25 16:04:59 +0100
committerMarc Alexander <admin@m-a-styles.de>2012-11-25 16:05:57 +0100
commit06639729ea2da6d0025da74ae7d4f3e88f211b67 (patch)
tree95e41d8ce8f741eeaff004739771ec47698357ab /phpBB/includes
parent6d061304afaa703a5305a06a903356d1c48ff2ee (diff)
downloadforums-06639729ea2da6d0025da74ae7d4f3e88f211b67.tar
forums-06639729ea2da6d0025da74ae7d4f3e88f211b67.tar.gz
forums-06639729ea2da6d0025da74ae7d4f3e88f211b67.tar.bz2
forums-06639729ea2da6d0025da74ae7d4f3e88f211b67.tar.xz
forums-06639729ea2da6d0025da74ae7d4f3e88f211b67.zip
[feature/avatars] Add static methods for handling driver names
PHPBB3-10018
Diffstat (limited to 'phpBB/includes')
-rw-r--r--phpBB/includes/acp/acp_groups.php6
-rw-r--r--phpBB/includes/acp/acp_users.php6
-rw-r--r--phpBB/includes/avatar/manager.php26
-rw-r--r--phpBB/includes/ucp/ucp_groups.php6
-rw-r--r--phpBB/includes/ucp/ucp_profile.php6
5 files changed, 38 insertions, 12 deletions
diff --git a/phpBB/includes/acp/acp_groups.php b/phpBB/includes/acp/acp_groups.php
index 136ceeff3c..2969f34b24 100644
--- a/phpBB/includes/acp/acp_groups.php
+++ b/phpBB/includes/acp/acp_groups.php
@@ -334,7 +334,7 @@ class acp_groups
if ($config['allow_avatar'])
{
// Handle avatar
- $driver = str_replace('_', '.', request_var('avatar_driver', ''));
+ $driver = $phpbb_avatar_manager->clean_driver_name($request->variable('avatar_driver', ''));
$config_name = preg_replace('#^avatar\.driver.#', '', $driver);
$avatar_delete = $request->variable('avatar_delete', '');
@@ -523,7 +523,7 @@ class acp_groups
if ($config['allow_avatar'])
{
$avatars_enabled = false;
- $focused_driver = str_replace('_', '.', request_var('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)
{
@@ -539,7 +539,7 @@ class acp_groups
if ($avatar->prepare_form($template, $avatar_data, $avatar_error))
{
- $driver_name = str_replace('.', '_', $driver);
+ $driver_name = $phpbb_avatar_manager->prepare_driver_name($driver);
$driver_upper = strtoupper($driver_name);
$template->assign_block_vars('avatar_drivers', array(
'L_TITLE' => $user->lang($driver_upper . '_TITLE'),
diff --git a/phpBB/includes/acp/acp_users.php b/phpBB/includes/acp/acp_users.php
index 885233bbd3..44e4f14ae2 100644
--- a/phpBB/includes/acp/acp_users.php
+++ b/phpBB/includes/acp/acp_users.php
@@ -1747,7 +1747,7 @@ class acp_users
{
if (check_form_key($form_name))
{
- $driver = str_replace('_', '.', request_var('avatar_driver', ''));
+ $driver = $phpbb_avatar_manager->clean_driver_name($request->variable('avatar_driver', ''));
$config_name = preg_replace('#^avatar\.driver.#', '', $driver);
$avatar_delete = $request->variable('avatar_delete', '');
if (in_array($driver, $avatar_drivers) && $config["allow_avatar_$config_name"] && empty($avatar_delete))
@@ -1803,7 +1803,7 @@ class acp_users
}
}
- $focused_driver = str_replace('_', '.', request_var('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)
{
@@ -1819,7 +1819,7 @@ class acp_users
if ($avatar->prepare_form($template, $avatar_data, $error))
{
- $driver_name = str_replace('.', '_', $driver);
+ $driver_name = $phpbb_avatar_manager->prepare_driver_name($driver);
$driver_upper = strtoupper($driver_name);
$template->assign_block_vars('avatar_drivers', array(
diff --git a/phpBB/includes/avatar/manager.php b/phpBB/includes/avatar/manager.php
index da9d843947..51727f242a 100644
--- a/phpBB/includes/avatar/manager.php
+++ b/phpBB/includes/avatar/manager.php
@@ -152,4 +152,30 @@ class phpbb_avatar_manager
return array_combine($keys, $values);
}
+
+ /**
+ * Clean driver names that are returned from template files
+ * Underscores are replaced with dots
+ *
+ * @param string $name Driver name
+ *
+ * @return string Cleaned driver name
+ */
+ public static function clean_driver_name($name)
+ {
+ return str_replace('_', '.', $name);
+ }
+
+ /**
+ * Prepare driver names for use in template files
+ * Dots are replaced with underscores
+ *
+ * @param string $name Clean driver name
+ *
+ * @return string Prepared driver name
+ */
+ public static function prepare_driver_name($name)
+ {
+ return str_replace('.', '_', $name);
+ }
}
diff --git a/phpBB/includes/ucp/ucp_groups.php b/phpBB/includes/ucp/ucp_groups.php
index 33f147a47e..df6915711c 100644
--- a/phpBB/includes/ucp/ucp_groups.php
+++ b/phpBB/includes/ucp/ucp_groups.php
@@ -521,7 +521,7 @@ class ucp_groups
if ($config['allow_avatar'])
{
// Handle avatar
- $driver = str_replace('_', '.', request_var('avatar_driver', ''));
+ $driver = $phpbb_avatar_manager->clean_driver_name($request->variable('avatar_driver', ''));
$config_name = preg_replace('#^avatar\.driver.#', '', $driver);
$avatar_delete = $request->variable('avatar_delete', '');
if (in_array($driver, $avatar_drivers) && $config["allow_avatar_$config_name"] && empty($avatar_delete))
@@ -652,7 +652,7 @@ class ucp_groups
if ($config['allow_avatar'])
{
$avatars_enabled = false;
- $focused_driver = str_replace('_', '.', request_var('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)
{
@@ -667,7 +667,7 @@ class ucp_groups
if ($avatar->prepare_form($template, $avatar_data, $avatar_error))
{
- $driver_name = str_replace('.', '_', $driver);
+ $driver_name = $phpbb_avatar_manager->prepare_driver_name($driver);
$driver_upper = strtoupper($driver_name);
$template->assign_block_vars('avatar_drivers', array(
'L_TITLE' => $user->lang($driver_upper . '_TITLE'),
diff --git a/phpBB/includes/ucp/ucp_profile.php b/phpBB/includes/ucp/ucp_profile.php
index 3945fc537a..36ac227bc8 100644
--- a/phpBB/includes/ucp/ucp_profile.php
+++ b/phpBB/includes/ucp/ucp_profile.php
@@ -564,7 +564,7 @@ class ucp_profile
{
if (check_form_key('ucp_avatar'))
{
- $driver = str_replace('_', '.', request_var('avatar_driver', ''));
+ $driver = $phpbb_avatar_manager->clean_driver_name($request->variable('avatar_driver', ''));
$config_name = preg_replace('#^avatar\.driver.#', '', $driver);
$avatar_delete = $request->variable('avatar_delete', '');
if (in_array($driver, $avatar_drivers) && $config["allow_avatar_$config_name"] && empty($avatar_delete))
@@ -624,7 +624,7 @@ class ucp_profile
}
}
- $focused_driver = str_replace('_', '.', request_var('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)
{
@@ -639,7 +639,7 @@ class ucp_profile
if ($avatar->prepare_form($template, $avatar_data, $error))
{
- $driver_name = str_replace('.', '_', $driver);
+ $driver_name = $phpbb_avatar_manager->prepare_driver_name($driver);
$driver_upper = strtoupper($driver_name);
$template->assign_block_vars('avatar_drivers', array(