mirror of
https://github.com/phpbb/phpbb.git
synced 2025-08-12 19:54:12 +02:00
Merge remote-tracking branch 'EXreaction/ticket/11415' into develop
* EXreaction/ticket/11415: [ticket/11415] Add test for find_from_extension() [ticket/11415] Send the extension base the finder rather than the manager [ticket/11415] Create function in finder find_from_extension [ticket/11415] Fix ext.manager constructor in tests [ticket/11415] Make migrator/ext.manager dependencies of the base ext class [ticket/11415] Remove migrator dependency from extension manager [ticket/11415] Move migrator to base extension class from ext.manager [ticket/11415] Move while loop from ext manager to acp_extensions.php
This commit is contained in:
@@ -44,6 +44,10 @@ class acp_extensions
|
||||
$action = $request->variable('action', 'list');
|
||||
$ext_name = $request->variable('ext_name', '');
|
||||
|
||||
// What is a safe limit of execution time? Half the max execution time should be safe.
|
||||
$safe_time_limit = (ini_get('max_execution_time') / 2);
|
||||
$start_time = time();
|
||||
|
||||
// Cancel action
|
||||
if ($request->is_set_post('cancel'))
|
||||
{
|
||||
@@ -105,11 +109,15 @@ class acp_extensions
|
||||
|
||||
try
|
||||
{
|
||||
if ($phpbb_extension_manager->enable_step($ext_name))
|
||||
while ($phpbb_extension_manager->enable_step($ext_name))
|
||||
{
|
||||
$template->assign_var('S_NEXT_STEP', true);
|
||||
// Are we approaching the time limit? If so we want to pause the update and continue after refreshing
|
||||
if ((time() - $start_time) >= $safe_time_limit)
|
||||
{
|
||||
$template->assign_var('S_NEXT_STEP', true);
|
||||
|
||||
meta_refresh(0, $this->u_action . '&action=enable&ext_name=' . urlencode($ext_name));
|
||||
meta_refresh(0, $this->u_action . '&action=enable&ext_name=' . urlencode($ext_name));
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (phpbb_db_migration_exception $e)
|
||||
@@ -139,11 +147,15 @@ class acp_extensions
|
||||
break;
|
||||
|
||||
case 'disable':
|
||||
if ($phpbb_extension_manager->disable_step($ext_name))
|
||||
while ($phpbb_extension_manager->disable_step($ext_name))
|
||||
{
|
||||
$template->assign_var('S_NEXT_STEP', true);
|
||||
// Are we approaching the time limit? If so we want to pause the update and continue after refreshing
|
||||
if ((time() - $start_time) >= $safe_time_limit)
|
||||
{
|
||||
$template->assign_var('S_NEXT_STEP', true);
|
||||
|
||||
meta_refresh(0, $this->u_action . '&action=disable&ext_name=' . urlencode($ext_name));
|
||||
meta_refresh(0, $this->u_action . '&action=disable&ext_name=' . urlencode($ext_name));
|
||||
}
|
||||
}
|
||||
|
||||
$this->tpl_name = 'acp_ext_disable';
|
||||
@@ -165,11 +177,15 @@ class acp_extensions
|
||||
case 'purge':
|
||||
try
|
||||
{
|
||||
if ($phpbb_extension_manager->purge_step($ext_name))
|
||||
while ($phpbb_extension_manager->purge_step($ext_name))
|
||||
{
|
||||
$template->assign_var('S_NEXT_STEP', true);
|
||||
// Are we approaching the time limit? If so we want to pause the update and continue after refreshing
|
||||
if ((time() - $start_time) >= $safe_time_limit)
|
||||
{
|
||||
$template->assign_var('S_NEXT_STEP', true);
|
||||
|
||||
meta_refresh(0, $this->u_action . '&action=purge&ext_name=' . urlencode($ext_name));
|
||||
meta_refresh(0, $this->u_action . '&action=purge&ext_name=' . urlencode($ext_name));
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (phpbb_db_migration_exception $e)
|
||||
|
Reference in New Issue
Block a user