1
0
mirror of https://github.com/phpbb/phpbb.git synced 2025-08-10 18:54:08 +02:00

Merge remote-tracking branch 'rechosen/ticket/11792' into develop

* rechosen/ticket/11792:
  [ticket/11792] Add functional test for var lang_set_ext of core.user_setup
  [ticket/11792] Add performance remark to core.user_setup event PHPDoc
  [ticket/11792] Add variable 'lang_set_ext' to event core.user_setup
This commit is contained in:
Joas Schilling
2013-08-22 12:57:49 +02:00
4 changed files with 127 additions and 1 deletions

View File

@@ -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,18 @@ 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],
* )
* For performance reasons, only load translations
* that are absolutely needed globally using this
* event. Use local events otherwise.
* @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 +182,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'))
{