Как мне удалить записи на курсы в Moodle оптом? - PullRequest
0 голосов
/ 30 июня 2009

Moodle имеет встроенную возможность сброса за курс. Я хочу сбросить все свои курсы.

Ответы [ 3 ]

1 голос
/ 26 апреля 2016

Извините, что вернул этот старый пост, но после долгой борьбы я наконец-то заставил этот код работать. Я тестировал его в среде Moodle 1.9.7

<?php
require('../config.php');
require_once('reset_form.php');

$courseids = array(8,9,11);

foreach ($courseids as &$value) {
    $data->MAX_FILE_SIZE = 8097152;
    $data->reset_start_date = 1251781200;
    $data->reset_events = 1;
    $data->reset_logs = 1;
    $data->reset_notes = 1;
    $data->reset_roles = Array(5);
    $data->mform_showadvanced_last = 0;
    $data->reset_roles_local = 1;
    $data->reset_gradebook_grades = 1;
    $data->reset_assignment_submissions = 1;
    $data->reset_forum_all = 1;
    $data->reset_quiz_attempts = 1;
    $data->id = $value;

    require_login($value);      
    require_capability('moodle/course:update', get_context_instance(CONTEXT_COURSE, $value));

    $status = reset_course_userdata($data);
}
?>
0 голосов
/ 16 ноября 2011

Не следует сбрасывать курсы таким образом, это слишком рискованно. Используйте функцию администрирования курса. Выберите курс, найдите администратора курса. блок, нажмите кнопку сброса, очень просто. Если у вас есть только 3 курса, это займет около 30 секунд.

0 голосов
/ 30 июня 2009

Хорошо, я понял это, но будь очень осторожен. Если вы не знаете, что делаете, не используйте этот код, вы можете нанести большой ущерб вашей БД. Это делает сброс курса по умолчанию на все идентификаторы курса в массиве.

 <?php
require('../config.php');
require_once('reset_form.php');

$courseids = array(8,9,11);

foreach ($courseids as &$value) {


    $data->MAX_FILE_SIZE = 8097152;
    $data->reset_start_date = 1251781200;
    $data->reset_events = 1;
    $data->reset_logs = 1;
    $data->reset_notes = 1;
    $data->reset_roles = Array(5);
    $data->mform_showadvanced_last = 0;
    $data->reset_roles_local = 1;
    $data->reset_gradebook_grades = 1;
    $data->reset_assignment_submissions = 1;
    $data->reset_forum_all = 1;
    $data->id = $value;

    $status = reset_course_userdata($data);
}
?>
...