mirror of
https://github.com/phpbb/phpbb.git
synced 2025-07-26 11:58:53 +00:00
[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
This commit is contained in:
parent
3cc0a4149f
commit
88e5ba4e57
1 changed files with 13 additions and 1 deletions
|
@ -128,6 +128,7 @@ class phpbb_user extends phpbb_session
|
||||||
}
|
}
|
||||||
|
|
||||||
$user_data = $this->data;
|
$user_data = $this->data;
|
||||||
|
$lang_set_ext = array();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Event to load language files and modify user data on every page
|
* 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
|
* @var string user_timezone User's timezone, should be one of
|
||||||
* http://www.php.net/manual/en/timezones.php
|
* http://www.php.net/manual/en/timezones.php
|
||||||
* @var mixed lang_set String or array of language files
|
* @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
|
* @var mixed style_id Style we are going to display
|
||||||
* @since 3.1-A1
|
* @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)));
|
extract($phpbb_dispatcher->trigger_event('core.user_setup', compact($vars)));
|
||||||
|
|
||||||
$this->data = $user_data;
|
$this->data = $user_data;
|
||||||
|
@ -173,6 +179,12 @@ class phpbb_user extends phpbb_session
|
||||||
$this->add_lang($lang_set);
|
$this->add_lang($lang_set);
|
||||||
unset($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);
|
$style_request = request_var('style', 0);
|
||||||
if ($style_request && $auth->acl_get('a_styles') && !defined('ADMIN_START'))
|
if ($style_request && $auth->acl_get('a_styles') && !defined('ADMIN_START'))
|
||||||
{
|
{
|
||||||
|
|
Loading…
Add table
Reference in a new issue