require_once $CFG->libdir . '/adminlib.php';
require_login();
require_capability('moodle/site:config', context_system::instance());
admin_externalpage_setup('local_linkchecker_robot_status');
echo $OUTPUT->header();
$action = optional_param('action', '', PARAM_ALPHANUMEXT);
$robot = new \local_linkchecker_robot\robot\crawler();
$config = $robot::get_config();
if ($action == 'makebot') {
    $botuser = $robot->auto_create_bot();
}
$crawlstart = $config->crawlstart;
$crawlend = $config->crawlend;
$crawltick = $config->crawltick;
$boterror = $robot->is_bot_valid();
$queuesize = $robot->get_queue_size();
$recent = $robot->get_processed();
$numlinks = $robot->get_num_links();
$oldqueuesize = $robot->get_old_queue_size();
$numurlsbroken = $robot->get_num_broken_urls();
$numpageswithurlsbroken = $robot->get_pages_withbroken_links();
$oversize = $robot->get_num_oversize();
if ($queuesize == 0) {
    $progress = 1;
} else {
    if ($oldqueuesize == 0) {
        $progress = $recent / ($recent + $queuesize);
    } else {
        $progress = $recent / ($recent + max($oldqueuesize, $queuesize));
    }
}