moodle_local_treestudyplan/classes/task/refreshteacherlist.php
2023-06-30 13:12:19 +02:00

33 lines
No EOL
969 B
PHP

<?php
namespace local_treestudyplan\task;
require_once($CFG->dirroot.'/course/externallib.php');
use local_treestudyplan\teachingfinder;
class refreshteacherlist extends \core\task\scheduled_task {
const CACHE_TIME = 4 * 60 * 60; // 2 hours
/**
* Return the task's name as shown in admin screens.
*
* @return string
*/
public function get_name() {
return get_string('refreshteacherlist_name', 'local_treestudyplan');
}
/**
* Execute the task.
*/
public function execute() {
\mtrace("Ververs lijst met leraren");
$teacher_ids = teachingfinder::list_teacher_ids();
foreach($teacher_ids as $tid){
$utime = teachingfinder::get_update_time($tid);
if(time() - $utime > self::CACHE_TIME){
\mtrace("Teacher {$tid} is due for a refresh of the list");
teachingfinder::update_teaching_cache($tid);
}
}
}
}