diff --git a/config/services.yml b/config/services.yml index ceaacaa1..1707ef34 100644 --- a/config/services.yml +++ b/config/services.yml @@ -34,6 +34,7 @@ services: - @auth - @board3.portal.columns - @config + - @language - @template - @user - @path_helper diff --git a/controller/helper.php b/controller/helper.php index a2ba9bc0..ccae53a9 100644 --- a/controller/helper.php +++ b/controller/helper.php @@ -26,6 +26,9 @@ class helper */ protected $config; + /** @var \phpbb\language\language */ + protected $language; + /** * Template object * @var \phpbb\template @@ -84,6 +87,7 @@ class helper * @param \phpbb\auth\auth $auth Auth object * @param \board3\portal\portal\columns $portal_columns Board3 Portal columns object * @param \phpbb\config\config $config phpBB Config object + * @param \phpbb\language\language $language phpBB language * @param \phpbb\template $template Template object * @param \phpbb\user $user User object * @param \phpbb\path_helper $path_helper phpBB path helper @@ -91,11 +95,12 @@ class helper * @param string $phpbb_root_path phpBB root path * @param string $php_ext PHP file extension */ - public function __construct($auth, $portal_columns, $config, $template, $user, $path_helper, $portal_helper, $phpbb_root_path, $php_ext) + public function __construct($auth, $portal_columns, $config, $language, $template, $user, $path_helper, $portal_helper, $phpbb_root_path, $php_ext) { $this->auth = $auth; $this->portal_columns = $portal_columns; $this->config = $config; + $this->language = $language; $this->template = $template; $this->user = $user; $this->path_helper = $path_helper; @@ -204,11 +209,11 @@ class helper // Load language file from vendor if specified if (is_array($language_file)) { - $this->user->add_lang_ext($language_file['vendor'], $language_file['file']); + $this->language->add_lang($language_file['file'], $language_file['vendor']); } else { - $this->user->add_lang_ext('board3/portal', 'modules/' . $language_file); + $this->language->add_lang('modules/' . $language_file, 'board3/portal'); } } } diff --git a/tests/unit/acp/move_module_test.php b/tests/unit/acp/move_module_test.php index a038180b..275d56ef 100644 --- a/tests/unit/acp/move_module_test.php +++ b/tests/unit/acp/move_module_test.php @@ -101,10 +101,14 @@ class phpbb_acp_move_module_test extends \board3\portal\tests\testframework\data $phpEx ); + $this->language_file_loader = new \phpbb\language\language_file_loader($phpbb_root_path, 'php'); + $this->language = new \phpbb\language\language($this->language_file_loader); + $b3p_controller_helper = new \board3\portal\controller\helper( new \phpbb\auth\auth(), $this->portal_columns, $config, + $this->language, $template, $user, $path_helper, @@ -130,6 +134,7 @@ class phpbb_acp_move_module_test extends \board3\portal\tests\testframework\data $auth, $this->portal_columns, $config, + $this->language, $template, $user, $path_helper, diff --git a/tests/unit/controller/helper_test.php b/tests/unit/controller/helper_test.php index 31dc2de1..12ccb37e 100644 --- a/tests/unit/controller/helper_test.php +++ b/tests/unit/controller/helper_test.php @@ -9,6 +9,8 @@ namespace board3\portal\controller; +require_once(__DIR__ . '/../../../includes/functions.php'); + class helper_test extends \board3\portal\tests\testframework\test_case { protected $controller_helper; @@ -19,7 +21,7 @@ class helper_test extends \board3\portal\tests\testframework\test_case public function setUp() { - global $cache, $phpbb_extension_manager; + global $cache, $phpbb_extension_manager, $phpbb_root_path; parent::setUp(); @@ -33,10 +35,13 @@ class helper_test extends \board3\portal\tests\testframework\test_case 'board3_enable' => true, )); $this->template = new \board3\portal\tests\mock\template($this); - $this->user = new \phpbb\user('\phpbb\datetime'); + $this->language_file_loader = new \phpbb\language\language_file_loader($phpbb_root_path, 'php'); + $this->language = new \phpbb\language\language($this->language_file_loader); + $this->user = new \phpbb\user($this->language, '\phpbb\datetime'); $this->user->data['group_id'] = 2; $this->phpbb_root_path = dirname(__FILE__) . '/../../../../../../'; $phpbb_extension_manager = new \phpbb_mock_extension_manager($this->phpbb_root_path, array('board3/portal')); + $this->language_file_loader->set_extension_manager($phpbb_extension_manager); $this->php_ext = 'php'; $this->portal_columns = new \board3\portal\portal\columns(); $this->modules = array( @@ -61,6 +66,7 @@ class helper_test extends \board3\portal\tests\testframework\test_case $this->auth, $this->portal_columns, $this->config, + $this->language, $this->template, $this->user, $this->path_helper, diff --git a/tests/unit/controller/main_test.php b/tests/unit/controller/main_test.php index e42b94dc..002b1c27 100644 --- a/tests/unit/controller/main_test.php +++ b/tests/unit/controller/main_test.php @@ -59,11 +59,14 @@ class main_test extends \board3\portal\tests\testframework\database_test_case ->method('acl_get') ->with($this->anything()) ->will($this->returnValue(true)); + $this->language_file_loader = new \phpbb\language\language_file_loader($phpbb_root_path, 'php'); + $this->language = new \phpbb\language\language($this->language_file_loader); $controller_helper = new \board3\portal\controller\helper( $auth, $portal_columns, $this->config, + $this->language, $this->template, $user, $path_helper, diff --git a/tests/unit/event/listener_test.php b/tests/unit/event/listener_test.php index 17088881..c78b96fc 100644 --- a/tests/unit/event/listener_test.php +++ b/tests/unit/event/listener_test.php @@ -36,7 +36,7 @@ class listener_test extends \phpbb_template_template_test_case public function setup_listener() { - global $cache, $db; + global $cache, $db, $phpbb_root_path; $cache = $this->getMock('\phpbb\cache\cache', array('obtain_word_list', 'get', 'sql_exists', 'put', 'obtain_attach_extensions')); $cache->expects($this->any()) @@ -48,8 +48,10 @@ class listener_test extends \phpbb_template_template_test_case ->with($this->anything()) ->will($this->returnValue(false)); $db = $this->getMock('\phpbb\db\driver\driver_interface'); + $this->language_file_loader = new \phpbb\language\language_file_loader($phpbb_root_path, 'php'); + $this->language = new \phpbb\language\language($this->language_file_loader); - $this->user = $this->getMock('\phpbb\user', array(), array('\phpbb\datetime')); + $this->user = $this->getMock('\phpbb\user', array(), array($this->language, '\phpbb\datetime')); $this->user->expects($this->any()) ->method('lang') ->will($this->returnValue('foo')); diff --git a/tests/unit/functions/fetch_news_test.php b/tests/unit/functions/fetch_news_test.php index 434a267b..07aacbd4 100644 --- a/tests/unit/functions/fetch_news_test.php +++ b/tests/unit/functions/fetch_news_test.php @@ -22,7 +22,9 @@ class phpbb_functions_fetch_news_test extends \board3\portal\tests\testframework global $auth, $cache, $phpbb_container, $phpbb_dispatcher, $template, $user, $phpbb_root_path, $phpEx; - $user = new \phpbb\user('\phpbb\datetime'); + $this->language_file_loader = new \phpbb\language\language_file_loader($phpbb_root_path, 'php'); + $this->language = new \phpbb\language\language($this->language_file_loader); + $user = new \phpbb\user($this->language, '\phpbb\datetime'); $user->data['user_id'] = 2; $user->timezone = new \DateTimeZone('UTC'); $user->add_lang('common'); diff --git a/tests/unit/functions/functions_test.php b/tests/unit/functions/functions_test.php index c95ca4d2..afca2a8a 100644 --- a/tests/unit/functions/functions_test.php +++ b/tests/unit/functions/functions_test.php @@ -20,11 +20,13 @@ class phpbb_unit_functions_functions_test extends \board3\portal\tests\testframe public function setUp() { - global $cache, $user; + global $cache, $user, $phpbb_root_path; parent::setUp(); - $user = $this->getMock('\phpbb\user', array('optionget'), array('\phpbb\datetime')); + $this->language_file_loader = new \phpbb\language\language_file_loader($phpbb_root_path, 'php'); + $this->language = new \phpbb\language\language($this->language_file_loader); + $user = $this->getMock('\phpbb\user', array('optionget'), array($this->language, '\phpbb\datetime')); $cache = $this->getMock('\phpbb\cache\cache', array('obtain_word_list', 'sql_exists')); $cache->expects($this->any()) ->method('obtain_word_list') diff --git a/tests/unit/functions/get_user_groups_test.php b/tests/unit/functions/get_user_groups_test.php index c5ea4a20..c07f39a5 100644 --- a/tests/unit/functions/get_user_groups_test.php +++ b/tests/unit/functions/get_user_groups_test.php @@ -18,11 +18,13 @@ class phpbb_unit_functions_get_user_groups_test extends \board3\portal\tests\tes public function setUp() { - global $cache, $user; + global $cache, $user, $phpbb_root_path; parent::setUp(); - $user = $this->getMock('\phpbb\user', array('optionget'), array('\phpbb\datetime')); + $this->language_file_loader = new \phpbb\language\language_file_loader($phpbb_root_path, 'php'); + $this->language = new \phpbb\language\language($this->language_file_loader); + $user = $this->getMock('\phpbb\user', array('optionget'), array($this->language, '\phpbb\datetime')); $cache = $this->getMock('\phpbb\cache\cache', array('get', 'put', 'sql_exists')); $cache->expects($this->any()) ->method('get') diff --git a/tests/unit/functions/version_check_test.php b/tests/unit/functions/version_check_test.php index a46864e2..03af4af4 100644 --- a/tests/unit/functions/version_check_test.php +++ b/tests/unit/functions/version_check_test.php @@ -42,10 +42,14 @@ class phpbb_functions_version_check_test extends \board3\portal\tests\testframew protected function get_version_helper($version) { + global $phpbb_root_path; + $this->config->set('board3_portal_version', $version); $this->template = new \board3\portal\tests\mock\template($this); - $version_helper = new \phpbb\version_helper($this->cache, $this->config, new \phpbb\file_downloader(), new \phpbb\user('\phpbb\datetime')); + $this->language_file_loader = new \phpbb\language\language_file_loader($phpbb_root_path, 'php'); + $this->language = new \phpbb\language\language($this->language_file_loader); + $version_helper = new \phpbb\version_helper($this->cache, $this->config, new \phpbb\file_downloader(), new \phpbb\user($this->language, '\phpbb\datetime')); $this->version_check = new \board3\portal\includes\version_check($this->version_data, $this->config, $version_helper, $this->template, $this->user); } diff --git a/tests/unit/portal/fetch_posts_test.php b/tests/unit/portal/fetch_posts_test.php index ef04a258..87f58892 100644 --- a/tests/unit/portal/fetch_posts_test.php +++ b/tests/unit/portal/fetch_posts_test.php @@ -23,7 +23,9 @@ class phpbb_portal_fetch_posts_test extends \board3\portal\tests\testframework\d parent::setUp(); - $user = new \phpbb\user('\phpbb\datetime'); + $this->language_file_loader = new \phpbb\language\language_file_loader($phpbb_root_path, 'php'); + $this->language = new \phpbb\language\language($this->language_file_loader); + $user = new \phpbb\user($this->language, '\phpbb\datetime'); $user->data['user_id'] = 2; $user->timezone = new \DateTimeZone('UTC'); $user->add_lang('common'); diff --git a/tests/unit/portal/modules_manager_confirm_box_test.php b/tests/unit/portal/modules_manager_confirm_box_test.php index a59bdd2d..2838e172 100644 --- a/tests/unit/portal/modules_manager_confirm_box_test.php +++ b/tests/unit/portal/modules_manager_confirm_box_test.php @@ -39,7 +39,7 @@ class modules_manager_confirm_box_test extends \board3\portal\tests\testframewor public function setUp() { - global $cache, $db, $portal_config; + global $cache, $db, $portal_config, $phpbb_root_path, $phpEx; parent::setUp(); @@ -95,10 +95,14 @@ class modules_manager_confirm_box_test extends \board3\portal\tests\testframewor $phpEx ); + $this->language_file_loader = new \phpbb\language\language_file_loader($phpbb_root_path, 'php'); + $this->language = new \phpbb\language\language($this->language_file_loader); + $this->b3p_controller_helper = new \board3\portal\controller\helper( new \phpbb\auth\auth(), $this->portal_columns, $config, + $this->language, new \board3\portal\tests\mock\template($this), $user, $this->path_helper, diff --git a/tests/unit/portal/modules_manager_test.php b/tests/unit/portal/modules_manager_test.php index 6ed0737a..57957226 100644 --- a/tests/unit/portal/modules_manager_test.php +++ b/tests/unit/portal/modules_manager_test.php @@ -33,7 +33,7 @@ class board3_portal_modules_manager_test extends \board3\portal\tests\testframew public function setUp() { - global $cache, $db; + global $cache, $db, $phpbb_root_path, $phpEx; parent::setUp(); @@ -90,10 +90,14 @@ class board3_portal_modules_manager_test extends \board3\portal\tests\testframew $phpEx ); + $this->language_file_loader = new \phpbb\language\language_file_loader($phpbb_root_path, 'php'); + $this->language = new \phpbb\language\language($this->language_file_loader); + $this->b3p_controller_helper = new \board3\portal\controller\helper( new \phpbb\auth\auth(), $this->portal_columns, $config, + $this->language, new \board3\portal\tests\mock\template($this), $user, $this->path_helper,