[ticket/12043] Correct try/catch exceptions for invalid extensions

PHPBB3-12043
This commit is contained in:
Matt Friedman 2014-03-29 11:09:27 -07:00
parent bf2aca6f8b
commit 2024c5adc2

View file

@ -247,14 +247,21 @@ class acp_extensions
{ {
$md_manager = $phpbb_extension_manager->create_extension_metadata_manager($name, $this->template); $md_manager = $phpbb_extension_manager->create_extension_metadata_manager($name, $this->template);
try
{
$enabled_extension_meta_data[$name] = $md_manager->get_metadata('display-name'); $enabled_extension_meta_data[$name] = $md_manager->get_metadata('display-name');
} }
catch(\phpbb\extension\exception $e)
{
$this->template->assign_block_vars('disabled', array(
'META_DISPLAY_NAME' => $this->user->lang('EXTENSION_INVALID_LIST', $name, $e),
));
}
}
natcasesort($enabled_extension_meta_data); natcasesort($enabled_extension_meta_data);
foreach ($enabled_extension_meta_data as $name => $display_name) foreach ($enabled_extension_meta_data as $name => $display_name)
{
try
{ {
$this->template->assign_block_vars('enabled', array( $this->template->assign_block_vars('enabled', array(
'META_DISPLAY_NAME' => $display_name, 'META_DISPLAY_NAME' => $display_name,
@ -266,13 +273,6 @@ class acp_extensions
'DISABLE' => $this->u_action . '&action=disable_pre&ext_name=' . urlencode($name), 'DISABLE' => $this->u_action . '&action=disable_pre&ext_name=' . urlencode($name),
)); ));
} }
catch(\phpbb\extension\exception $e)
{
$this->template->assign_block_vars('disabled', array(
'META_DISPLAY_NAME' => $this->user->lang('EXTENSION_INVALID_LIST', $name, $e),
));
}
}
} }
/** /**
@ -289,14 +289,21 @@ class acp_extensions
{ {
$md_manager = $phpbb_extension_manager->create_extension_metadata_manager($name, $this->template); $md_manager = $phpbb_extension_manager->create_extension_metadata_manager($name, $this->template);
try
{
$disabled_extension_meta_data[$name] = $md_manager->get_metadata('display-name'); $disabled_extension_meta_data[$name] = $md_manager->get_metadata('display-name');
} }
catch(\phpbb\extension\exception $e)
{
$this->template->assign_block_vars('disabled', array(
'META_DISPLAY_NAME' => $this->user->lang('EXTENSION_INVALID_LIST', $name, $e),
));
}
}
natcasesort($disabled_extension_meta_data); natcasesort($disabled_extension_meta_data);
foreach ($disabled_extension_meta_data as $name => $display_name) foreach ($disabled_extension_meta_data as $name => $display_name)
{
try
{ {
$this->template->assign_block_vars('disabled', array( $this->template->assign_block_vars('disabled', array(
'META_DISPLAY_NAME' => $display_name, 'META_DISPLAY_NAME' => $display_name,
@ -309,13 +316,6 @@ class acp_extensions
'DELETE_DATA' => $this->u_action . '&action=delete_data_pre&ext_name=' . urlencode($name), 'DELETE_DATA' => $this->u_action . '&action=delete_data_pre&ext_name=' . urlencode($name),
)); ));
} }
catch(\phpbb\extension\exception $e)
{
$this->template->assign_block_vars('disabled', array(
'META_DISPLAY_NAME' => $this->user->lang('EXTENSION_INVALID_LIST', $name, $e),
));
}
}
} }
/** /**
@ -334,14 +334,21 @@ class acp_extensions
{ {
$md_manager = $phpbb_extension_manager->create_extension_metadata_manager($name, $this->template); $md_manager = $phpbb_extension_manager->create_extension_metadata_manager($name, $this->template);
try
{
$available_extension_meta_data[$name] = $md_manager->get_metadata('display-name'); $available_extension_meta_data[$name] = $md_manager->get_metadata('display-name');
} }
catch(\phpbb\extension\exception $e)
{
$this->template->assign_block_vars('disabled', array(
'META_DISPLAY_NAME' => $this->user->lang('EXTENSION_INVALID_LIST', $name, $e),
));
}
}
natcasesort($available_extension_meta_data); natcasesort($available_extension_meta_data);
foreach ($available_extension_meta_data as $name => $display_name) foreach ($available_extension_meta_data as $name => $display_name)
{
try
{ {
$this->template->assign_block_vars('disabled', array( $this->template->assign_block_vars('disabled', array(
'META_DISPLAY_NAME' => $display_name, 'META_DISPLAY_NAME' => $display_name,
@ -353,13 +360,6 @@ class acp_extensions
'ENABLE' => $this->u_action . '&action=enable_pre&ext_name=' . urlencode($name), 'ENABLE' => $this->u_action . '&action=enable_pre&ext_name=' . urlencode($name),
)); ));
} }
catch(\phpbb\extension\exception $e)
{
$this->template->assign_block_vars('disabled', array(
'META_DISPLAY_NAME' => $this->user->lang('EXTENSION_INVALID_LIST', $name, $e),
));
}
}
} }
/** /**