/**
* Process navigation data to reflect active/completed stages
*
* @param \phpbb\install\helper\iohandler\iohandler_interface|null $iohandler
*/
public function handle_navigation($iohandler = null)
{
$nav_data = $this->installer_config->get_navigation_data();
// Set active navigation stage
if (isset($nav_data['active']) && is_array($nav_data['active'])) {
if ($iohandler !== null) {
$iohandler->set_active_stage_menu($nav_data['active']);
}
$this->navigation_provider->set_nav_property($nav_data['active'], array('selected' => true, 'completed' => false));
}
// Set finished navigation stages
if (isset($nav_data['finished']) && is_array($nav_data['finished'])) {
foreach ($nav_data['finished'] as $finished_stage) {
if ($iohandler !== null) {
$iohandler->set_finished_stage_menu($finished_stage);
}
$this->navigation_provider->set_nav_property($finished_stage, array('selected' => false, 'completed' => true));
}
}
}