aboutsummaryrefslogtreecommitdiffstats
path: root/phpBB/phpbb/user.php
diff options
context:
space:
mode:
authorrechosen <rechosen@gmail.com>2013-08-15 14:27:52 +0200
committerrechosen <rechosen@gmail.com>2013-08-19 11:06:36 +0200
commit88e5ba4e571ad0473e988ea88cf6f5d5df700ef0 (patch)
tree985b5c27c72ac631fc8215e1e5b3033bc8b6db3d /phpBB/phpbb/user.php
parent3cc0a4149f263a2a4ccc92673dfb9bcb1afb8bb9 (diff)
downloadforums-88e5ba4e571ad0473e988ea88cf6f5d5df700ef0.tar
forums-88e5ba4e571ad0473e988ea88cf6f5d5df700ef0.tar.gz
forums-88e5ba4e571ad0473e988ea88cf6f5d5df700ef0.tar.bz2
forums-88e5ba4e571ad0473e988ea88cf6f5d5df700ef0.tar.xz
forums-88e5ba4e571ad0473e988ea88cf6f5d5df700ef0.zip
[ticket/11792] Add variable 'lang_set_ext' to event core.user_setup
To allow extensions to add global language strings just like mods can, add the 'lang_set_ext' variable to the core.user_setup event. It requires an ext_name to be specified as well as a lang_set, and loads the specified lang_set in the context of the extension. PHPBB3-11792
Diffstat (limited to 'phpBB/phpbb/user.php')
-rw-r--r--phpBB/phpbb/user.php14
1 files changed, 13 insertions, 1 deletions
diff --git a/phpBB/phpbb/user.php b/phpBB/phpbb/user.php
index b39438e315..94cf77990e 100644
--- a/phpBB/phpbb/user.php
+++ b/phpBB/phpbb/user.php
@@ -128,6 +128,7 @@ class phpbb_user extends phpbb_session
}
$user_data = $this->data;
+ $lang_set_ext = array();
/**
* Event to load language files and modify user data on every page
@@ -139,10 +140,15 @@ class phpbb_user extends phpbb_session
* @var string user_timezone User's timezone, should be one of
* http://www.php.net/manual/en/timezones.php
* @var mixed lang_set String or array of language files
+ * @var array lang_set_ext Array containing entries of format
+ * array(
+ * 'ext_name' => (string) [extension name],
+ * 'lang_set' => (string|array) [language files],
+ * )
* @var mixed style_id Style we are going to display
* @since 3.1-A1
*/
- $vars = array('user_data', 'user_lang_name', 'user_date_format', 'user_timezone', 'lang_set', 'style_id');
+ $vars = array('user_data', 'user_lang_name', 'user_date_format', 'user_timezone', 'lang_set', 'lang_set_ext', 'style_id');
extract($phpbb_dispatcher->trigger_event('core.user_setup', compact($vars)));
$this->data = $user_data;
@@ -173,6 +179,12 @@ class phpbb_user extends phpbb_session
$this->add_lang($lang_set);
unset($lang_set);
+ foreach ($lang_set_ext as $ext_lang_pair)
+ {
+ $this->add_lang_ext($ext_lang_pair['ext_name'], $ext_lang_pair['lang_set']);
+ }
+ unset($lang_set_ext);
+
$style_request = request_var('style', 0);
if ($style_request && $auth->acl_get('a_styles') && !defined('ADMIN_START'))
{