MDL-77186 core: Move all uses of cronlib to new class

This commit is contained in:
Andrew Nicols
2023-03-13 21:21:13 +08:00
parent 99a67b615f
commit 9ec46c232d
36 changed files with 73 additions and 92 deletions
+2 -3
View File
@@ -27,7 +27,6 @@ define('CLI_SCRIPT', true);
require(__DIR__ . '/../../config.php');
require_once("{$CFG->libdir}/clilib.php");
require_once("{$CFG->libdir}/cronlib.php");
list($options, $unrecognized) = cli_get_params(
[
@@ -120,7 +119,7 @@ core_php_time_limit::raise();
raise_memory_limit(MEMORY_EXTRA);
// Emulate normal session - we use admin account by default.
cron_setup_user();
\core\cron::setup_user();
$humantimenow = date('r', time());
$keepalive = (int)$options['keep-alive'];
@@ -128,4 +127,4 @@ $keepalive = (int)$options['keep-alive'];
\core\local\cli\shutdown::script_supports_graceful_exit();
mtrace("Server Time: {$humantimenow}\n");
cron_run_adhoc_tasks(time(), $keepalive, $checklimits);
\core\cron::run_adhoc_tasks(time(), $keepalive, $checklimits);
+4 -5
View File
@@ -30,7 +30,6 @@ define('CLI_SCRIPT', true);
require(__DIR__.'/../../config.php');
require_once($CFG->libdir.'/clilib.php'); // cli only functions
require_once($CFG->libdir.'/cronlib.php');
// now get cli options
list($options, $unrecognized) = cli_get_params(array('help'=>false),
@@ -80,10 +79,10 @@ if (!empty($CFG->showcrondebugging)) {
$starttime = microtime();
/// emulate normal session
cron_setup_user();
// Emulate normal session.
\core\cron::setup_user();
/// Start output log
// Start output log.
$timenow = time();
mtrace("Server Time: ".date('r',$timenow)."\n\n");
@@ -96,4 +95,4 @@ backup_cron_automated_helper::run_automated_backup(backup_cron_automated_helper:
mtrace("Automated cron backups completed correctly");
$difftime = microtime_diff($starttime, microtime());
mtrace("Execution took ".$difftime." seconds");
mtrace("Execution took ".$difftime." seconds");
+1 -2
View File
@@ -31,7 +31,6 @@ define('CLI_SCRIPT', true);
require(__DIR__ . '/../../config.php');
require_once($CFG->libdir . '/clilib.php');
require_once($CFG->libdir . '/cronlib.php');
// Now get cli option.
[$options, $unrecognized] = cli_get_params(
@@ -184,4 +183,4 @@ if (!get_config('core', 'cron_enabled') && !$options['force']) {
$keepalive = $options['keep-alive'];
cron_run($keepalive);
\core\cron::run_main_process($keepalive);
-1
View File
@@ -28,7 +28,6 @@ define('CLI_SCRIPT', true);
require(__DIR__ . '/../../config.php');
require_once($CFG->libdir . '/clilib.php');
require_once($CFG->libdir . '/cronlib.php');
list($options, $unrecognized) = cli_get_params(
[
+2 -3
View File
@@ -27,7 +27,6 @@ define('CLI_SCRIPT', true);
require(__DIR__ . '/../../config.php');
require_once("$CFG->libdir/clilib.php");
require_once("$CFG->libdir/cronlib.php");
list($options, $unrecognized) = cli_get_params(
[
@@ -142,7 +141,7 @@ if ($execute = $options['execute']) {
raise_memory_limit(MEMORY_EXTRA);
// Emulate normal session - we use admin account by default.
cron_setup_user();
\core\cron::setup_user();
// Execute the task.
\core\local\cli\shutdown::script_supports_graceful_exit();
@@ -164,5 +163,5 @@ if ($execute = $options['execute']) {
$task->set_cron_lock($cronlock);
}
cron_run_inner_scheduled_task($task);
\core\cron::run_inner_scheduled_task($task);
}
+1 -2
View File
@@ -50,7 +50,6 @@ define('NO_OUTPUT_BUFFERING', true);
require('../config.php');
require_once($CFG->libdir . '/clilib.php');
require_once($CFG->libdir . '/cronlib.php');
// extra safety
\core\session\manager::write_close();
@@ -78,4 +77,4 @@ if (!empty($CFG->cronremotepassword)) {
@ini_set('html_errors', 'off');
// Execute the cron, disabling keepalive.
cron_run(0);
\core\cron::run_main_process(0);
+1 -1
View File
@@ -348,7 +348,7 @@ if ($hassiteconfig) {
);
// Set an upper limit of 15 minutes.
$setting->set_max_duration(15 * MINSEC);
$setting->set_max_duration(15 * MINSECS);
$temp->add($setting);
+1 -1
View File
@@ -101,7 +101,7 @@ if (!file_exists($source)) {
}
// Emulate normal session - we use admin account by default.
cron_setup_user();
\core\cron::setup_user();
// Get the file list.
$files = [];
@@ -366,7 +366,7 @@ class manager {
}
// Record the user that this script is currently being run as. This is important when re-processing existing
// messages, as cron_setup_user is called multiple times.
// messages, as \core\cron::setup_user is called multiple times.
$originaluser = $USER;
$envelope = $message->getEnvelope();
@@ -433,7 +433,7 @@ class manager {
// Process the message as the user.
$user = $this->addressmanager->get_data()->user;
mtrace("-- Processing the message as user {$user->id} ({$user->username}).");
cron_setup_user($user);
\core\cron::setup_user($user);
// Process and retrieve the message data for this message.
// This includes fetching the full content, as well as all headers, and attachments.
@@ -459,7 +459,7 @@ class manager {
// Returning to normal cron user.
mtrace("-- Returning to the original user.");
cron_setup_user($originaluser);
\core\cron::setup_user($originaluser);
return;
}
@@ -478,7 +478,7 @@ class manager {
// Returning to normal cron user.
mtrace("-- Returning to the original user.");
cron_setup_user($originaluser);
\core\cron::setup_user($originaluser);
return;
} catch (\Exception $e) {
// An unknown error occurred. The user is not informed, but the administrator is.
@@ -487,7 +487,7 @@ class manager {
// Returning to normal cron user.
mtrace("-- Returning to the original user.");
cron_setup_user($originaluser);
\core\cron::setup_user($originaluser);
return;
}
@@ -501,7 +501,7 @@ class manager {
// Returning to normal cron user.
mtrace("-- Returning to the original user.");
cron_setup_user($originaluser);
\core\cron::setup_user($originaluser);
mtrace("-- Finished processing " . $message->getUid());
-2
View File
@@ -26,8 +26,6 @@ define('NO_OUTPUT_BUFFERING', true);
require('../../../config.php');
require_once($CFG->libdir.'/cronlib.php');
// Basic security checks.
require_admin();
$context = context_system::instance();
-2
View File
@@ -28,8 +28,6 @@ define('NO_OUTPUT_BUFFERING', true);
require('../../../config.php');
require_once($CFG->libdir.'/cronlib.php');
/**
* Function used to handle mtrace by outputting the text to normal browser window.
*
+1 -1
View File
@@ -184,7 +184,7 @@ if ($options['restorefile'] && !file_exists($options['restorefile'])) {
$processoroptions['restorefile'] = $options['restorefile'];
// Emulate normal session.
cron_setup_user();
\core\cron::setup_user();
// Let's get started!
$content = file_get_contents($options['file']);
+1 -1
View File
@@ -36,7 +36,7 @@ core_php_time_limit::raise();
raise_memory_limit(MEMORY_EXTRA);
// Emulate normal session - we use admin account by default, set language to the site language.
cron_setup_user();
\core\cron::setup_user();
$USER->lang = $CFG->lang;
$clihelper = new \tool_uploaduser\cli_helper();
-1
View File
@@ -30,7 +30,6 @@ defined('MOODLE_INTERNAL') || die();
global $CFG;
require_once($CFG->dirroot . '/backup/util/helper/backup_cron_helper.class.php');
require_once($CFG->libdir.'/cronlib.php');
require_once($CFG->libdir . '/completionlib.php');
/**
@@ -123,7 +123,7 @@ abstract class backup_cron_automated_helper {
mtrace("Skipping deleted courses", '...');
mtrace(sprintf("%d courses", self::remove_deleted_courses_from_schedule()));
mtrace('Running required automated backups...');
cron_trace_time_and_memory();
\core\cron::trace_time_and_memory();
mtrace("Getting admin info");
$admin = get_admin();
@@ -68,7 +68,7 @@ class content_notification_task extends adhoc_task {
from user with id {$userfrom->id}.");
foreach ($users as $user) {
cron_setup_user($user, $course);
\core\cron::setup_user($user, $course);
$cm = get_fast_modinfo($course)->cms[$cm->id];
@@ -53,11 +53,11 @@ class course_delete_modules extends \core\task\adhoc_task {
// Set the proper user.
if ($this->get_custom_data()->userid !== $this->get_custom_data()->realuserid) {
$realuser = \core_user::get_user($this->get_custom_data()->realuserid, '*', MUST_EXIST);
cron_setup_user($realuser);
\core\cron::setup_user($realuser);
\core\session\manager::loginas($this->get_custom_data()->userid, \context_system::instance(), false);
} else {
$user = \core_user::get_user($this->get_custom_data()->userid, '*', MUST_EXIST);
cron_setup_user($user);
\core\cron::setup_user($user);
}
$cms = $this->get_custom_data()->cms;
+1 -1
View File
@@ -53,7 +53,7 @@ class plagiarism_cron_task extends scheduled_task {
$plagiarismplugin = new $plagiarismclass;
if (method_exists($plagiarismplugin, 'cron')) {
mtrace('Processing cron function for plagiarism_plugin_' . $plugin . '...', '');
cron_trace_time_and_memory();
\core\cron::trace_time_and_memory();
mtrace('It has been detected the class ' . $plagiarismclass . ' has a legacy cron method
implemented. Plagiarism plugins should implement their own schedule tasks.', '');
$plagiarismplugin->cron();
+1 -1
View File
@@ -2838,7 +2838,7 @@ function cron_execute_plugin_type($plugintype, $description = null) {
mtrace('Processing cron function for ' . $component . '...');
debugging("Use of legacy cron is deprecated ($cronfunction). Please use scheduled tasks.", DEBUG_DEVELOPER);
cron_trace_time_and_memory();
\core\cron::trace_time_and_memory();
$pre_dbqueries = $DB->perf_get_queries();
$pre_time = microtime(true);
+4 -5
View File
@@ -2250,12 +2250,11 @@ class file_storage {
*/
public function cron() {
global $CFG, $DB;
require_once($CFG->libdir.'/cronlib.php');
// find out all stale draft areas (older than 4 days) and purge them
// those are identified by time stamp of the /. root dir
mtrace('Deleting old draft files... ', '');
cron_trace_time_and_memory();
\core\cron::trace_time_and_memory();
$old = time() - 60*60*24*4;
$sql = "SELECT *
FROM {files}
@@ -2272,7 +2271,7 @@ class file_storage {
// * preview files in the core preview filearea without the existing original file.
// * document converted files in core documentconversion filearea without the existing original file.
mtrace('Deleting orphaned preview, and document conversion files... ', '');
cron_trace_time_and_memory();
\core\cron::trace_time_and_memory();
$sql = "SELECT p.*
FROM {files} p
LEFT JOIN {files} o ON (p.filename = o.contenthash)
@@ -2299,7 +2298,7 @@ class file_storage {
require_once($CFG->libdir.'/filelib.php');
// Delete files that are associated with a context that no longer exists.
mtrace('Cleaning up files from deleted contexts... ', '');
cron_trace_time_and_memory();
\core\cron::trace_time_and_memory();
$sql = "SELECT DISTINCT f.contextid
FROM {files} f
LEFT OUTER JOIN {context} c ON f.contextid = c.id
@@ -2315,7 +2314,7 @@ class file_storage {
mtrace('done.');
mtrace('Call filesystem cron tasks.', '');
cron_trace_time_and_memory();
\core\cron::trace_time_and_memory();
$this->filesystem->cron();
mtrace('done.');
}
+2 -3
View File
@@ -689,8 +689,7 @@ abstract class advanced_testcase extends base_testcase {
* @param int $matchuserid The userid to match.
*/
protected function runAdhocTasks($matchclass = '', $matchuserid = null) {
global $CFG, $DB;
require_once($CFG->libdir.'/cronlib.php');
global $DB;
$params = [];
if (!empty($matchclass)) {
@@ -729,7 +728,7 @@ abstract class advanced_testcase extends base_testcase {
$task->set_cron_lock($cronlock);
}
cron_prepare_core_renderer();
\core\cron::prepare_core_renderer();
$this->setUser($user);
$task->execute();
+4 -4
View File
@@ -164,7 +164,7 @@ function stats_cron_daily($maxdays=1) {
$defaultfproleid = (int)$CFG->defaultfrontpageroleid;
mtrace("Running daily statistics gathering, starting at $timestart:");
cron_trace_time_and_memory();
\core\cron::trace_time_and_memory();
$days = 0;
$total = 0;
@@ -664,7 +664,7 @@ function stats_cron_weekly() {
$DB->delete_records_select('stats_user_weekly', "timeend > $timestart");
mtrace("Running weekly statistics gathering, starting at $timestart:");
cron_trace_time_and_memory();
\core\cron::trace_time_and_memory();
$weeks = 0;
while ($now > $nextstartweek) {
@@ -807,7 +807,7 @@ function stats_cron_monthly() {
mtrace("Running monthly statistics gathering, starting at $timestart:");
cron_trace_time_and_memory();
\core\cron::trace_time_and_memory();
$months = 0;
while ($now > $nextstartmonth) {
@@ -1068,7 +1068,7 @@ function stats_get_next_month_start($time) {
function stats_clean_old() {
global $DB;
mtrace("Running stats cleanup tasks...");
cron_trace_time_and_memory();
\core\cron::trace_time_and_memory();
$deletebefore = stats_get_base_monthly();
// delete dailies older than 3 months (to be safe)
+7 -11
View File
@@ -1108,9 +1108,6 @@ EOF;
* @param string $taskname Name of task e.g. 'mod_whatever\task\do_something'
*/
public function i_run_the_scheduled_task($taskname) {
global $CFG;
require_once("{$CFG->libdir}/cronlib.php");
$task = \core\task\manager::get_scheduled_task($taskname);
if (!$task) {
throw new DriverException('The "' . $taskname . '" scheduled task does not exist');
@@ -1118,7 +1115,7 @@ EOF;
// Do setup for cron task.
raise_memory_limit(MEMORY_EXTRA);
cron_setup_user();
\core\cron::setup_user();
// Get lock.
$cronlockfactory = \core\lock\lock_config::get_lock_factory('cron');
@@ -1138,7 +1135,7 @@ EOF;
try {
// Prepare the renderer.
cron_prepare_core_renderer();
\core\cron::prepare_core_renderer();
// Discard task output as not appropriate for Behat output!
ob_start();
@@ -1146,13 +1143,13 @@ EOF;
ob_end_clean();
// Restore the previous renderer.
cron_prepare_core_renderer(true);
\core\cron::prepare_core_renderer(true);
// Mark task complete.
\core\task\manager::scheduled_task_complete($task);
} catch (Exception $e) {
// Restore the previous renderer.
cron_prepare_core_renderer(true);
\core\cron::prepare_core_renderer(true);
// Mark task failed and throw exception.
\core\task\manager::scheduled_task_failed($task);
@@ -1175,11 +1172,10 @@ EOF;
* @throws DriverException
*/
public function i_run_all_adhoc_tasks() {
global $CFG, $DB;
require_once("{$CFG->libdir}/cronlib.php");
global $DB;
// Do setup for cron task.
cron_setup_user();
\core\cron::setup_user();
// Discard task output as not appropriate for Behat output!
ob_start();
@@ -1193,7 +1189,7 @@ EOF;
ob_clean();
// Run the task.
cron_run_inner_adhoc_task($task);
\core\cron::run_inner_adhoc_task($task);
// Check whether the task record still exists.
// If a task was successful it will be removed.
-1
View File
@@ -21,7 +21,6 @@ defined('MOODLE_INTERNAL') || die();
global $CFG;
require_once($CFG->libdir . '/adminlib.php');
require_once($CFG->libdir . '/statslib.php');
require_once($CFG->libdir . '/cronlib.php');
require_once(__DIR__ . '/fixtures/stats_events.php');
/**
@@ -73,7 +73,7 @@ class send_email_task extends scheduled_task {
// Keep track of which emails failed to send.
$users = $this->get_unique_users();
foreach ($users as $user) {
cron_setup_user($user);
\core\cron::setup_user($user);
$hascontent = false;
$renderable = new \message_email\output\email_digest($user);
@@ -99,7 +99,7 @@ class send_email_task extends scheduled_task {
}
}
}
cron_setup_user();
\core\cron::setup_user();
$users->close();
}
@@ -344,7 +344,7 @@ class feedback_test extends \advanced_testcase {
public function test_conversion_task() {
$this->require_ghostscript();
$this->resetAfterTest();
cron_setup_user();
\core\cron::setup_user();
$course = $this->getDataGenerator()->create_course();
$student = $this->getDataGenerator()->create_and_enrol($course, 'student');
+2 -2
View File
@@ -2744,7 +2744,7 @@ class assign {
// Override the language and timezone of the "current" user, so that
// mail is customised for the receiver.
cron_setup_user($user, $course);
\core\cron::setup_user($user, $course);
// Context lookups are already cached.
$coursecontext = context_course::instance($course->id);
@@ -2824,7 +2824,7 @@ class assign {
}
mtrace('Done processing ' . count($submissions) . ' assignment submissions');
cron_setup_user();
\core\cron::setup_user();
// Free up memory just to be sure.
unset($courses);
+12 -12
View File
@@ -1562,7 +1562,7 @@ class locallib_test extends \advanced_testcase {
$this->resetAfterTest();
// First run cron so there are no messages waiting to be sent (from other tests).
cron_setup_user();
\core\cron::setup_user();
\assign::cron();
$course = $this->getDataGenerator()->create_course();
@@ -1580,7 +1580,7 @@ class locallib_test extends \advanced_testcase {
$this->mark_submission($teacher, $assign, $student, 50.0);
$this->expectOutputRegex('/Done processing 1 assignment submissions/');
cron_setup_user();
\core\cron::setup_user();
$sink = $this->redirectMessages();
\assign::cron();
$messages = $sink->get_messages();
@@ -1604,7 +1604,7 @@ class locallib_test extends \advanced_testcase {
$this->resetAfterTest();
// First run cron so there are no messages waiting to be sent (from other tests).
cron_setup_user();
\core\cron::setup_user();
\assign::cron();
$course = $this->getDataGenerator()->create_course();
@@ -1623,7 +1623,7 @@ class locallib_test extends \advanced_testcase {
'sendstudentnotifications' => 0,
]);
cron_setup_user();
\core\cron::setup_user();
$sink = $this->redirectMessages();
\assign::cron();
$messages = $sink->get_messages();
@@ -1635,7 +1635,7 @@ class locallib_test extends \advanced_testcase {
$this->resetAfterTest();
// First run cron so there are no messages waiting to be sent (from other tests).
cron_setup_user();
\core\cron::setup_user();
\assign::cron();
$course = $this->getDataGenerator()->create_course();
@@ -1653,14 +1653,14 @@ class locallib_test extends \advanced_testcase {
$this->mark_submission($teacher, $assign, $student, 50.0);
$this->expectOutputRegex('/Done processing 1 assignment submissions/');
cron_setup_user();
\core\cron::setup_user();
\assign::cron();
// Regrade.
$this->mark_submission($teacher, $assign, $student, 50.0);
$this->expectOutputRegex('/Done processing 1 assignment submissions/');
cron_setup_user();
\core\cron::setup_user();
$sink = $this->redirectMessages();
\assign::cron();
$messages = $sink->get_messages();
@@ -1677,7 +1677,7 @@ class locallib_test extends \advanced_testcase {
$this->resetAfterTest();
// First run cron so there are no messages waiting to be sent (from other tests).
cron_setup_user();
\core\cron::setup_user();
\assign::cron();
$course = $this->getDataGenerator()->create_course();
@@ -1700,7 +1700,7 @@ class locallib_test extends \advanced_testcase {
'workflowstate' => ASSIGN_MARKING_WORKFLOW_STATE_READYFORRELEASE,
]);
cron_setup_user();
\core\cron::setup_user();
$sink = $this->redirectMessages();
\assign::cron();
$messages = $sink->get_messages();
@@ -1714,7 +1714,7 @@ class locallib_test extends \advanced_testcase {
$assign->testable_apply_grade_to_user($submission, $student->id, 0);
// Now run cron and see that one message was sent.
cron_setup_user();
\core\cron::setup_user();
$sink = $this->redirectMessages();
$this->expectOutputRegex('/Done processing 1 assignment submissions/');
\assign::cron();
@@ -1729,7 +1729,7 @@ class locallib_test extends \advanced_testcase {
$this->resetAfterTest();
// First run cron so there are no messages waiting to be sent (from other tests).
cron_setup_user();
\core\cron::setup_user();
\assign::cron();
$course = $this->getDataGenerator()->create_course();
@@ -1750,7 +1750,7 @@ class locallib_test extends \advanced_testcase {
\phpunit_util::stop_message_redirection();
// Now run cron and see that one message was sent.
cron_setup_user();
\core\cron::setup_user();
$this->preventResetByRollback();
$sink = $this->redirectEvents();
$this->expectOutputRegex('/Done processing 1 assignment submissions/');
@@ -183,7 +183,7 @@ abstract class send_notification extends adhoc_task {
foreach ($this->get_recipients() as $recipient) {
try {
\core_user::require_active_user($recipient, true, true);
cron_setup_user($recipient);
\core\cron::setup_user($recipient);
} catch (moodle_exception $e) {
// Skip sending.
continue;
@@ -192,7 +192,7 @@ abstract class send_notification extends adhoc_task {
$this->send_notification_to_current_user();
}
cron_setup_user();
\core\cron::setup_user();
}
/**
+1 -1
View File
@@ -329,7 +329,7 @@ class cron_task extends \core\task\scheduled_task {
$send = false;
// Setup this user so that the capabilities are cached, and environment matches receiving user.
cron_setup_user($user);
\core\cron::setup_user($user);
list($individualpostdata, $digestpostdata) = $this->fetch_posts_for_user($user);
+1 -1
View File
@@ -36,7 +36,7 @@ trait mod_forum_tests_cron_trait {
// Note, we cannot use expectOutputRegex because it only allows for a single RegExp.
ob_start();
cron_setup_user();
\core\cron::setup_user();
$cron = new \mod_forum\task\cron_task();
$cron->execute();
$output = ob_get_contents();
@@ -54,7 +54,7 @@ class scheduled_allocator_test extends \advanced_testcase {
$workshopgenerator = $this->getDataGenerator()->get_plugin_generator('mod_workshop');
cron_setup_user();
\core\cron::setup_user();
// Let the students add submissions.
$this->workshop->switch_phase(\workshop::PHASE_SUBMISSION);
@@ -94,7 +94,7 @@ class scheduled_allocator_test extends \advanced_testcase {
$workshopgenerator = $this->getDataGenerator()->get_plugin_generator('mod_workshop');
cron_setup_user();
\core\cron::setup_user();
// Let the students add submissions.
$this->workshop->switch_phase(\workshop::PHASE_SUBMISSION);
-1
View File
@@ -32,7 +32,6 @@ defined('MOODLE_INTERNAL') || die();
global $CFG;
require_once($CFG->dirroot . '/mod/workshop/lib.php'); // Include the code to test.
require_once($CFG->dirroot . '/mod/workshop/locallib.php'); // Include the code to test.
require_once($CFG->dirroot . '/lib/cronlib.php'); // Include the code to test.
require_once(__DIR__ . '/../fixtures/testable.php');
+2 -2
View File
@@ -60,7 +60,7 @@ class cron_task_test extends \advanced_testcase {
// Execute the cron.
ob_start();
cron_setup_user();
\core\cron::setup_user();
$cron = new \mod_workshop\task\cron_task();
$cron->execute();
$output = ob_get_contents();
@@ -96,7 +96,7 @@ class cron_task_test extends \advanced_testcase {
// Execute the cron.
$eventsink = $this->redirectEvents();
ob_start();
cron_setup_user();
\core\cron::setup_user();
$cron = new \mod_workshop\task\cron_task();
$cron->execute();
ob_end_clean();
+4 -4
View File
@@ -75,10 +75,10 @@ class send_schedule extends adhoc_task {
// Handle schedule configuration as to who the report should be viewed as.
if ($scheduleuserviewas === schedule::REPORT_VIEWAS_CREATOR) {
cron_setup_user(core_user::get_user($schedule->get('usercreated')));
\core\cron::setup_user(core_user::get_user($schedule->get('usercreated')));
$scheduleattachment = helper::get_schedule_report_file($schedule);
} else if ($scheduleuserviewas !== schedule::REPORT_VIEWAS_RECIPIENT) {
cron_setup_user(core_user::get_user($scheduleuserviewas));
\core\cron::setup_user(core_user::get_user($scheduleuserviewas));
$scheduleattachment = helper::get_schedule_report_file($schedule);
}
@@ -98,7 +98,7 @@ class send_schedule extends adhoc_task {
if ($scheduleattachment !== null) {
helper::send_schedule_message($schedule, $user, $scheduleattachment);
} else {
cron_setup_user($user);
\core\cron::setup_user($user);
if ($schedulereportempty === schedule::REPORT_EMPTY_DONT_SEND &&
helper::get_schedule_report_count($schedule) === 0) {
@@ -123,6 +123,6 @@ class send_schedule extends adhoc_task {
$this->log_finish('Sending schedule complete');
// Restore cron user to original state.
cron_setup_user($originaluser);
\core\cron::setup_user($originaluser);
}
}
+1 -1
View File
@@ -306,7 +306,7 @@ abstract class engine {
$now = manager::get_current_time();
if ($now - $lastprogress >= manager::DISPLAY_INDEXING_PROGRESS_EVERY) {
$lastprogress = $now;
// The first date format is the same used in cron_trace_time_and_memory().
// The first date format is the same used in \core\cron::trace_time_and_memory().
$options['progress']->output(date('H:i:s', (int)$now) . ': Done to ' . userdate(
$lastindexeddoc, get_string('strftimedatetimeshort', 'langconfig')), 1);
}