This commit is contained in:
Eloy Lafuente (stronk7)
2017-04-05 02:02:03 +02:00
5 changed files with 96 additions and 5 deletions
+53
View File
@@ -0,0 +1,53 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* A scheduled task for scorm cron.
*
* @package mod_scorm
* @copyright 2017 Abhishek kumar <[email protected]>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
namespace mod_scorm\task;
defined('MOODLE_INTERNAL') || die();
/**
* A cron_task class to be used by Tasks API.
*
* @copyright 2017 Abhishek kumar <[email protected]>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class cron_task extends \core\task\scheduled_task {
/**
* Get a descriptive name for this task (shown to admins).
*
* @return string
*/
public function get_name() {
return get_string('crontask', 'mod_scorm');
}
/**
* Run scorm cron.
*/
public function execute() {
global $CFG;
require_once($CFG->dirroot . '/mod/scorm/lib.php');
scorm_cron_scheduled_task();
}
}
+38
View File
@@ -0,0 +1,38 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Definition of Forum scheduled tasks.
*
* @package mod_scorm
* @category task
* @copyright 2017 Abhishek kumar <[email protected]>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
defined('MOODLE_INTERNAL') || die();
$tasks = array(
array(
'classname' => 'mod_scorm\task\cron_task',
'blocking' => 0,
'minute' => '*/5',
'hour' => '*',
'day' => '*',
'month' => '*',
'dayofweek' => '*'
)
);
+1
View File
@@ -93,6 +93,7 @@ $string['confirmloosetracks'] = 'WARNING: The package seems to be changed or mod
$string['contents'] = 'Contents';
$string['coursepacket'] = 'Course package';
$string['coursestruct'] = 'Course structure';
$string['crontask'] = 'Background processing for Scorm';
$string['currentwindow'] = 'Current window';
$string['datadir'] = 'Filesystem error: Can\'t create course data directory';
$string['defaultdisplaysettings'] = 'Default display settings';
+2 -2
View File
@@ -520,7 +520,7 @@ function scorm_user_complete($course, $user, $mod, $scorm) {
}
/**
* Function to be run periodically according to the moodle cron
* Function to be run periodically according to the moodle Tasks API
* This function searches for things that need to be done, such
* as sending out mail, toggling flags etc ...
*
@@ -528,7 +528,7 @@ function scorm_user_complete($course, $user, $mod, $scorm) {
* @global object
* @return boolean
*/
function scorm_cron () {
function scorm_cron_scheduled_task () {
global $CFG, $DB;
require_once($CFG->dirroot.'/mod/scorm/locallib.php');
+2 -3
View File
@@ -24,7 +24,6 @@
defined('MOODLE_INTERNAL') || die();
$plugin->version = 2016122000; // The current module version (Date: YYYYMMDDXX).
$plugin->version = 2017032900; // The current module version (Date: YYYYMMDDXX).
$plugin->requires = 2016112900; // Requires this Moodle version.
$plugin->component = 'mod_scorm'; // Full name of the plugin (used for diagnostics).
$plugin->cron = 300;
$plugin->component = 'mod_scorm'; // Full name of the plugin (used for diagnostics).