From 6f1de69bbe8c876ce3c69f7f23d3dcdf65a890b2 Mon Sep 17 00:00:00 2001 From: Marc Alexander <admin@m-a-styles.de> Date: Sun, 19 Mar 2017 22:37:19 +0100 Subject: [PATCH 1/2] [ticket/15135] Parse language files in acp_extensions instead of md manager PHPBB3-15135 --- phpBB/includes/acp/acp_extensions.php | 3 ++- phpBB/phpbb/extension/metadata_manager.php | 6 +++--- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/phpBB/includes/acp/acp_extensions.php b/phpBB/includes/acp/acp_extensions.php index 9effbe0f08..c38c492c1f 100644 --- a/phpBB/includes/acp/acp_extensions.php +++ b/phpBB/includes/acp/acp_extensions.php @@ -162,7 +162,8 @@ class acp_extensions } catch (\phpbb\extension\exception $e) { - trigger_error($e . adm_back_link($this->u_action), E_USER_WARNING); + $message = call_user_func_array(array($this->user, 'lang'), array_merge(array($e->getMessage()), $e->get_parameters())); + trigger_error($message, E_USER_WARNING); } $extension = $phpbb_extension_manager->get_extension($ext_name); diff --git a/phpBB/phpbb/extension/metadata_manager.php b/phpBB/phpbb/extension/metadata_manager.php index f929433bff..3dc6cdaee6 100644 --- a/phpBB/phpbb/extension/metadata_manager.php +++ b/phpBB/phpbb/extension/metadata_manager.php @@ -278,7 +278,7 @@ class metadata_manager { if (substr_count($this->ext_name, '/') !== 1 || $this->ext_name != $this->get_metadata('name')) { - throw new \phpbb\extension\exception($this->user->lang('EXTENSION_DIR_INVALID')); + throw new \phpbb\extension\exception('EXTENSION_DIR_INVALID'); } return true; @@ -295,7 +295,7 @@ class metadata_manager { if (!isset($this->metadata['extra']['soft-require']['phpbb/phpbb'])) { - throw new \phpbb\extension\exception($this->user->lang('META_FIELD_NOT_SET', 'soft-require')); + throw new \phpbb\extension\exception('META_FIELD_NOT_SET', 'soft-require'); } return true; @@ -311,7 +311,7 @@ class metadata_manager { if (!isset($this->metadata['require']['php'])) { - throw new \phpbb\extension\exception($this->user->lang('META_FIELD_NOT_SET', 'require php')); + throw new \phpbb\extension\exception('META_FIELD_NOT_SET', 'require php'); } return true; From a975a3573435d56b837c78b9df5ef92dc2b6dba6 Mon Sep 17 00:00:00 2001 From: Marc Alexander <admin@m-a-styles.de> Date: Thu, 23 Mar 2017 21:52:35 +0100 Subject: [PATCH 2/2] [ticket/15135] Correctly pass exception arguments and add back link again PHPBB3-15135 --- phpBB/includes/acp/acp_extensions.php | 5 +++-- phpBB/phpbb/extension/metadata_manager.php | 4 ++-- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/phpBB/includes/acp/acp_extensions.php b/phpBB/includes/acp/acp_extensions.php index c38c492c1f..164e5872bb 100644 --- a/phpBB/includes/acp/acp_extensions.php +++ b/phpBB/includes/acp/acp_extensions.php @@ -163,7 +163,7 @@ class acp_extensions catch (\phpbb\extension\exception $e) { $message = call_user_func_array(array($this->user, 'lang'), array_merge(array($e->getMessage()), $e->get_parameters())); - trigger_error($message, E_USER_WARNING); + trigger_error($message . adm_back_link($this->u_action), E_USER_WARNING); } $extension = $phpbb_extension_manager->get_extension($ext_name); @@ -193,7 +193,8 @@ class acp_extensions } catch (\phpbb\extension\exception $e) { - trigger_error($e . adm_back_link($this->u_action), E_USER_WARNING); + $message = call_user_func_array(array($this->user, 'lang'), array_merge(array($e->getMessage()), $e->get_parameters())); + trigger_error($message . adm_back_link($this->u_action), E_USER_WARNING); } $extension = $phpbb_extension_manager->get_extension($ext_name); diff --git a/phpBB/phpbb/extension/metadata_manager.php b/phpBB/phpbb/extension/metadata_manager.php index 3dc6cdaee6..6fc6dc9891 100644 --- a/phpBB/phpbb/extension/metadata_manager.php +++ b/phpBB/phpbb/extension/metadata_manager.php @@ -295,7 +295,7 @@ class metadata_manager { if (!isset($this->metadata['extra']['soft-require']['phpbb/phpbb'])) { - throw new \phpbb\extension\exception('META_FIELD_NOT_SET', 'soft-require'); + throw new \phpbb\extension\exception('META_FIELD_NOT_SET', array('soft-require')); } return true; @@ -311,7 +311,7 @@ class metadata_manager { if (!isset($this->metadata['require']['php'])) { - throw new \phpbb\extension\exception('META_FIELD_NOT_SET', 'require php'); + throw new \phpbb\extension\exception('META_FIELD_NOT_SET', array('require php')); } return true;