loadDatabase($snapshotName); // if process finished = stop reloading $_snapshot = $database->snapshotRepository->load(); if ($_snapshot->collectPhaseFinished === 1) { http_response_code(286); // htmx stops timer header('HX-Redirect: ' . admin_url('tools.php?page=disk-usage-insights&snapshot=' . $snapshotName)); exit; } $currentPhase = $_snapshot->phase; echo "
\n"; foreach(PhaseCoordinatorJob::PHASES as $idx => $phaseText) { $phaseStatus = $currentPhase > $idx ? '✓ ' : ''; $taskDescription = ''; if ($currentPhase == $idx) { $job = $database->q->peek(); if ($job !== null) { $reflect = new \ReflectionClass($job->payload['type']); $instance = $reflect->newInstanceArgs($job->payload['args']); $taskDescription = ' -- ' . $instance->toDescription(); } } if ($idx == $currentPhase) { echo ""; } echo sprintf('%s%s%s', esc_html($phaseStatus), esc_html($phaseText), esc_html($taskDescription)); if ($idx == $currentPhase) { echo ""; } echo "
\n"; } // debug counter $counter = (int) sanitize_text_field(wp_unslash($_POST['counter'] ?? 0)); $counter++; echo ''; echo "
\nRunning for " . esc_html($counter) . " seconds...
\n"; wp_die(); // All ajax handlers should die when finished } }