mirror of
https://github.com/moodle/moodle.git
synced 2025-01-19 06:18:28 +01:00
Merge branch 'MDL-57631_ldap_enrol_sync_task_master' of https://github.com/gthomas2/moodle
This commit is contained in:
commit
f7c7799cbf
66
enrol/ldap/classes/task/sync_enrolments.php
Normal file
66
enrol/ldap/classes/task/sync_enrolments.php
Normal file
@ -0,0 +1,66 @@
|
||||
<?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/>.
|
||||
|
||||
/**
|
||||
* Sync enrolments task
|
||||
* @package enrol_ldap
|
||||
* @author Guy Thomas <gthomas@moodlerooms.com>
|
||||
* @copyright Copyright (c) 2017 Blackboard Inc.
|
||||
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
|
||||
*/
|
||||
|
||||
namespace enrol_ldap\task;
|
||||
|
||||
defined('MOODLE_INTERNAL') || die();
|
||||
|
||||
/**
|
||||
* Class sync_enrolments
|
||||
* @package enrol_ldap
|
||||
* @author Guy Thomas <gthomas@moodlerooms.com>
|
||||
* @copyright Copyright (c) 2017 Blackboard Inc.
|
||||
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
|
||||
*/
|
||||
class sync_enrolments extends \core\task\scheduled_task {
|
||||
|
||||
/**
|
||||
* Name for this task.
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public function get_name() {
|
||||
return get_string('syncenrolmentstask', 'enrol_ldap');
|
||||
}
|
||||
|
||||
/**
|
||||
* Run task for synchronising users.
|
||||
*/
|
||||
public function execute() {
|
||||
|
||||
if (!enrol_is_enabled('ldap')) {
|
||||
mtrace(get_string('pluginnotenabled', 'enrol_ldap'));
|
||||
exit(0); // Note, exit with success code, this is not an error - it's just disabled.
|
||||
}
|
||||
|
||||
/** @var enrol_ldap_plugin $enrol */
|
||||
$enrol = enrol_get_plugin('ldap');
|
||||
|
||||
$trace = new \text_progress_trace();
|
||||
|
||||
// Update enrolments -- these handlers should autocreate courses if required.
|
||||
$enrol->sync_enrolments($trace);
|
||||
}
|
||||
|
||||
}
|
39
enrol/ldap/db/tasks.php
Normal file
39
enrol/ldap/db/tasks.php
Normal file
@ -0,0 +1,39 @@
|
||||
<?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/>.
|
||||
|
||||
/**
|
||||
* Task definition for enrol_ldap.
|
||||
* @author Guy Thomas <gthomas@moodlerooms.com>
|
||||
* @copyright Copyright (c) 2017 Blackboard Inc.
|
||||
* @package enrol_ldap
|
||||
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
|
||||
*/
|
||||
|
||||
defined('MOODLE_INTERNAL') || die();
|
||||
|
||||
$tasks = array(
|
||||
array(
|
||||
'classname' => '\enrol_ldap\task\sync_enrolments',
|
||||
'blocking' => 0,
|
||||
'minute' => 'R',
|
||||
'hour' => 'R',
|
||||
'day' => '*',
|
||||
'month' => '*',
|
||||
'dayofweek' => '*',
|
||||
'disabled' => 1
|
||||
)
|
||||
);
|
||||
|
@ -109,6 +109,7 @@ $string['role_mapping_context'] = 'LDAP contexts for {$a}';
|
||||
$string['role_mapping_key'] = 'Map roles from LDAP ';
|
||||
$string['roles'] = 'Role mapping';
|
||||
$string['server_settings'] = 'LDAP server settings';
|
||||
$string['syncenrolmentstask'] = 'Synchronise enrolments task';
|
||||
$string['synccourserole'] = "== Synching course '{\$a->idnumber}' for role '{\$a->role_shortname}'\n";
|
||||
$string['template'] = 'Optional: auto-created courses can copy their settings from a template course';
|
||||
$string['template_key'] = 'Template';
|
||||
|
@ -25,6 +25,6 @@
|
||||
|
||||
defined('MOODLE_INTERNAL') || die();
|
||||
|
||||
$plugin->version = 2016120500; // The current plugin version (Date: YYYYMMDDXX)
|
||||
$plugin->version = 2016120501; // The current plugin version (Date: YYYYMMDDXX)
|
||||
$plugin->requires = 2016112900; // Requires this Moodle version
|
||||
$plugin->component = 'enrol_ldap'; // Full name of the plugin (used for diagnostics)
|
||||
|
Loading…
x
Reference in New Issue
Block a user